Anonymous avatar Anonymous committed b956fc8 Merge

Merged changes from izi.

Comments (0)

Files changed (81)

 syntax: glob
+*.egg-info
 *.pyc
 *.*~
 *.orig
 e9ddbaa0124060da683f2caf04afd5651d5a5234 v0.1.0
 a84159693fb8741aaef00330fcc9cd25895ef4e8 v0.1.1
 27726e15f341209ab72719fceca8752e37b6fe32 v0.1.2
+253b2464507e9cb426f866c1f2561e859233ea69 v0.2.0
 django-admin-tools changelog
 ============================
 
-Version 0.2.0, 29 February 2010:
---------------------------------
+Version 0.2.0, 15 March 2010:
+-----------------------------
 
-* bookmarks are now being saved in the database (thanks @alexrobbins); 
+* bookmarks are now being saved in the database 
+  (fixes issue #20, thanks @alexrobbins); 
 * dashboard preferences are also saved in the database;
-* added support for django-staticfiles STATIC_URL settings (thanks @dstufft);
+* added support for django-staticfiles STATIC_URL settings
+  (fixes issue #21, thanks @dstufft);
+* fixed issue #23: render_theming_css tag does not work on windows;
 * added polish, italian, greek and brazilian locales;
 * updated docs.
 

admin_tools/__init__.py

-VERSION = '0.1.2'
+"""
+django-admin-tools is a collection of extensions/tools for the default django 
+administration interface, it includes:
+
+ * a full featured and customizable dashboard,
+ * a customizable menu bar,
+ * tools to make admin theming easier.
+"""
+VERSION = '0.2.0'

admin_tools/dashboard/management/commands/customdashboard.py

-import os, shutil
-from optparse import make_option
-from django.core.management.base import BaseCommand, LabelCommand, CommandError
+import os
+from django.core.management.base import BaseCommand, CommandError
 from django.template.loader import render_to_string
 
 

admin_tools/dashboard/models.py

 
     ``template``
         The template to use to render the dashboard.
-        Default value: 'dashboard/dashboard.html'
+        Default value: 'admin_tools/dashboard/dashboard.html'
 
     ``columns``
         An integer that represents the number of columns for the dashboard.
         Dashboard constructor.
         """
         self.title = kwargs.get('title', _('Dashboard'))
-        self.template = kwargs.get('template', 'dashboard/dashboard.html')
+        self.template = kwargs.get('template', 'admin_tools/dashboard/dashboard.html')
         self.columns = kwargs.get('columns', 2)
         self.children = kwargs.get('children', [])
 
 
     ``template``
         The template to use to render the module.
-        Default value: 'dashboard/module.html'.
+        Default value: 'admin_tools/dashboard/module.html'.
     """
     def __init__(self, **kwargs):
         self.enabled = kwargs.get('enabled', True)
         self.css_classes = kwargs.get('css_classes', [])
         self.pre_content = kwargs.get('pre_content')
         self.post_content = kwargs.get('post_content')
-        self.template = kwargs.get('template', 'dashboard/module.html')
+        self.template = kwargs.get('template', 'admin_tools/dashboard/module.html')
         self.children = kwargs.get('children', [])
 
     def init_with_context(self, context):
         super(LinkListDashboardModule, self).__init__(**kwargs)
         self.title = kwargs.get('title', _('Links'))
         self.template = kwargs.get('template',
-                                   'dashboard/modules/link_list.html')
+                                   'admin_tools/dashboard/modules/link_list.html')
         self.layout = kwargs.get('layout', 'stacked')
 
 
         super(AppListDashboardModule, self).__init__(**kwargs)
         self.title = kwargs.get('title', _('Applications'))
         self.template = kwargs.get('template',
-                                   'dashboard/modules/app_list.html')
+                                   'admin_tools/dashboard/modules/app_list.html')
         self.include_list = kwargs.get('include_list', [])
         self.exclude_list = kwargs.get('exclude_list', [])
 
         super(ModelListDashboardModule, self).__init__(**kwargs)
         self.title = kwargs.get('title', '')
         self.template = kwargs.get('template',
-                                   'dashboard/modules/model_list.html')
+                                   'admin_tools/dashboard/modules/model_list.html')
         self.include_list = kwargs.get('include_list', [])
         self.exclude_list = kwargs.get('exclude_list', [])
 
         super(RecentActionsDashboardModule, self).__init__(**kwargs)
         self.title = kwargs.get('title', _('Recent Actions'))
         self.template = kwargs.get('template',
-                                   'dashboard/modules/recent_actions.html')
+                                   'admin_tools/dashboard/modules/recent_actions.html')
         self.include_list = kwargs.get('include_list', [])
         self.exclude_list = kwargs.get('exclude_list', [])
         self.limit = kwargs.get('limit', 10)
     def __init__(self, **kwargs):
         super(FeedDashboardModule, self).__init__(**kwargs)
         self.title = kwargs.get('title', _('RSS Feed'))
-        self.template = kwargs.get('template', 'dashboard/modules/feed.html')
+        self.template = kwargs.get('template', 'admin_tools/dashboard/modules/feed.html')
         self.feed_url = kwargs.get('feed_url')
         self.limit = kwargs.get('limit')
 

admin_tools/dashboard/templates/admin_tools/dashboard/css.html

+<link rel="stylesheet" href="{{ media_url }}/admin_tools/css/dashboard.css" type="text/css" media="screen, projection"/>
+<!--[if lt IE 8]>
+<link rel="stylesheet" href="{{ media_url }}/admin_tools/css/dashboard-ie.css" type="text/css" media="screen, projection"/>
+<![endif]-->
+{% for css in css_files %}
+<link rel="stylesheet" href="{{ media_url }}/{{ css }}" type="text/css" media="screen, projection"/>{% endfor %}

admin_tools/dashboard/templates/admin_tools/dashboard/dashboard.html

