Merge branch 'hotfix/v0.12.2' into development
Conflicts: apps/common/__init__.py apps/documents/forms.py apps/feedback/__init__.py apps/history/__init__.py apps/main/__init__.py apps/scheduler/api.py apps/sources/models.py docs/releases/index.rst requirements/production.txt settings.py urls.py
This commit is contained in:
@@ -10,10 +10,12 @@ from django.dispatch import receiver
|
||||
from south.signals import pre_migrate
|
||||
|
||||
from signaler.signals import pre_collectstatic
|
||||
from project_tools.api import register_tool
|
||||
|
||||
from .links import job_list
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@receiver(post_syncdb, dispatch_uid='scheduler_shutdown_post_syncdb')
|
||||
def scheduler_shutdown_post_syncdb(sender, **kwargs):
|
||||
logger.debug('Scheduler shut down on post syncdb signal')
|
||||
@@ -30,3 +32,6 @@ def sheduler_shutdown_pre_collectstatic(sender, **kwargs):
|
||||
def sheduler_shutdown_pre_migrate(sender, **kwargs):
|
||||
logger.debug('Scheduler shut down on pre_migrate signal')
|
||||
scheduler.shutdown()
|
||||
|
||||
|
||||
register_tool(job_list)
|
||||
|
||||
@@ -24,3 +24,7 @@ def remove_job(name):
|
||||
if name in registered_jobs:
|
||||
scheduler.unschedule_job(registered_jobs[name]['job'])
|
||||
registered_jobs.pop(name)
|
||||
|
||||
|
||||
def get_job_list():
|
||||
return registered_jobs.values()
|
||||
|
||||
7
apps/scheduler/links.py
Normal file
7
apps/scheduler/links.py
Normal file
@@ -0,0 +1,7 @@
|
||||
from __future__ import absolute_import
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from .permissions import PERMISSION_VIEW_JOB_LIST
|
||||
|
||||
job_list = {'text': _(u'interval job list'), 'view': 'job_list', 'icon': 'time.png', 'permissions': [PERMISSION_VIEW_JOB_LIST]}
|
||||
BIN
apps/scheduler/locale/de_DE/LC_MESSAGES/django.mo
Normal file
BIN
apps/scheduler/locale/de_DE/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
46
apps/scheduler/locale/de_DE/LC_MESSAGES/django.po
Normal file
46
apps/scheduler/locale/de_DE/LC_MESSAGES/django.po
Normal file
@@ -0,0 +1,46 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Mayan EDMS\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/rosarior/mayan/issues\n"
|
||||
"POT-Creation-Date: 2012-06-17 18:09-0400\n"
|
||||
"PO-Revision-Date: 2012-06-17 22:19+0000\n"
|
||||
"Last-Translator: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>\n"
|
||||
"Language-Team: German (Germany) (http://www.transifex.net/projects/p/mayan-edms/language/de_DE/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: de_DE\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: links.py:7
|
||||
msgid "interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:7
|
||||
msgid "Scheduler"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:8
|
||||
msgid "View the interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:20
|
||||
msgid "interval jobs"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:23
|
||||
msgid "label"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:27
|
||||
msgid "start date time"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:31
|
||||
msgid "interval"
|
||||
msgstr ""
|
||||
46
apps/scheduler/locale/en/LC_MESSAGES/django.po
Normal file
46
apps/scheduler/locale/en/LC_MESSAGES/django.po
Normal file
@@ -0,0 +1,46 @@
|
||||
# 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: 2012-06-17 19:03-0400\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"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: links.py:7
|
||||
msgid "interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:7
|
||||
msgid "Scheduler"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:8
|
||||
msgid "View the interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:20
|
||||
msgid "interval jobs"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:23
|
||||
msgid "label"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:27
|
||||
msgid "start date time"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:31
|
||||
msgid "interval"
|
||||
msgstr ""
|
||||
BIN
apps/scheduler/locale/es/LC_MESSAGES/django.mo
Normal file
BIN
apps/scheduler/locale/es/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
47
apps/scheduler/locale/es/LC_MESSAGES/django.po
Normal file
47
apps/scheduler/locale/es/LC_MESSAGES/django.po
Normal file
@@ -0,0 +1,47 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Roberto Rosario <roberto.rosario.gonzalez@gmail.com>, 2012.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Mayan EDMS\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/rosarior/mayan/issues\n"
|
||||
"POT-Creation-Date: 2012-06-17 18:09-0400\n"
|
||||
"PO-Revision-Date: 2012-06-17 22:27+0000\n"
|
||||
"Last-Translator: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>\n"
|
||||
"Language-Team: Spanish (Castilian) (http://www.transifex.net/projects/p/mayan-edms/language/es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: es\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: links.py:7
|
||||
msgid "interval job list"
|
||||
msgstr "lista de trabajos de intervalo"
|
||||
|
||||
#: permissions.py:7
|
||||
msgid "Scheduler"
|
||||
msgstr "Programador"
|
||||
|
||||
#: permissions.py:8
|
||||
msgid "View the interval job list"
|
||||
msgstr "Ver la lista de trabajos de intervalo"
|
||||
|
||||
#: views.py:20
|
||||
msgid "interval jobs"
|
||||
msgstr "trabajos de intervalo"
|
||||
|
||||
#: views.py:23
|
||||
msgid "label"
|
||||
msgstr "etiqueta"
|
||||
|
||||
#: views.py:27
|
||||
msgid "start date time"
|
||||
msgstr "fecha y hora de inicio"
|
||||
|
||||
#: views.py:31
|
||||
msgid "interval"
|
||||
msgstr "intervalo"
|
||||
BIN
apps/scheduler/locale/it/LC_MESSAGES/django.mo
Normal file
BIN
apps/scheduler/locale/it/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
46
apps/scheduler/locale/it/LC_MESSAGES/django.po
Normal file
46
apps/scheduler/locale/it/LC_MESSAGES/django.po
Normal file
@@ -0,0 +1,46 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Mayan EDMS\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/rosarior/mayan/issues\n"
|
||||
"POT-Creation-Date: 2012-06-17 18:09-0400\n"
|
||||
"PO-Revision-Date: 2012-06-17 22:19+0000\n"
|
||||
"Last-Translator: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>\n"
|
||||
"Language-Team: Italian (http://www.transifex.net/projects/p/mayan-edms/language/it/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: it\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: links.py:7
|
||||
msgid "interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:7
|
||||
msgid "Scheduler"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:8
|
||||
msgid "View the interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:20
|
||||
msgid "interval jobs"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:23
|
||||
msgid "label"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:27
|
||||
msgid "start date time"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:31
|
||||
msgid "interval"
|
||||
msgstr ""
|
||||
BIN
apps/scheduler/locale/pl/LC_MESSAGES/django.mo
Normal file
BIN
apps/scheduler/locale/pl/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
46
apps/scheduler/locale/pl/LC_MESSAGES/django.po
Normal file
46
apps/scheduler/locale/pl/LC_MESSAGES/django.po
Normal file
@@ -0,0 +1,46 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Mayan EDMS\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/rosarior/mayan/issues\n"
|
||||
"POT-Creation-Date: 2012-06-17 18:09-0400\n"
|
||||
"PO-Revision-Date: 2012-06-17 22:19+0000\n"
|
||||
"Last-Translator: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>\n"
|
||||
"Language-Team: Polish (http://www.transifex.net/projects/p/mayan-edms/language/pl/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: pl\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
|
||||
|
||||
#: links.py:7
|
||||
msgid "interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:7
|
||||
msgid "Scheduler"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:8
|
||||
msgid "View the interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:20
|
||||
msgid "interval jobs"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:23
|
||||
msgid "label"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:27
|
||||
msgid "start date time"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:31
|
||||
msgid "interval"
|
||||
msgstr ""
|
||||
BIN
apps/scheduler/locale/pt/LC_MESSAGES/django.mo
Normal file
BIN
apps/scheduler/locale/pt/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
46
apps/scheduler/locale/pt/LC_MESSAGES/django.po
Normal file
46
apps/scheduler/locale/pt/LC_MESSAGES/django.po
Normal file
@@ -0,0 +1,46 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Mayan EDMS\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/rosarior/mayan/issues\n"
|
||||
"POT-Creation-Date: 2012-06-17 18:09-0400\n"
|
||||
"PO-Revision-Date: 2012-06-17 22:19+0000\n"
|
||||
"Last-Translator: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>\n"
|
||||
"Language-Team: Portuguese (http://www.transifex.net/projects/p/mayan-edms/language/pt/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: pt\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: links.py:7
|
||||
msgid "interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:7
|
||||
msgid "Scheduler"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:8
|
||||
msgid "View the interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:20
|
||||
msgid "interval jobs"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:23
|
||||
msgid "label"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:27
|
||||
msgid "start date time"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:31
|
||||
msgid "interval"
|
||||
msgstr ""
|
||||
BIN
apps/scheduler/locale/ru/LC_MESSAGES/django.mo
Normal file
BIN
apps/scheduler/locale/ru/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
46
apps/scheduler/locale/ru/LC_MESSAGES/django.po
Normal file
46
apps/scheduler/locale/ru/LC_MESSAGES/django.po
Normal file
@@ -0,0 +1,46 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Mayan EDMS\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/rosarior/mayan/issues\n"
|
||||
"POT-Creation-Date: 2012-06-17 18:09-0400\n"
|
||||
"PO-Revision-Date: 2012-06-17 22:19+0000\n"
|
||||
"Last-Translator: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>\n"
|
||||
"Language-Team: Russian (http://www.transifex.net/projects/p/mayan-edms/language/ru/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: ru\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"
|
||||
|
||||
#: links.py:7
|
||||
msgid "interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:7
|
||||
msgid "Scheduler"
|
||||
msgstr ""
|
||||
|
||||
#: permissions.py:8
|
||||
msgid "View the interval job list"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:20
|
||||
msgid "interval jobs"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:23
|
||||
msgid "label"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:27
|
||||
msgid "start date time"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:31
|
||||
msgid "interval"
|
||||
msgstr ""
|
||||
8
apps/scheduler/permissions.py
Normal file
8
apps/scheduler/permissions.py
Normal file
@@ -0,0 +1,8 @@
|
||||
from __future__ import absolute_import
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from permissions.models import PermissionNamespace, Permission
|
||||
|
||||
namespace = PermissionNamespace('scheduler', _(u'Scheduler'))
|
||||
PERMISSION_VIEW_JOB_LIST = Permission.objects.register(namespace, 'jobs_list', _(u'View the interval job list'))
|
||||
BIN
apps/scheduler/static/images/icons/time.png
Normal file
BIN
apps/scheduler/static/images/icons/time.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.1 KiB |
5
apps/scheduler/urls.py
Normal file
5
apps/scheduler/urls.py
Normal file
@@ -0,0 +1,5 @@
|
||||
from django.conf.urls.defaults import patterns, url
|
||||
|
||||
urlpatterns = patterns('scheduler.views',
|
||||
url(r'^list/$', 'job_list', (), 'job_list'),
|
||||
)
|
||||
@@ -1 +1,39 @@
|
||||
# Create your views here.
|
||||
from __future__ import absolute_import
|
||||
|
||||
from django.shortcuts import render_to_response
|
||||
from django.template import RequestContext
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.core.exceptions import PermissionDenied
|
||||
|
||||
from permissions.models import Permission
|
||||
from common.utils import encapsulate
|
||||
|
||||
from .permissions import PERMISSION_VIEW_JOB_LIST
|
||||
from .api import get_job_list
|
||||
|
||||
|
||||
def job_list(request):
|
||||
Permission.objects.check_permissions(request.user, [PERMISSION_VIEW_JOB_LIST])
|
||||
|
||||
context = {
|
||||
'object_list': get_job_list(),
|
||||
'title': _(u'interval jobs'),
|
||||
'extra_columns': [
|
||||
{
|
||||
'name': _(u'label'),
|
||||
'attribute': encapsulate(lambda job: job['title'])
|
||||
},
|
||||
{
|
||||
'name': _(u'start date time'),
|
||||
'attribute': encapsulate(lambda job: job['job'].trigger.start_date)
|
||||
},
|
||||
{
|
||||
'name': _(u'interval'),
|
||||
'attribute': encapsulate(lambda job: job['job'].trigger.interval)
|
||||
},
|
||||
],
|
||||
'hide_object': True,
|
||||
}
|
||||
|
||||
return render_to_response('generic_list.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
Reference in New Issue
Block a user