Django-suit, add in Roles for specific classes site, slice, deployment, planetstack, change admin to leverage suit options
diff --git a/planetstack/templates/admin/base.html b/planetstack/templates/admin/base.html
new file mode 100644
index 0000000..477e941
--- /dev/null
+++ b/planetstack/templates/admin/base.html
@@ -0,0 +1,212 @@
+{% load admin_static %}{% load suit_tags %}{% load url from future %}<!DOCTYPE html>
+<html lang="{{ LANGUAGE_CODE|default:"en-us" }}" {% if LANGUAGE_BIDI %}dir="rtl"{% endif %}>
+<head>
+ <title>{% block title %}{{ title }} | {{ 'ADMIN_NAME'|suit_conf }}{% endblock %}</title>
+ <link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% endblock %}"/>
+ <link rel="stylesheet" type="text/css" href="{% static 'suit/bootstrap/css/bootstrap.min.css' %}" media="all"/>
+ <link rel="stylesheet" type="text/css" href="{% static 'suit/css/suit.css' %}" media="all">
+ <link rel="stylesheet" type="text/css" href="{% static 'planetstack.css' %}" media="all">
+ {% block extrastyle %}{% endblock %}
+ {% if LANGUAGE_BIDI %}<link rel="stylesheet" type="text/css" href="{% block stylesheet_rtl %}{% static "admin/css/rtl.css" %}{% endblock %}"/>{% endif %}
+ <script type="text/javascript">window.__admin_media_prefix__ = "{% filter escapejs %}{% static "admin/" %}{% endfilter %}";</script>
+ <script src="{% static 'suit/js/jquery-1.8.3.min.js' %}"></script>
+ <script type="text/javascript">var Suit = { $: $.noConflict() }; if (!$) $ = Suit.$; </script>
+ {% if 'SHOW_REQUIRED_ASTERISK'|suit_conf %}
+ <style type="text/css">.required:after { content: '*'; margin: 0 0 0 5px; position: absolute; color: #ccc;}</style>
+ {% endif %}
+ {% block extrahead %}{% endblock %}
+ {% block blockbots %}
+ <meta name="robots" content="NONE,NOARCHIVE"/>{% endblock %}
+</head>
+{% load i18n %}
+
+<body class="{% if is_popup %}popup {% endif %}{% block bodyclass %}{% endblock %}">
+
+<!-- Sticky footer wrap -->
+<div id="wrap">
+
+ <!-- Container -->
+ {% block container %}
+ <div id="container">
+
+ {% block header %}
+ {% if not is_popup %}
+ <!-- Header -->
+ <div id="header" class="header">
+ <div id="branding">
+ <a href="{% url 'admin:index' %}"><h1 id="site-name">{% block branding %}{{ 'ADMIN_NAME'|suit_conf }}{% endblock %}</h1></a>
+ </div>
+
+ {% block header_time %}
+ <div class="header-content header-content-first">
+ <div class="header-column icon">
+ <i class="icon-time"></i>
+ </div>
+ <div class="header-column">
+ <span class="date"> {% suit_date %}</span><br>
+ <span class="time" id="clock">{% suit_time %}</span>
+ </div>
+ </div>
+ {% endblock %}
+
+ {% block header_content %}
+ <!--<div class="header-content">
+ <div class="header-column icon">
+ <i class="icon-comment"></i>
+ </div>
+ <div class="header-column">
+ <a href="" class="grey"><b>2</b> new messages</a>
+ </div>
+ </div>-->
+ {% endblock %}
+
+ {% if user.is_active and user.is_staff %}
+ <div id="user-tools">
+ {% trans 'Welcome,' %}
+ <strong>
+ {% filter force_escape %}
+ {% firstof user.first_name user.username %}{% endfilter %}</strong>.
+ <span class="user-links">
+ {% block userlinks %}
+ {% url 'django-admindocs-docroot' as docsroot %}
+ {% if docsroot %}
+ <a href="{{ docsroot }}">{% trans 'Documentation' %}</a>
+ <span class="separator">|</span>
+ {% endif %}
+ <a href="{% url 'admin:password_change' %}">{% trans 'Change password' %}</a>
+ <span class="separator">|</span>
+ <a href="{% url 'admin:logout' %}">{% trans 'Log out' %}</a>
+ </span>
+ {% endblock %}
+ </div>
+ {% endif %}
+ {% block nav-global %}{% endblock %}
+ </div>
+ {% endif %}
+ <!-- END Header -->
+ {% endblock %}
+
+
+ <div class="suit-columns {{ is_popup|yesno:'one-column,two-columns' }}">
+
+ {% block content-center %}
+ <div id="suit-center" class="suit-column">
+
+ {% if not is_popup %}
+ {% block breadcrumbs %}
+ <ul class="breadcrumb">
+ <li><a href="{% url 'admin:index' %}">{% trans 'Home' %}</a>
+ {% if title %}
+ <span class="divider">»</span>
+ </li>
+ <li class="active">
+ {{ title }}
+ {% endif %}
+ </li>
+ </ul>
+ {% endblock %}
+ {% endif %}
+
+ {% block messages %}
+ {% if messages %}
+
+ {% for message in messages %}
+ <div class="alert alert-{% firstof message.tags 'info' %}">
+ <button class="close" data-dismiss="alert">×</button>
+ <strong>
+ {% if message.tags %}{{ message.tags|capfirst }}{% else %}
+ Message{% endif %}!</strong>
+ {{ message }}
+ </div>
+ {% endfor %}
+ {% endif %}
+ {% endblock messages %}
+
+ <!-- Content -->
+ <div id="content" class="{% block coltype %}colM{% endblock %} row-fluid">
+ {% block pretitle %}{% endblock %}
+ {% block content_title %}{% if title %}
+ <h2 class="content-title">{{ title }}</h2>
+ {% endif %}{% endblock %}
+ {% block content %}
+ {% block object-tools %}{% endblock %}
+ {{ content }}
+ {% endblock %}
+ {% block sidebar_content %}
+ {% block sidebar %}{% endblock %}
+ {% endblock %}
+ </div>
+ <!-- END Content -->
+ </div>
+ {% endblock %}
+
+
+ {% block content-left %}
+ {% if not is_popup %}
+ <div id="suit-left" class="suit-column">
+ {% block quick-search %}
+ {% with 'SEARCH_URL'|suit_conf as search_url %}
+ {% if search_url %}
+ <form class="form-search nav-quick-search" autocomplete="off" action="{% if '/' in search_url %}{{ search_url }}{% else %}{% url search_url %}{% endif %}" method="GET">
+ <input type="text" name="q" class="input-medium search-query" id="quick-search">
+ <i class="input-icon icon-search"></i>
+ <input type="submit" class="submit" value="">
+ </form>
+ {% endif %}
+ {% endwith %}
+ {% endblock %}
+
+ {% include 'suit/menu.html' %}
+
+ </div>
+ {% endif %}
+ {% endblock %}
+
+ </div>
+ </div>
+ {% endblock %}
+
+ {% if not is_popup %}
+ <!-- Sticky footer push -->
+ <div id="push"></div>
+ {% endif %}
+
+</div>
+
+{% block footer %}
+ {% if not is_popup %}
+ <div id="footer" class="footer">
+ <div class="content">
+ <div class="tools">
+ {% block footer_links %}
+ <a href="http://djangosuit.com/support/" target="_blank" class="icon"><i class="icon-question-sign"></i>Support</a>
+ <a href="http://djangosuit.com/pricing/" target="_blank" class="icon"><i class="icon-bookmark"></i>Licence</a>
+ <a href="http://github.com/darklow/django-suit/issues" target="_blank" class="icon"><i class="icon-comment"></i>Report a bug</a>
+ {% endblock %}
+ </div>
+
+ <div class="copyright">
+ {% block copyright %}
+ Copyright © 2013 DjangoSuit.com<br>Developed by <a href="http://djangosuit.com" target="_blank">DjangoSuit.com</a>
+ {% endblock %}
+ </div>
+
+ <div class="branding">{% block footer_branding %}
+ {% with 'ADMIN_NAME'|suit_conf as admin_name %}
+ {{ admin_name }}
+ {% if admin_name == 'Django Suit' %}
+ v{{ 'VERSION'|suit_conf }}
+ {% endif %}
+ {% endwith %}
+ {% endblock %}</div>
+ </div>
+ </div>
+ {% endif %}
+{% endblock %}
+
+ <script src="{% static 'suit/bootstrap/js/bootstrap.min.js' %}"></script>
+ <script src="{% static 'suit/js/suit.js' %}"></script>
+ {% block extrajs %}{% endblock %}
+
+</body>
+</html>
diff --git a/planetstack/templates/admin/base_site.html b/planetstack/templates/admin/base_site.html
index 2bd6c82..eae91f6 100644
--- a/planetstack/templates/admin/base_site.html
+++ b/planetstack/templates/admin/base_site.html
@@ -1,18 +1,57 @@
{% extends "admin/base.html" %}
-{% load i18n %}
-{% block title %}{{ title }} | {% trans 'PlanetStack' %}{% endblock %}
-{% block extrastyle %}
-<style>
-#header{ background-color: #333940; border-bottom: solid 3px #999; }
-
-#branding h1{ color: #fff; }
-.module h2, .module caption, .inline-group h2 { background:#ccc url(/admin_media/img/admin/nav-bg.gif) bottom left repeat-x; color: #333940; }
-a.section:link, a.section:visited { color: #666666; }
-</style>
+{% load admin_static %}
+
+{# Additional <head> content here, some extra meta tags or favicon #}
+{#{% block extrahead %}#}
+{#{% endblock %}#}
+
+
+{# Additional CSS includes #}
+{# {% block extrastyle %} #}
+{# {% endblock %} #}
+
+
+{# Additional JS files in footer, right before </body> #}
+{#{% block extrajs %}#}
+{# <script type="text/javascript" src="{% static 'js/my_project.js' %}"></script>#}
+{#{% endblock %}#}
+
+
+{# Footer links (left side) #}
+{#{% block footer_links %}#}
+{# <a href="/docs/" class="icon"><i class="icon-question-sign"></i>Documentation</a>#}
+{#{% endblock %}#}
+
+{# Additional header content like notifications or language switcher #}
+{#{% block header_content %}#}
+{# {{ block.super }}#}
+{# <div class="header-content">#}
+{# <!-- First icon column -->#}
+{# <div class="header-column icon">#}
+{# <i class="icon-home"></i><br>#}
+{# <i class="icon-cog"></i>#}
+{# </div>#}
+{# <div class="header-column" style="margin-right: 20px">#}
+{# <a href="/" class="grey">Front-end</a><br>#}
+{# <a href="" class="grey">One more link</a>#}
+{# </div>#}
+{# <!-- Second icon column -->#}
+{# <div class="header-column icon">#}
+{# <i class="icon-comment"></i>#}
+{# </div>#}
+{# <div class="header-column">#}
+{# <a href="" class="grey">5 new messages</a>#}
+{# </div>#}
+{# </div>#}
+{#{% endblock %}#}
+
+{# Footer branding name (center) #}
+{% block footer_branding %}
+PlanetStack
{% endblock %}
-{% block branding %}
-<h1 id="site-name">{% trans 'PlanetStack Administration' %}</h1>
-{% endblock %}
-{% block nav-global %}{% endblock %}
+{# Footer copyright (right side) #}
+{% block copyright %}
+{# Copyright © 2013 Client<br>Developed by <a href="http://yoursite.com" target="_blank">YourName</a> #}
+{% endblock %}