+{% load i18n admin_tools_dashboard_tags %}
+<script type="text/javascript" charset="utf-8">
+    // load jquery if it's not loaded yet
+    if (typeof jQuery == 'undefined') {
+        var script_url = '{{ media_url }}/admin_tools/js/jquery/jquery.min.js';
+        document.write(unescape('%3Cscript src="' + script_url + '" type="text/javascript"%3E%3C/script%3E'));
+    }
+    // load jquery ui if it's not loaded yet
+    if (typeof jQuery.ui == 'undefined') {
+        var script_url = '{{ media_url }}/admin_tools/js/jquery/jquery-ui.min.js';
+        document.write(unescape('%3Cscript src="' + script_url + '" type="text/javascript"%3E%3C/script%3E'));
+    }
+    // load json if it's not loaded yet
+    if (typeof JSON == 'undefined') {
+        var script_url = '{{ media_url }}/admin_tools/js/json.min.js';
+        document.write(unescape('%3Cscript src="' + script_url + '" type="text/javascript"%3E%3C/script%3E'));
+    }
+    // load jquery cookie if it's not loaded yet
+    if (typeof jQuery.cookie == 'undefined') {
+        var script_url = '{{ media_url }}/admin_tools/js/jquery/jquery.cookie.min.js';
+        document.write(unescape('%3Cscript src="' + script_url + '" type="text/javascript"%3E%3C/script%3E'));
+    }
+</script>
+<script type="text/javascript" src="{{ media_url }}/admin_tools/js/jquery/jquery.dashboard.js"></script>
+{% if dashboard.Media.js %}
+{% for js in dashboard.Media.js %}
+<script type="text/javascript" src="{{ media_url }}/{{ js }}"></script>{% endfor %}
+{% endif %}
+
+{% if dashboard.title %}
+<h1 class="dashboard-title">{{ dashboard.title }}</h1>
+{% endif %}
+
+<script type="text/javascript">
+// <![CDATA[
+jQuery(function($) {
+    $('#{{ dashboard.get_id }}').dashboard({
+        'columns': {{ dashboard.columns }},
+        'load_preferences_function': function(options) {
+            return {% autoescape off %}{{ dashboard_preferences }}{% endautoescape %};
+        },
+        'save_preferences_function': function(options, preferences) {
+            jQuery.post(
+                '{% url admin-tools-dashboard-set-preferences %}',
+                { data: JSON.stringify(preferences) }
+            );
+        }
+    });
+});
+//]]>
+</script>
+
+<div id="dashboard-panel">
+    <h3><a href="#">{% trans "Modules" %}</a></h3>
+    {% if has_disabled_modules %}
+    <ul>
+        {% spaceless %}
+        {% for module in dashboard.children %}
+        {% if not module.enabled %}
+        <li><a href="#" rel="module_{{ forloop.counter }}" class="addlink add-dashboard-module">{{ module.title }}</a></li>
+        {% endif %}
+        {% endfor %}
+        {% endspaceless %}
+    </ul>
+    {% endif %}
+</div>
+<div id="{{ dashboard.get_id }}" class="dashboard-container">
+    {% for module in dashboard.children %}
+{% admin_tools_render_dashboard_module module forloop.counter %}{% endfor %}
+</div>

admin_tools/dashboard/templates/admin_tools/dashboard/dashboard.txt

+from django.utils.translation import ugettext_lazy as _
+from django.core.urlresolvers import reverse
+from admin_tools.dashboard.models import *
+
+
+# to activate your index dashboard add the following to your settings.py:
+#
+# ADMIN_TOOLS_INDEX_DASHBOARD = '{{ project }}.{{ file }}.CustomIndexDashboard'
+
+class CustomIndexDashboard(Dashboard):
+    """
+    Custom index dashboard for {{ project }}.
+    """ 
+    def __init__(self, **kwargs):
+        Dashboard.__init__(self, **kwargs)
+
+        # append a link list module for "quick links"
+        self.children.append(LinkListDashboardModule(
+            title=_('Quick links'),
+            layout='inline',
+            draggable=False,
+            deletable=False,
+            collapsible=False,
+            children=[
+                {
+                    'title': _('Return to site'),
+                    'url': '/',
+                },
+                {
+                    'title': _('Change password'),
+                    'url': reverse('admin:password_change'),
+                },
+                {
+                    'title': _('Log out'),
+                    'url': reverse('admin:logout')
+                },
+            ]
+        ))
+
+        # append an app list module for "Applications"
+        self.children.append(AppListDashboardModule(
+            title=_('Applications'),
+            exclude_list=('django.contrib',),
+        ))
+
+        # append an app list module for "Administration"
+        self.children.append(AppListDashboardModule(
+            title=_('Administration'),
+            include_list=('django.contrib',),
+        ))
+
+        # append a recent actions module
+        self.children.append(RecentActionsDashboardModule(
+            title=_('Recent Actions'),
+            limit=5
+        ))
+
+        # append a feed module
+        self.children.append(FeedDashboardModule(
+            title=_('Latest Django News'),
+            feed_url='http://www.djangoproject.com/rss/weblog/',
+            limit=5
+        ))
+
+        # append another link list module for "support". 
+        self.children.append(LinkListDashboardModule(
+            title=_('Support'),
+            children=[
+                {
+                    'title': _('Django documentation'),
+                    'url': 'http://docs.djangoproject.com/',
+                    'external': True,
+                },
+                {
+                    'title': _('Django "django-users" mailing list'),
+                    'url': 'http://groups.google.com/group/django-users',
+                    'external': True,
+                },
+                {
+                    'title': _('Django irc channel'),
+                    'url': 'irc://irc.freenode.net/django',
+                    'external': True,
+                },
+            ]
+        ))
+
+    def init_with_context(self, context):
+        """
+        Use this method if you need to access the request context.
+        """
+        pass
+
+
+# to activate your app index dashboard add the following to your settings.py:
+#
+# ADMIN_TOOLS_APP_INDEX_DASHBOARD = '{{ project }}.{{ file }}.CustomAppIndexDashboard'
+
+class CustomAppIndexDashboard(AppIndexDashboard):
+    """
+    Custom app index dashboard for {{ project }}.
+    """ 
+    def __init__(self, *args, **kwargs):
+        AppIndexDashboard.__init__(self, *args, **kwargs)
+
+        # we disable title because its redundant with the model list module
+        self.title = ''
+
+        # append a model list module
+        self.children.append(ModelListDashboardModule(
+            title=self.app_title,
+            include_list=self.models,
+        ))
+
+        # append a recent actions module
+        self.children.append(RecentActionsDashboardModule(
+            title=_('Recent Actions'),
+            include_list=self.get_app_content_types(),
+        ))
+
+    def init_with_context(self, context):
+        """
+        Use this method if you need to access the request context.
+        """
+        pass

admin_tools/dashboard/templates/admin_tools/dashboard/dashboard_app_index.txt

+from django.utils.translation import ugettext_lazy as _
+from django.core.urlresolvers import reverse
+from admin_tools.dashboard.models import *
+
+# create your custom modules here if you want, for example:
+#
+# class CustomDashboardModule(DashboardModule):
+#     pass
+#
+{% if warning %}
+# WARNING: you've changed the default file name 'dashboard.py' to '{{ file }}.py',
+# so, you will need to tell django-admin-tools about this, just add this line
+# to your settings.py file:
+# ADMIN_TOOLS_APP_INDEX_DASHBOARD_MODULE = '{{ file }}'
+{% endif %}
+# Your {{ app }} dashboard class
+class {{ app|capfirst }}Dashboard(AppIndexDashboard):
+    """
+    Document your custom app index dashboard.
+    """ 
+    def __init__(self, app_title, models, *args, **kwargs):
+        super(CustomAppIndexDashboard, self).__init__(*args, **kwargs)
+
+        # append your modules here, example:
+        # self.append(RecentActionsDashboardModule(
+        #     title=_('Recent Actions'),
+        #     limit=5,
+        #     include_list=models,
+        # ))

admin_tools/dashboard/templates/admin_tools/dashboard/dummy.html

+{% extends template %}

admin_tools/dashboard/templates/admin_tools/dashboard/module.html

+{% if not module.is_empty %}
+    <div{% if index %} id="module_{{ index }}"{% endif %} class="{{ module.render_css_classes }}">
+        <h2>{{ module.title }}</h2>
+        <div class="dashboard-module-content">
+            {% spaceless %}
+            {% if module.pre_content %}
+            <p>{{ module.pre_content }}</p>
+            {% endif %}
+            {% block module_content %}
+            {% for child in module.children %}
+            {{ child }}
+            {% endfor %}
+            {% endblock %}
+            {% if module.post_content %}
+            <p>{{ module.post_content }}</p>
+            {% endif %}
+            {% endspaceless %}
+        </div>
+    </div>
+{% endif %}

