Last fixes before 0.9.

This commit is contained in:
Antoine Nguyen
2012-05-24 11:31:01 +02:00
parent 97cbeb38ce
commit 0e3b2e0f14
6 changed files with 14 additions and 11 deletions
+9 -3
View File
@@ -293,7 +293,7 @@ requires a migration.
#. Add the following new variables::
STATIC_ROOT = os.path.join(MODOBOA_DIR, 'sitestatic')
STATIC_URL = '/static/'
STATIC_URL = '/sitestatic/'
#. Update the following variables (just copy/paste their new values)::
@@ -326,13 +326,17 @@ requires a migration.
$ ./manage.py collectstatic
#. If you are using the *stats* extension, please rename the
*<modoboa_dir>/static/stats* directory to *<modoboa_dir>/static/graphs*
*<modoboa_dir>/static/stats* directory to *<modoboa_dir>/media/stats*
and change the value of the ``IMG_ROOTDIR`` parameter (go to the adminstration panel)
#. Restart the python instance(s) that serve *Modoboa*
#. Log into Modoboa, go to *Modoboa > Extensions*, uncheck all
extensions, save. Then, check the extensions you want to use and
save again.
save again
#. Update your webserver configuration to make static files available
(see :ref:`webserver`)
#. **For Dovecot users only**, you need to modify the
``password_query`` (file */etc/dovecot/dovecot-sql.conf* by default
@@ -924,6 +928,8 @@ The procedure is over, edit the *settings.py* file and:
You should be able to connect to Modoboa using the same credentials
you were using to connect to PostfixAdmin.
.. _webserver:
How to serve Modoboa behind a webserver
=======================================
+1 -3
View File
@@ -18,6 +18,7 @@ class Stats(ModoExtension):
label = "Statistics"
version = "1.0"
description = ugettext_lazy("Graphical statistics about emails traffic using RRDtool")
needs_media = True
def load(self):
parameters.register_admin("LOGFILE", type="string",
@@ -29,9 +30,6 @@ class Stats(ModoExtension):
parameters.register_admin("IMG_ROOTDIR", type="string",
deflt="/tmp/modoboa",
help=ugettext_lazy("Path to directory where PNG files are stored"))
parameters.register_admin("GRAPHS_LOCATION", type="string",
deflt="graphs",
help=ugettext_lazy("Graphics location (to build URLs)"))
def destroy(self):
events.unregister("AdminMenuDisplay", menu)
+1 -1
View File
@@ -4,6 +4,6 @@
{% endif %}
{% for elems in graphs %}
<h3>{% trans elems.label %}</h3>
<p><img src="{{ STATIC_URL }}{{ graphs_loc }}/{{ elems.name }}_{{ domain }}_AVERAGE_{% ifequal period 'custom' %}{{ period_name }}{% else %}{{ period }}{% endifequal %}.png"
<p><img src="{{ MEDIA_URL }}stats/{{ elems.name }}_{{ domain }}_AVERAGE_{% ifequal period 'custom' %}{{ period_name }}{% else %}{{ period }}{% endifequal %}.png"
alt="{% trans 'No statistics available' %}" /></p>
{% endfor %}
+1 -2
View File
@@ -45,8 +45,7 @@ def graphs(request):
if not view:
raise ModoboaException(_("Invalid request"))
period = request.GET.get("period", "day")
tplvars = dict(graphs=graph_list, period=period,
graphs_loc=parameters.get_admin("GRAPHS_LOCATION"))
tplvars = dict(graphs=graph_list, period=period)
if view == "global":
if not request.user.is_superuser:
raise PermDeniedException
+1 -1
View File
@@ -1 +1 @@
[{"pk": 1, "model": "lib.parameter", "fields": {"name": "admin.STORAGE_PATH", "value": "/srv/vmail"}}, {"pk": 2, "model": "lib.parameter", "fields": {"name": "admin.PASSWORD_SCHEME", "value": "crypt"}}, {"pk": 3, "model": "lib.parameter", "fields": {"name": "admin.ITEMS_PER_PAGE", "value": "30"}}, {"pk": 4, "model": "lib.parameter", "fields": {"name": "general.DEFAULT_TOP_REDIRECTION", "value": "userprefs"}}, {"pk": 5, "model": "lib.parameter", "fields": {"name": "admin.CREATE_DIRECTORIES", "value": "yes"}}, {"pk": 6, "model": "lib.parameter", "fields": {"name": "auth.SECRET_KEY", "value": "abcdefghijklmnop"}}, {"pk": 7, "model": "lib.parameter", "fields": {"name": "admin.MAILBOX_TYPE", "value": "maildir"}}, {"pk": 8, "model": "lib.parameter", "fields": {"name": "admin.AUTHENTICATION_TYPE", "value": "local"}}, {"pk": 9, "model": "lib.parameter", "fields": {"name": "admin.VIRTUAL_UID", "value": "vmail"}}, {"pk": 10, "model": "lib.parameter", "fields": {"name": "admin.MAILDIR_ROOT", "value": ".maildir"}}, {"pk": 11, "model": "lib.parameter", "fields": {"name": "admin.VIRTUAL_GID", "value": "vmail"}}, {"pk": 12, "model": "lib.parameter", "fields": {"name": "stats.IMG_ROOTDIR", "value": "/srv/www/modoboa/static/graphics"}}, {"pk": 13, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.USER_CAN_RELEASE", "value": "no"}}, {"pk": 14, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.CHECK_REQUESTS_INTERVAL", "value": "30"}}, {"pk": 15, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.AM_PDP_PORT", "value": "9998"}}, {"pk": 16, "model": "lib.parameter", "fields": {"name": "webmail.IMAP_SECURED", "value": "no"}}, {"pk": 17, "model": "lib.parameter", "fields": {"name": "postfix_autoreply.AUTOREPLIES_TIMEOUT", "value": "86400"}}, {"pk": 18, "model": "lib.parameter", "fields": {"name": "sievefilters.AUTHENTICATION_MECH", "value": "PLAIN"}}, {"pk": 19, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.AM_PDP_SOCKET", "value": "/var/amavis/amavisd.sock"}}, {"pk": 20, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.AM_PDP_MODE", "value": "inet"}}, {"pk": 21, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.SELF_SERVICE", "value": "no"}}, {"pk": 22, "model": "lib.parameter", "fields": {"name": "webmail.IMAP_PORT", "value": "143"}}, {"pk": 23, "model": "lib.parameter", "fields": {"name": "webmail.SMTP_SECURED_MODE", "value": "none"}}, {"pk": 24, "model": "lib.parameter", "fields": {"name": "sievefilters.SERVER", "value": "127.0.0.1"}}, {"pk": 25, "model": "lib.parameter", "fields": {"name": "webmail.SMTP_SERVER", "value": "127.0.0.1"}}, {"pk": 26, "model": "lib.parameter", "fields": {"name": "webmail.SMTP_AUTHENTICATION", "value": "no"}}, {"pk": 27, "model": "lib.parameter", "fields": {"name": "webmail.MAX_ATTACHMENT_SIZE", "value": "512K"}}, {"pk": 28, "model": "lib.parameter", "fields": {"name": "stats.RRD_ROOTDIR", "value": "/srv/www/modoboa/tmp"}}, {"pk": 29, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.RELEASED_MSGS_CLEANUP", "value": "no"}}, {"pk": 30, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.MAX_MESSAGES_AGE", "value": "14"}}, {"pk": 31, "model": "lib.parameter", "fields": {"name": "webmail.SMTP_PORT", "value": "25"}}, {"pk": 32, "model": "lib.parameter", "fields": {"name": "stats.GRAPHS_LOCATION", "value": "graphics"}}, {"pk": 33, "model": "lib.parameter", "fields": {"name": "webmail.IMAP_SERVER", "value": "127.0.0.1"}}, {"pk": 34, "model": "lib.parameter", "fields": {"name": "sievefilters.STARTTLS", "value": "yes"}}, {"pk": 35, "model": "lib.parameter", "fields": {"name": "sievefilters.PORT", "value": "2000"}}, {"pk": 36, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.AM_PDP_HOST", "value": "localhost"}}, {"pk": 37, "model": "lib.parameter", "fields": {"name": "stats.LOGFILE", "value": "/var/log/mail.log"}}]
[{"pk": 1, "model": "lib.parameter", "fields": {"name": "admin.STORAGE_PATH", "value": "/srv/vmail"}}, {"pk": 2, "model": "lib.parameter", "fields": {"name": "admin.PASSWORD_SCHEME", "value": "crypt"}}, {"pk": 3, "model": "lib.parameter", "fields": {"name": "admin.ITEMS_PER_PAGE", "value": "30"}}, {"pk": 4, "model": "lib.parameter", "fields": {"name": "general.DEFAULT_TOP_REDIRECTION", "value": "userprefs"}}, {"pk": 5, "model": "lib.parameter", "fields": {"name": "admin.CREATE_DIRECTORIES", "value": "yes"}}, {"pk": 6, "model": "lib.parameter", "fields": {"name": "auth.SECRET_KEY", "value": "abcdefghijklmnop"}}, {"pk": 7, "model": "lib.parameter", "fields": {"name": "admin.MAILBOX_TYPE", "value": "maildir"}}, {"pk": 8, "model": "lib.parameter", "fields": {"name": "admin.AUTHENTICATION_TYPE", "value": "local"}}, {"pk": 9, "model": "lib.parameter", "fields": {"name": "admin.VIRTUAL_UID", "value": "vmail"}}, {"pk": 10, "model": "lib.parameter", "fields": {"name": "admin.MAILDIR_ROOT", "value": ".maildir"}}, {"pk": 11, "model": "lib.parameter", "fields": {"name": "admin.VIRTUAL_GID", "value": "vmail"}}, {"pk": 12, "model": "lib.parameter", "fields": {"name": "stats.IMG_ROOTDIR", "value": "/srv/www/modoboa/static/graphics"}}, {"pk": 13, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.USER_CAN_RELEASE", "value": "no"}}, {"pk": 14, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.CHECK_REQUESTS_INTERVAL", "value": "30"}}, {"pk": 15, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.AM_PDP_PORT", "value": "9998"}}, {"pk": 16, "model": "lib.parameter", "fields": {"name": "webmail.IMAP_SECURED", "value": "no"}}, {"pk": 17, "model": "lib.parameter", "fields": {"name": "postfix_autoreply.AUTOREPLIES_TIMEOUT", "value": "86400"}}, {"pk": 18, "model": "lib.parameter", "fields": {"name": "sievefilters.AUTHENTICATION_MECH", "value": "PLAIN"}}, {"pk": 19, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.AM_PDP_SOCKET", "value": "/var/amavis/amavisd.sock"}}, {"pk": 20, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.AM_PDP_MODE", "value": "inet"}}, {"pk": 21, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.SELF_SERVICE", "value": "no"}}, {"pk": 22, "model": "lib.parameter", "fields": {"name": "webmail.IMAP_PORT", "value": "143"}}, {"pk": 23, "model": "lib.parameter", "fields": {"name": "webmail.SMTP_SECURED_MODE", "value": "none"}}, {"pk": 24, "model": "lib.parameter", "fields": {"name": "sievefilters.SERVER", "value": "127.0.0.1"}}, {"pk": 25, "model": "lib.parameter", "fields": {"name": "webmail.SMTP_SERVER", "value": "127.0.0.1"}}, {"pk": 26, "model": "lib.parameter", "fields": {"name": "webmail.SMTP_AUTHENTICATION", "value": "no"}}, {"pk": 27, "model": "lib.parameter", "fields": {"name": "webmail.MAX_ATTACHMENT_SIZE", "value": "512K"}}, {"pk": 28, "model": "lib.parameter", "fields": {"name": "stats.RRD_ROOTDIR", "value": "/srv/www/modoboa/tmp"}}, {"pk": 29, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.RELEASED_MSGS_CLEANUP", "value": "no"}}, {"pk": 30, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.MAX_MESSAGES_AGE", "value": "14"}}, {"pk": 31, "model": "lib.parameter", "fields": {"name": "webmail.SMTP_PORT", "value": "25"}}, {"pk": 33, "model": "lib.parameter", "fields": {"name": "webmail.IMAP_SERVER", "value": "127.0.0.1"}}, {"pk": 34, "model": "lib.parameter", "fields": {"name": "sievefilters.STARTTLS", "value": "yes"}}, {"pk": 35, "model": "lib.parameter", "fields": {"name": "sievefilters.PORT", "value": "2000"}}, {"pk": 36, "model": "lib.parameter", "fields": {"name": "amavis_quarantine.AM_PDP_HOST", "value": "localhost"}}, {"pk": 37, "model": "lib.parameter", "fields": {"name": "stats.LOGFILE", "value": "/var/log/mail.log"}}]
+1 -1
View File
@@ -72,7 +72,7 @@ MEDIA_ROOT = os.path.join(MODOBOA_DIR, 'media')
MEDIA_URL = '/media/'
STATIC_ROOT = os.path.join(MODOBOA_DIR, 'sitestatic')
STATIC_URL = '/static/'
STATIC_URL = '/sitestatic/'
# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
# trailing slash.