admin_tools/dashboard/templates/admin_tools/dashboard/modules/app_list.html

+{% extends "admin_tools/dashboard/module.html" %}
+{% load i18n %}
+{% block module_content %}
+        {% for child in module.children %}
+        <h3><a href="{{ child.url }}">{{ child.title }}</a></h3>
+        <ul>
+            {% for model in child.models %}
+            {% spaceless %}
+            <li>
+                {% if model.change_url %}<a href="{{ model.change_url }}">{{ model.title }}</a>{% else %}{{ model.title }}{% endif %}
+                {% if model.add_url or model.change_url %}
+                <ul>
+                    {% if model.add_url %}<li><a class="addlink" href="{{ model.add_url }}"><span class="icon">{% trans "Add" %}</span></a></li>{% endif %}
+                    {% if model.change_url %}<li><a class="changelink" href="{{ model.change_url }}"><span class="icon">{% trans "Change" %}</span></a></li>{% endif %}
+                </ul>
+                {% endif %}
+            </li>
+            {% endspaceless %}
+            {% endfor %}
+        </ul>
+        {% endfor %}
+{% endblock %}

admin_tools/dashboard/templates/admin_tools/dashboard/modules/feed.html

+{% extends "admin_tools/dashboard/module.html" %}
+{% block module_content %}
+<ul>
+    {% spaceless %}
+    {% for child in module.children %}
+    <li class="{% cycle 'odd' 'even' %}">
+        {% if child.date %}<span class="float-right">{{ child.date|date }}&nbsp;</span>{% endif %}
+        {% if child.warning %}<span class="warning">{{ child.title }}</span>{% else %}<a class="external-link" href="{{ child.url }}">{{ child.title }}</a>{% endif %}
+    </li>
+    {% endfor %}
+    {% endspaceless %}
+</ul>
+{% endblock %}

admin_tools/dashboard/templates/admin_tools/dashboard/modules/model_list.html

+{% extends "admin_tools/dashboard/module.html" %}
+{% load i18n %}
+{% block module_content %}
+        <ul>
+            {% for child in module.children %}
+            {% spaceless %}
+            <li>
+                {% if child.change_url %}<a href="{{ child.change_url }}">{{ child.title }}</a>{% else %}{{ child.title }}{% endif %}
+                {% if child.add_url or child.change_url %}
+                <ul>
+                    {% if child.add_url %}<li><a class="addlink" href="{{ child.add_url }}"><span class="icon">{% trans "Add" %}</span></a></li>{% endif %}
+                    {% if child.change_url %}<li><a class="changelink" href="{{ child.change_url }}"><span class="icon">{% trans "Change" %}</span></a></li>{% endif %}
+                </ul>
+                {% endif %}
+            </li>
+            {% endspaceless %}
+            {% endfor %}
+        </ul>
+{% endblock %}

admin_tools/dashboard/templates/admin_tools/dashboard/modules/recent_actions.html

+{% extends "admin_tools/dashboard/module.html" %}
+{% load i18n %}
+{% block module_content %}
+<ul>
+    {% spaceless %}
+    {% for child in module.children %}
+    <li class="{% cycle 'odd' 'even' %}">
+        <span class="float-right">{{ child.action_time|date }}</span>
+        {% if child.is_deletion %}
+        <span class="deletelink">{% if child.content_type %}{% filter capfirst %}{% trans child.content_type.name %}{% endfilter %}&nbsp;{% endif %}{{ child.object_repr }}</span>
+        {% else %}
+        <a href="{% url admin:index %}{{ child.get_admin_url }}" class="{% if child.is_addition %} addlink{% endif %}{% if child.is_change %} changelink{% endif %}">{% if child.content_type %}{% filter capfirst %}{% trans child.content_type.name %}{% endfilter %}&nbsp;{% endif %}{{ child.object_repr }}</a>
+        {% endif %}
+    </li>
+    {% endfor %}
+    {% endspaceless %}
+</ul>
+{% endblock %}

admin_tools/dashboard/templates/admin_tools/dashboard/preferences_form.html

+{% extends "admin/base_site.html" %}
+
+{% block content %}
+
+<form action="." method="POST">
+    {{ form.as_p }}
+    <p><input type="submit" value="Save" /></p>
+</form>
+
+{% endblock %}

admin_tools/dashboard/templates/dashboard/css.html

-<link rel="stylesheet" href="{{ media_url }}/admin_tools/css/dashboard.css" type="text/css" media="screen, projection"/>
-<!--[if lt IE 8]>
-<link rel="stylesheet" href="{{ media_url }}/admin_tools/css/dashboard-ie.css" type="text/css" media="screen, projection"/>
-<![endif]-->
-{% for css in css_files %}
-<link rel="stylesheet" href="{{ media_url }}/{{ css }}" type="text/css" media="screen, projection"/>{% endfor %}

admin_tools/dashboard/templates/dashboard/dashboard.html

-{% load i18n admin_tools_dashboard_tags %}
-<script type="text/javascript" charset="utf-8">
-    // load jquery if it's not loaded yet
-    if (typeof jQuery == 'undefined') {
-        var script_url = '{{ media_url }}/admin_tools/js/jquery/jquery-1.4.1.min.js';
-        document.write(unescape('%3Cscript src="' + script_url + '" type="text/javascript"%3E%3C/script%3E'));
-    }
-</script>
-<script type="text/javascript" charset="utf-8">
-    // load jquery ui if it's not loaded yet
-    if (typeof jQuery.ui == 'undefined') {
-        var script_url = '{{ media_url }}/admin_tools/js/jquery/jquery-ui-1.8rc1.custom.min.js';
-        document.write(unescape('%3Cscript src="' + script_url + '" type="text/javascript"%3E%3C/script%3E'));
-    }
-</script>
-<script type="text/javascript" charset="utf-8">
-    // load json if it's not loaded yet
-    if (typeof JSON == 'undefined') {
-        var script_url = '{{ media_url }}/admin_tools/js/json.min.js';
-        document.write(unescape('%3Cscript src="' + script_url + '" type="text/javascript"%3E%3C/script%3E'));
-    }
-</script>
-<script type="text/javascript" charset="utf-8">
-    // load jquery cookie if it's not loaded yet
-    if (typeof jQuery.cookie == 'undefined') {
-        var script_url = '{{ media_url }}/admin_tools/js/jquery/jquery.cookie.min.js';
-        document.write(unescape('%3Cscript src="' + script_url + '" type="text/javascript"%3E%3C/script%3E'));
-    }
-</script>
-<script type="text/javascript" src="{{ media_url }}/admin_tools/js/jquery/jquery.dashboard.js"></script>
-{% if dashboard.Media.js %}
-{% for js in dashboard.Media.js %}
-<script type="text/javascript" src="{{ media_url }}/{{ js }}"></script>{% endfor %}
-{% endif %}
-
-{% if dashboard.title %}
-<h1 class="dashboard-title">{{ dashboard.title }}</h1>
-{% endif %}
-
-<script type="text/javascript">
-// <![CDATA[
-jQuery(function($) {
-    jQuery.getJSON(
-        '{% url admin-tools-dashboard-get-preferences %}',
-        function(data) {
-            $('#{{ dashboard.get_id }}').dashboard({
-                'columns': {{ dashboard.columns }},
-                'load_preferences_function': function(options) {
-                    return data;
-                },
-                'save_preferences_function': function(options, preferences) {
-                    jQuery.post(
-                        '{% url admin-tools-dashboard-set-preferences %}',
-                        { data: JSON.stringify(preferences) }
-                    );
-                }
-            });
-         }
-    );
-});
-//]]>
-</script>
-
-<div id="dashboard-panel">
-    <h3><a href="#">{% trans "Modules" %}</a></h3>
-    {% if has_disabled_modules %}
-    <ul>
-        {% spaceless %}
-        {% for module in dashboard.children %}
-        {% if not module.enabled %}
-        <li><a href="#" rel="module_{{ forloop.counter }}" class="addlink add-dashboard-module">{{ module.title }}</a></li>
-        {% endif %}
-        {% endfor %}
-        {% endspaceless %}
-    </ul>
-    {% endif %}
-</div>
-<div id="{{ dashboard.get_id }}" class="dashboard-container">
-    {% for module in dashboard.children %}
-{% admin_tools_render_dashboard_module module forloop.counter %}{% endfor %}
-</div>

admin_tools/dashboard/templates/dashboard/dashboard.txt

-from django.utils.translation import ugettext_lazy as _
-from django.core.urlresolvers import reverse
-from admin_tools.dashboard.models import *
-
-
-# to activate your index dashboard add the following to your settings.py:
-#
-# ADMIN_TOOLS_INDEX_DASHBOARD = '{{ project }}.{{ file }}.CustomIndexDashboard'
-
-class CustomIndexDashboard(Dashboard):
-    """
-    Custom index dashboard for {{ project }}.
-    """ 
-    def __init__(self, **kwargs):
-        Dashboard.__init__(self, **kwargs)
-
-        # append a link list module for "quick links"
-        self.children.append(LinkListDashboardModule(
-            title=_('Quick links'),
-            layout='inline',
-            draggable=False,
-            deletable=False,
-            collapsible=False,
-            children=[
-                {
-                    'title': _('Return to site'),
-                    'url': '/',
-                },
-                {
-                    'title': _('Change password'),
-                    'url': reverse('admin:password_change'),
-                },
-                {
-                    'title': _('Log out'),
-                    'url': reverse('admin:logout')
-                },
-            ]
-        ))
-
-        # append an app list module for "Applications"
-        self.children.append(AppListDashboardModule(
-            title=_('Applications'),
-            exclude_list=('django.contrib',),
-        ))
-
-        # append an app list module for "Administration"
-        self.children.append(AppListDashboardModule(
-            title=_('Administration'),
-            include_list=('django.contrib',),
-        ))
-
-        # append a recent actions module
-        self.children.append(RecentActionsDashboardModule(
-            title=_('Recent Actions'),
-            limit=5
-        ))
-
-        # append a feed module
-        self.children.append(FeedDashboardModule(
-            title=_('Latest Django News'),
-            feed_url='http://www.djangoproject.com/rss/weblog/',
-            limit=5
-        ))
-
-        # append another link list module for "support". 
-        self.children.append(LinkListDashboardModule(
-            title=_('Support'),
-            children=[
-                {
-                    'title': _('Django documentation'),
-                    'url': 'http://docs.djangoproject.com/',
-                    'external': True,
-                },
-                {
-                    'title': _('Django "django-users" mailing list'),
-                    'url': 'http://groups.google.com/group/django-users',
-                    'external': True,
-                },
-                {
-                    'title': _('Django irc channel'),
-                    'url': 'irc://irc.freenode.net/django',
-                    'external': True,
-                },
-            ]
-        ))
-
-    def init_with_context(self, context):
-        """
-        Use this method if you need to access the request context.
-        """
-        pass
-
-
-# to activate your app index dashboard add the following to your settings.py:
-#
-# ADMIN_TOOLS_APP_INDEX_DASHBOARD = '{{ project }}.{{ file }}.CustomAppIndexDashboard'
-
-class CustomAppIndexDashboard(AppIndexDashboard):
-    """
-    Custom app index dashboard for {{ project }}.
-    """ 
-    def __init__(self, *args, **kwargs):
-        AppIndexDashboard.__init__(self, *args, **kwargs)
-
-        # we disable title because its redundant with the model list module
-        self.title = ''
-
-        # append a model list module
-        self.children.append(ModelListDashboardModule(
-            title=self.app_title,
-            include_list=self.models,
-        ))
-
-        # append a recent actions module
-        self.children.append(RecentActionsDashboardModule(
-            title=_('Recent Actions'),
-            include_list=self.get_app_content_types(),
-        ))
-
-    def init_with_context(self, context):
-        """
-        Use this method if you need to access the request context.
-        """
-        pass

admin_tools/dashboard/templates/dashboard/dashboard_app_index.txt

-from django.utils.translation import ugettext_lazy as _
-from django.core.urlresolvers import reverse
-from admin_tools.dashboard.models import *
-
-# create your custom modules here if you want, for example:
-#
-# class CustomDashboardModule(DashboardModule):
-#     pass
-#
-{% if warning %}
-# WARNING: you've changed the default file name 'dashboard.py' to '{{ file }}.py',
-# so, you will need to tell django-admin-tools about this, just add this line
-# to your settings.py file:
-# ADMIN_TOOLS_APP_INDEX_DASHBOARD_MODULE = '{{ file }}'
-{% endif %}
-# Your {{ app }} dashboard class
-class {{ app|capfirst }}Dashboard(AppIndexDashboard):
-    """
-    Document your custom app index dashboard.
-    """ 
-    def __init__(self, app_title, models, *args, **kwargs):
-        super(CustomAppIndexDashboard, self).__init__(*args, **kwargs)
-
-        # append your modules here, example:
-        # self.append(RecentActionsDashboardModule(
-        #     title=_('Recent Actions'),
-        #     limit=5,
-        #     include_list=models,
-        # ))

admin_tools/dashboard/templates/dashboard/dummy.html

-{% extends template %}

admin_tools/dashboard/templates/dashboard/module.html

-{% if not module.is_empty %}
-    <div{% if index %} id="module_{{ index }}"{% endif %} class="{{ module.render_css_classes }}">
-        <h2>{{ module.title }}</h2>
-        <div class="dashboard-module-content">
-            {% spaceless %}
-            {% if module.pre_content %}
-            <p>{{ module.pre_content }}</p>
-            {% endif %}
-            {% block module_content %}
-            {% for child in module.children %}
-            {{ child }}
-            {% endfor %}
-            {% endblock %}
-            {% if module.post_content %}
-            <p>{{ module.post_content }}</p>
-            {% endif %}
-            {% endspaceless %}
-        </div>
-    </div>
-{% endif %}

admin_tools/dashboard/templates/dashboard/modules/app_list.html

-{% extends "dashboard/module.html" %}
-{% load i18n %}
-{% block module_content %}
-        {% for child in module.children %}
-        <h3><a href="{{ child.url }}">{{ child.title }}</a></h3>
-        <ul>
-            {% for model in child.models %}
-            {% spaceless %}
-            <li>
-                {% if model.change_url %}<a href="{{ model.change_url }}">{{ model.title }}</a>{% else %}{{ model.title }}{% endif %}
-                {% if model.add_url or model.change_url %}
-                <ul>
-                    {% if model.add_url %}<li><a class="addlink" href="{{ model.add_url }}"><span class="icon">{% trans "Add" %}</span></a></li>{% endif %}
-                    {% if model.change_url %}<li><a class="changelink" href="{{ model.change_url }}"><span class="icon">{% trans "Change" %}</span></a></li>{% endif %}
-                </ul>
-                {% endif %}
-            </li>
-            {% endspaceless %}
-            {% endfor %}
-        </ul>
-        {% endfor %}
-{% endblock %}

admin_tools/dashboard/templates/dashboard/modules/feed.html

-{% extends "dashboard/module.html" %}
-{% block module_content %}
-<ul>
-    {% spaceless %}
-    {% for child in module.children %}
-    <li class="{% cycle 'odd' 'even' %}">
-        {% if child.date %}<span class="float-right">{{ child.date|date }}&nbsp;</span>{% endif %}
-        {% if child.warning %}<span class="warning">{{ child.title }}</span>{% else %}<a class="external-link" href="{{ child.url }}">{{ child.title }}</a>{% endif %}
-    </li>
-    {% endfor %}
-    {% endspaceless %}
-</ul>
-{% endblock %}

admin_tools/dashboard/templates/dashboard/modules/model_list.html

-{% extends "dashboard/module.html" %}
-{% load i18n %}
-{% block module_content %}
-        <ul>
-            {% for child in module.children %}
-            {% spaceless %}
-            <li>
-                {% if child.change_url %}<a href="{{ child.change_url }}">{{ child.title }}</a>{% else %}{{ child.title }}{% endif %}
-                {% if child.add_url or child.change_url %}
-                <ul>
-                    {% if child.add_url %}<li><a class="addlink" href="{{ child.add_url }}"><span class="icon">{% trans "Add" %}</span></a></li>{% endif %}
-                    {% if child.change_url %}<li><a class="changelink" href="{{ child.change_url }}"><span class="icon">{% trans "Change" %}</span></a></li>{% endif %}
-                </ul>
-                {% endif %}
-            </li>
-            {% endspaceless %}
-            {% endfor %}
-        </ul>
-{% endblock %}

admin_tools/dashboard/templates/dashboard/modules/recent_actions.html

-{% extends "dashboard/module.html" %}
-{% load i18n %}
-{% block module_content %}
-<ul>
-    {% spaceless %}
-    {% for child in module.children %}
-    <li class="{% cycle 'odd' 'even' %}">
-        <span class="float-right">{{ child.action_time|date }}</span>
-        {% if child.is_deletion %}
-        <span class="deletelink">{% if child.content_type %}{% filter capfirst %}{% trans child.content_type.name %}{% endfilter %}&nbsp;{% endif %}{{ child.object_repr }}</span>
-        {% else %}
-        <a href="{% url admin:index %}{{ child.get_admin_url }}" class="{% if child.is_addition %} addlink{% endif %}{% if child.is_change %} changelink{% endif %}">{% if child.content_type %}{% filter capfirst %}{% trans child.content_type.name %}{% endfilter %}&nbsp;{% endif %}{{ child.object_repr }}</a>
-        {% endif %}
-    </li>
-    {% endfor %}
-    {% endspaceless %}
-</ul>
-{% endblock %}

admin_tools/dashboard/templates/dashboard/preferences_form.html

-{% extends "admin/base_site.html" %}
-
-{% block content %}
-
-<form action="." method="POST">
-    {{ form.as_p }}
-    <p><input type="submit" value="Save" /></p>
-</form>
-
-{% endblock %}

admin_tools/dashboard/templatetags/admin_tools_dashboard_tags.py

 
 import math
 from django import template
-from django.conf import settings
 from admin_tools.utils import get_media_url
 from admin_tools.dashboard.utils import get_dashboard
+from admin_tools.dashboard.models import DashboardPreferences
 
 register = template.Library()
-tag_func = register.inclusion_tag('dashboard/dummy.html', takes_context=True)
+tag_func = register.inclusion_tag('admin_tools/dashboard/dummy.html', takes_context=True)
 
 
 def admin_tools_render_dashboard(context, location='index', dashboard=None):
         dashboard = get_dashboard(context, location)
 
     dashboard.init_with_context(context)
+
+    try:
+        preferences = DashboardPreferences.objects.get(user=context['request'].user).data
+    except DashboardPreferences.DoesNotExist:
+        preferences = '{}'
+
     context.update({
         'template': dashboard.template,
         'dashboard': dashboard,
+        'dashboard_preferences': preferences,
         'split_at': math.ceil(float(len(dashboard.children))/float(dashboard.columns)),
         'media_url': get_media_url(),
         'has_disabled_modules': len([m for m in dashboard.children \
         dashboard = get_dashboard(context, location)
 
     context.update({
-        'template' : 'dashboard/css.html',
+        'template' : 'admin_tools/dashboard/css.html',
         'css_files': dashboard.Media.css,
         'media_url': get_media_url(),
     })

admin_tools/dashboard/urls.py

-from django.conf.urls.defaults import *
+from django.conf.urls.defaults import patterns, url
 
 urlpatterns = patterns('admin_tools.dashboard.views',
-    url(r'^get_preferences/$', 'get_preferences', name='admin-tools-dashboard-get-preferences'),
     url(r'^set_preferences/$', 'set_preferences', name='admin-tools-dashboard-set-preferences'),
 )

admin_tools/dashboard/utils.py

 from django.conf import settings
 from django.contrib import admin
 from django.core.exceptions import ImproperlyConfigured
-from django.core.urlresolvers import reverse
-from django.http import HttpRequest
 from django.utils.importlib import import_module
 from django.utils.text import capfirst
 from admin_tools.dashboard import Registry
-from admin_tools.dashboard.models import *
 
 
 def get_dashboard(context, location):

admin_tools/dashboard/views.py

 from django.contrib.auth.decorators import login_required
-from django.http import HttpResponse, HttpResponseRedirect
-from django.shortcuts import get_object_or_404
-from django.utils import simplejson
+from django.http import HttpResponse
 from django.views.generic.simple import direct_to_template
 
 try:
             return HttpResponse('false')
     else:
         form = DashboardPreferencesForm(user=request.user, instance=preferences)
-    return direct_to_template(request, 'dashboard/preferences_form.html', {
+    return direct_to_template(request, 'admin_tools/dashboard/preferences_form.html', {
         'form': form,   
     })
-
-
-@login_required
-@csrf_exempt
-def get_preferences(request):
-    """
-    Returns the dashboard preferences for the current user in json format.
-    If no preferences are found, the return value is an empty json object.
-    """
-    try:
-        preferences = DashboardPreferences.objects.get(user=request.user)
-        data = preferences.data
-    except DashboardPreferences.DoesNotExist:
-        data = '{}'
-    return HttpResponse(data, mimetype='application/json')
-
Add a comment to this file

admin_tools/locale/da/LC_MESSAGES/django.mo

Binary file modified.

admin_tools/locale/da/LC_MESSAGES/django.po

 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
+# 
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 
 #: dashboard/models.py:85 menu/models.py:328
 msgid "Dashboard"
-msgstr ""
+msgstr "Dashboard"
 
 #: dashboard/models.py:404
 msgid "Links"
-msgstr ""
+msgstr "Links"
 
 #: dashboard/models.py:460 dashboard/models.py:765 menu/models.py:333
 msgid "Applications"
-msgstr ""
+msgstr "Applikationer"
 
 #: dashboard/models.py:603 dashboard/models.py:777 dashboard/models.py:836
 msgid "Recent Actions"
-msgstr ""
+msgstr "Nyeste handlinger"
 
 #: dashboard/models.py:648
 msgid "No recent actions."
-msgstr ""
+msgstr "Ingen nylige handlinger"
 
 #: dashboard/models.py:693
 msgid "RSS Feed"
-msgstr ""
+msgstr "RSS Feed"
 
 #: dashboard/models.py:742
 msgid "Quick links"
-msgstr ""
+msgstr "Hurtige links"
 
 #: dashboard/models.py:749
 msgid "Return to site"
-msgstr ""
+msgstr "Returner til sitet"
 
 #: dashboard/models.py:753 theming/templates/admin/base.html:42
 msgid "Change password"
-msgstr ""
+msgstr "Skift password"
 
 #: dashboard/models.py:757 theming/templates/admin/base.html:49
 msgid "Log out"
-msgstr ""
+msgstr "Log ud"
 
 #: dashboard/models.py:771 menu/models.py:337
 msgid "Administration"
-msgstr ""
+msgstr "Administration"
 
 #: dashboard/models.py:783
 msgid "Latest Django News"
-msgstr ""
+msgstr "Nyeste Django nyheder"
 
 #: dashboard/models.py:790
 msgid "Support"
-msgstr ""
+msgstr "Support"
 
 #: dashboard/models.py:793
 msgid "Django documentation"
-msgstr ""
+msgstr "Django dokumentationen"
 
 #: dashboard/models.py:798
 msgid "Django \"django-users\" mailing list"
-msgstr ""
+msgstr "Django \"django-users\" mailinglist"
 
 #: dashboard/models.py:803
 msgid "Django irc channel"
-msgstr ""
+msgstr "Django irc kanal "
 
 #: dashboard/templates/admin/app_index.html:9
 #: theming/templates/admin/base.html:56
 msgid "Home"
-msgstr ""
+msgstr "Hjem"
 
 #: dashboard/templates/admin/app_index.html:11
 #, python-format
 msgid "%(name)s"
-msgstr ""
+msgstr "%(name)s"
 
 #: dashboard/templates/dashboard/dashboard.html:51
 msgid "Modules"
-msgstr ""
+msgstr "Moduler"
 
 #: dashboard/templates/dashboard/modules/app_list.html:13
 #: dashboard/templates/dashboard/modules/model_list.html:11
 msgid "Add"
-msgstr ""
+msgstr "Tilføj"
 
 #: dashboard/templates/dashboard/modules/app_list.html:14
 #: dashboard/templates/dashboard/modules/model_list.html:12
 msgid "Change"
-msgstr ""
+msgstr "Skift"
 
 #: menu/models.py:287
 msgid "Bookmarks"
-msgstr ""
+msgstr "Bogmærker"
 
 #: menu/templates/admin/base_site.html:3
 msgid "Django site admin"
-msgstr ""
+msgstr "Django admin"
 
 #: menu/templates/admin/base_site.html:11
 msgid "Django administration"
-msgstr ""
+msgstr "Djangoadministration"
 
 #: menu/templates/menu/menu.html:38
 msgid "Please enter a name for the bookmark"
-msgstr ""
+msgstr "Skriv venligst et navn for bogmærket"
 
 #: menu/templates/menu/menu.html:41
 msgid "Bookmark this page"
-msgstr ""
+msgstr "Tilføj bogmærke for denne side"
 
 #: theming/templates/admin/base.html:29
 msgid "Welcome,"
-msgstr ""
+msgstr "Velkommen, "
 
 #: theming/templates/admin/base.html:34
 msgid "Documentation"
-msgstr ""
+msgstr "Doumentation"

admin_tools/locale/es/LC_MESSAGES/django.po

 #: dashboard/templates/admin/app_index.html:11
 #, python-format
 msgid "%(name)s"
-msgstr ""
+msgstr "%(name)s"
 
 #: dashboard/templates/dashboard/dashboard.html:51
 msgid "Modules"
 
 #: menu/models.py:287
 msgid "Bookmarks"
-msgstr ""
+msgstr "Marcadores"
 
 #: menu/templates/admin/base_site.html:3
 msgid "Django site admin"
 
 #: menu/templates/menu/menu.html:38
 msgid "Please enter a name for the bookmark"
-msgstr ""
+msgstr "Ingrese un nombre para el marcador"
 
 #: menu/templates/menu/menu.html:41
 msgid "Bookmark this page"
-msgstr ""
+msgstr "Marcar esta página"
 
 #: theming/templates/admin/base.html:29
 msgid "Welcome,"
Add a comment to this file

admin_tools/locale/fr/LC_MESSAGES/django.mo

Binary file modified.

admin_tools/locale/fr/LC_MESSAGES/django.po

 
 #: menu/models.py:287
 msgid "Bookmarks"
-msgstr ""
+msgstr "Marque-pages"
 
 #: menu/templates/admin/base_site.html:3
 msgid "Django site admin"
 
 #: menu/templates/menu/menu.html:38
 msgid "Please enter a name for the bookmark"
-msgstr ""
+msgstr "Veuillez fournir un nom pour le marque-page"
 
 #: menu/templates/menu/menu.html:41
 msgid "Bookmark this page"
-msgstr ""
+msgstr "Marquer cette page"
 
 #: theming/templates/admin/base.html:29
 msgid "Welcome,"

admin_tools/locale/nl/LC_MESSAGES/django.po

 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
+# 
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 
 #: dashboard/models.py:85 menu/models.py:328
 msgid "Dashboard"
-msgstr ""
+msgstr "Dashboard"
 
 #: dashboard/models.py:404
 msgid "Links"
-msgstr ""
+msgstr "Links"
 
 #: dashboard/models.py:460 dashboard/models.py:765 menu/models.py:333
 msgid "Applications"
-msgstr ""
+msgstr "Applicaties"
 
 #: dashboard/models.py:603 dashboard/models.py:777 dashboard/models.py:836
 msgid "Recent Actions"
-msgstr ""
+msgstr "Recente acties"
 
 #: dashboard/models.py:648
 msgid "No recent actions."
-msgstr ""
+msgstr "Geen recente acties"
 
 #: dashboard/models.py:693
 msgid "RSS Feed"
-msgstr ""
+msgstr "RSS Feed"
 
 #: dashboard/models.py:742
 msgid "Quick links"
-msgstr ""
+msgstr "Snelle links"
 
 #: dashboard/models.py:749
 msgid "Return to site"
-msgstr ""
+msgstr "Terug naar site"
 
 #: dashboard/models.py:753 theming/templates/admin/base.html:42
 msgid "Change password"
-msgstr ""
+msgstr "Wachtwoord aanpassen"
 
 #: dashboard/models.py:757 theming/templates/admin/base.html:49
 msgid "Log out"
-msgstr ""
+msgstr "Log uit"
 
 #: dashboard/models.py:771 menu/models.py:337
 msgid "Administration"
-msgstr ""
+msgstr "Administratie"
 
 #: dashboard/models.py:783
 msgid "Latest Django News"
-msgstr ""
+msgstr "Laatste Django Nieuws"
 
 #: dashboard/models.py:790
 msgid "Support"
-msgstr ""
+msgstr "Ondersteuning"
 
 #: dashboard/models.py:793
 msgid "Django documentation"
-msgstr ""
+msgstr "Django documentatie"
 
 #: dashboard/models.py:798
 msgid "Django \"django-users\" mailing list"
-msgstr ""
+msgstr "Django \"django-users\" mailing list"
 
 #: dashboard/models.py:803
 msgid "Django irc channel"
-msgstr ""
+msgstr "Django irc kanaal"
 
 #: dashboard/templates/admin/app_index.html:9
 #: theming/templates/admin/base.html:56
 msgid "Home"
-msgstr ""
+msgstr "Home"
 
 #: dashboard/templates/admin/app_index.html:11
 #, python-format
 msgid "%(name)s"
-msgstr ""
+msgstr "%(name)s"
 
 #: dashboard/templates/dashboard/dashboard.html:51
 msgid "Modules"
-msgstr ""
+msgstr "Modulen"
 
 #: dashboard/templates/dashboard/modules/app_list.html:13
 #: dashboard/templates/dashboard/modules/model_list.html:11
 msgid "Add"
-msgstr ""
+msgstr "Toevoegen"
 
 #: dashboard/templates/dashboard/modules/app_list.html:14
 #: dashboard/templates/dashboard/modules/model_list.html:12
 msgid "Change"
-msgstr ""
+msgstr "Aanpassen"
 
 #: menu/models.py:287
 msgid "Bookmarks"
-msgstr ""
+msgstr "Bookmarks"
 
 #: menu/templates/admin/base_site.html:3
 msgid "Django site admin"
-msgstr ""
+msgstr "Django site admin"
 
 #: menu/templates/admin/base_site.html:11
 msgid "Django administration"
-msgstr ""
+msgstr "Django administratie"
 
 #: menu/templates/menu/menu.html:38
 msgid "Please enter a name for the bookmark"
-msgstr ""
+msgstr "Vul a.u.b een naam in voor uw bookmark"
 
 #: menu/templates/menu/menu.html:41
 msgid "Bookmark this page"
-msgstr ""
+msgstr "Bookmark deze pagina"
 
 #: theming/templates/admin/base.html:29
 msgid "Welcome,"
-msgstr ""
+msgstr "Welkom,"
 
 #: theming/templates/admin/base.html:34
 msgid "Documentation"
-msgstr ""
+msgstr "Documentatie"

admin_tools/locale/ru/LC_MESSAGES/django.po

 # This file is distributed under the same license as the PACKAGE package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 #
-#, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-02-12 14:59+0100\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"Project-Id-Version: django-admin-tools\n"
+"Report-Msgid-Bugs-To: Pavel Kiper <iwtbarh@gmail.com>\n"
+"POT-Creation-Date: 2010-04-20 11:21+0300\n"
+"PO-Revision-Date:  2010-04-20 11:21+0300\n"
+"Last-Translator: Pavel Kiper <iwtbarh@gmail.com>\n"
+"Language-Team: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; "
+"plural=n%10==1 && n%100!=11 ? 0 "
+": n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
 
-#: dashboard/models.py:85 menu/models.py:328
+#: .\dashboard\models.py:101 .\menu\models.py:347
 msgid "Dashboard"
-msgstr ""
+msgstr "Панель управления"
 
-#: dashboard/models.py:404
+#: .\dashboard\models.py:420
 msgid "Links"
-msgstr ""
+msgstr "Ссылки"
 
-#: dashboard/models.py:460 dashboard/models.py:765 menu/models.py:333
+#: .\dashboard\models.py:476 .\dashboard\models.py:781 .\menu\models.py:352
 msgid "Applications"
-msgstr ""
+msgstr "Приложения"
 
-#: dashboard/models.py:603 dashboard/models.py:777 dashboard/models.py:836
+#: .\dashboard\models.py:619 .\dashboard\models.py:793
+#: .\dashboard\models.py:852
 msgid "Recent Actions"
-msgstr ""
+msgstr "Недавние действия"
 
-#: dashboard/models.py:648
+#: .\dashboard\models.py:664
 msgid "No recent actions."
-msgstr ""
+msgstr "Нет действия"
 
-#: dashboard/models.py:693
+#: .\dashboard\models.py:709
 msgid "RSS Feed"
-msgstr ""
+msgstr "Канл RSS"
 
-#: dashboard/models.py:742
+#: .\dashboard\models.py:758
 msgid "Quick links"
-msgstr ""
+msgstr "Быстрые ссылки"
 
-#: dashboard/models.py:749
+#: .\dashboard\models.py:765
 msgid "Return to site"
-msgstr ""
+msgstr "Вернуться на сайт"
 
-#: dashboard/models.py:753 theming/templates/admin/base.html:42
+#: .\dashboard\models.py:769 .\theming\templates\admin\base.html.py:42
 msgid "Change password"
-msgstr ""
+msgstr "Изменить пароль"
 
-#: dashboard/models.py:757 theming/templates/admin/base.html:49
+#: .\dashboard\models.py:773 .\theming\templates\admin\base.html.py:49
 msgid "Log out"
-msgstr ""
+msgstr "Выйти"
 
-#: dashboard/models.py:771 menu/models.py:337
+#: .\dashboard\models.py:787 .\menu\models.py:356
 msgid "Administration"
-msgstr ""
+msgstr "Администрирование"
 
-#: dashboard/models.py:783
+#: .\dashboard\models.py:799
 msgid "Latest Django News"
-msgstr ""
+msgstr "Новости от Django"
 
-#: dashboard/models.py:790
+#: .\dashboard\models.py:806
 msgid "Support"
-msgstr ""
+msgstr "Поддержка"
 
-#: dashboard/models.py:793
+#: .\dashboard\models.py:809
 msgid "Django documentation"
-msgstr ""
+msgstr "Документация по Django"
 
-#: dashboard/models.py:798
+#: .\dashboard\models.py:814
 msgid "Django \"django-users\" mailing list"
-msgstr ""
+msgstr "Гугл-группа \"django-users\""
 
-#: dashboard/models.py:803
+#: .\dashboard\models.py:819
 msgid "Django irc channel"
-msgstr ""
+msgstr "IRC канал Django"
 
-#: dashboard/templates/admin/app_index.html:9
-#: theming/templates/admin/base.html:56
+#: .\dashboard\templates\admin\app_index.html.py:9
+#: .\theming\templates\admin\base.html.py:56
 msgid "Home"
-msgstr ""
+msgstr "Главная"
 
-#: dashboard/templates/admin/app_index.html:11
+#: .\dashboard\templates\admin\app_index.html.py:11
 #, python-format
 msgid "%(name)s"
-msgstr ""
+msgstr "%(name)s"
 
-#: dashboard/templates/dashboard/dashboard.html:51
+#: .\dashboard\templates\admin_tools\dashboard\dashboard.html.py:54
 msgid "Modules"
-msgstr ""
+msgstr "Модули"
 
-#: dashboard/templates/dashboard/modules/app_list.html:13
-#: dashboard/templates/dashboard/modules/model_list.html:11
+#: .\dashboard\templates\admin_tools\dashboard\modules\app_list.html.py:13
+#: .\dashboard\templates\admin_tools\dashboard\modules\model_list.html.py:11
 msgid "Add"
-msgstr ""
+msgstr "Добавить"
 
-#: dashboard/templates/dashboard/modules/app_list.html:14
-#: dashboard/templates/dashboard/modules/model_list.html:12
+#: .\dashboard\templates\admin_tools\dashboard\modules\app_list.html.py:14
+#: .\dashboard\templates\admin_tools\dashboard\modules\model_list.html.py:12
 msgid "Change"
-msgstr ""
+msgstr "Изменить"
 
-#: menu/models.py:287
+#: .\menu\models.py:310
 msgid "Bookmarks"
-msgstr ""
+msgstr "Закладки"
 
-#: menu/templates/admin/base_site.html:3
+#: .\menu\templates\admin\base_site.html.py:3
 msgid "Django site admin"
-msgstr ""
+msgstr "Панель управления"
 
-#: menu/templates/admin/base_site.html:11
+#: .\menu\templates\admin\base_site.html.py:11
 msgid "Django administration"
-msgstr ""
+msgstr "Панель управления Django"
 
-#: menu/templates/menu/menu.html:38
+#: .\menu\templates\admin_tools\menu\menu.html.py:29
 msgid "Please enter a name for the bookmark"
-msgstr ""
+msgstr "Введите название закладки"
 
-#: menu/templates/menu/menu.html:41
-msgid "Bookmark this page"
-msgstr ""
+#: .\theming\templates\admin\base.html.py:29
+msgid "Welcome,"
+msgstr "Добро пожаловать,"
 
-#: theming/templates/admin/base.html:29
-msgid "Welcome,"
-msgstr ""
-
-#: theming/templates/admin/base.html:34
+#: .\theming\templates\admin\base.html.py:34
 msgid "Documentation"
-msgstr ""
+msgstr "Документация"
Add a comment to this file

admin_tools/locale/sk/LC_MESSAGES/django.mo

Binary file modified.

admin_tools/locale/sk/LC_MESSAGES/django.po

+# 
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: \n"
+"Last-Translator: Martin Sabo\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
 # SOME DESCRIPTIVE TITLE.
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-02-12 14:59+0100\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
+# 
 #: dashboard/models.py:85 menu/models.py:328
 msgid "Dashboard"
-msgstr ""
+msgstr "Dashboard"
 
 #: dashboard/models.py:404
 msgid "Links"
-msgstr ""
+msgstr "Linky"
 
 #: dashboard/models.py:460 dashboard/models.py:765 menu/models.py:333
 msgid "Applications"
-msgstr ""
+msgstr "Aplikácie"
 
 #: dashboard/models.py:603 dashboard/models.py:777 dashboard/models.py:836
 msgid "Recent Actions"
-msgstr ""
+msgstr "Posledné akcie"
 
 #: dashboard/models.py:648
 msgid "No recent actions."
-msgstr ""
+msgstr "Žiadne posledné akcie"
 
 #: dashboard/models.py:693
 msgid "RSS Feed"
-msgstr ""
+msgstr "RSS správy"
 
 #: dashboard/models.py:742
 msgid "Quick links"
-msgstr ""
+msgstr "Rýchle voľby"
 
 #: dashboard/models.py:749
 msgid "Return to site"
-msgstr ""
+msgstr "Návrat na stránku"
 
 #: dashboard/models.py:753 theming/templates/admin/base.html:42
 msgid "Change password"
-msgstr ""
+msgstr "Zmeniť heslo"
 
 #: dashboard/models.py:757 theming/templates/admin/base.html:49
 msgid "Log out"
-msgstr ""
+msgstr "Odhlásiť"
 
 #: dashboard/models.py:771 menu/models.py:337
 msgid "Administration"
-msgstr ""
+msgstr "Administrácia"
 
 #: dashboard/models.py:783
 msgid "Latest Django News"
-msgstr ""
+msgstr "Posledné Django Novinky"
 
 #: dashboard/models.py:790
 msgid "Support"
-msgstr ""
+msgstr "Podpora"
 
 #: dashboard/models.py:793
 msgid "Django documentation"
-msgstr ""
+msgstr "Django dokumentácia"
 
 #: dashboard/models.py:798
 msgid "Django \"django-users\" mailing list"
-msgstr ""
+msgstr "Django \"django-users\" mailing list"
 
 #: dashboard/models.py:803
 msgid "Django irc channel"
-msgstr ""
+msgstr "Django irc kanál"
 
 #: dashboard/templates/admin/app_index.html:9
 #: theming/templates/admin/base.html:56
 msgid "Home"
-msgstr ""
+msgstr "Domov"
 
 #: dashboard/templates/admin/app_index.html:11
 #, python-format
 msgid "%(name)s"
-msgstr ""
+msgstr "%(name)s"
 
 #: dashboard/templates/dashboard/dashboard.html:51
 msgid "Modules"
-msgstr ""
+msgstr "Moduly"
 
 #: dashboard/templates/dashboard/modules/app_list.html:13
 #: dashboard/templates/dashboard/modules/model_list.html:11
 msgid "Add"
-msgstr ""
+msgstr "Pridať"
 
 #: dashboard/templates/dashboard/modules/app_list.html:14
 #: dashboard/templates/dashboard/modules/model_list.html:12
 msgid "Change"
-msgstr ""
+msgstr "Zmeniť"
 
 #: menu/models.py:287
 msgid "Bookmarks"
-msgstr ""
+msgstr "Záložky"
 
 #: menu/templates/admin/base_site.html:3
 msgid "Django site admin"
-msgstr ""
+msgstr "Django admin stránky"
 
 #: menu/templates/admin/base_site.html:11
 msgid "Django administration"
-msgstr ""
+msgstr "Django administrácia"
 
 #: menu/templates/menu/menu.html:38
 msgid "Please enter a name for the bookmark"
-msgstr ""
+msgstr "Vložte prosím meno pre záložku"
 
 #: menu/templates/menu/menu.html:41
 msgid "Bookmark this page"
-msgstr ""
+msgstr "Pridať stránku do záložiek"
 
 #: theming/templates/admin/base.html:29
 msgid "Welcome,"
-msgstr ""
+msgstr "Vitajte,"
 
 #: theming/templates/admin/base.html:34
 msgid "Documentation"
-msgstr ""
+msgstr "Dokumentácia"
Add a comment to this file

admin_tools/locale/zh_CN/LC_MESSAGES/django.mo

Binary file modified.

admin_tools/locale/zh_CN/LC_MESSAGES/django.po

 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
+# 
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 
 #: dashboard/models.py:85 menu/models.py:328
 msgid "Dashboard"
-msgstr ""
+msgstr "管理面板"
 
 #: dashboard/models.py:404
 msgid "Links"
-msgstr ""
+msgstr "链接"
 
 #: dashboard/models.py:460 dashboard/models.py:765 menu/models.py:333
 msgid "Applications"
-msgstr ""
+msgstr "应用"
 
 #: dashboard/models.py:603 dashboard/models.py:777 dashboard/models.py:836
 msgid "Recent Actions"
-msgstr ""
+msgstr "最近的操作"
 
 #: dashboard/models.py:648
 msgid "No recent actions."
-msgstr ""
+msgstr "最近没有操作"
 
 #: dashboard/models.py:693
 msgid "RSS Feed"
-msgstr ""
+msgstr "RSS种子"
 
 #: dashboard/models.py:742
 msgid "Quick links"
-msgstr ""
+msgstr "快捷链接"
 
 #: dashboard/models.py:749
 msgid "Return to site"