--- a/src/pyams_scheduler/zmi/task.py Thu Oct 08 11:12:35 2015 +0200
+++ b/src/pyams_scheduler/zmi/task.py Thu Oct 08 11:31:03 2015 +0200
@@ -16,11 +16,11 @@
from io import StringIO
# import interfaces
-from pyams_form.interfaces.form import IWidgetsSuffixViewletsManager, IWidgetsPrefixViewletsManager
+from pyams_form.interfaces.form import IWidgetsSuffixViewletsManager, IWidgetsPrefixViewletsManager, IFormHelp
from pyams_scheduler.interfaces import ITaskInfo, IScheduler, ITask, ICronTask, ICronTaskScheduling, IDateTask, \
IDateTaskScheduling, ILoopTask, ILoopTaskScheduling, ITaskHistory, IBaseTaskScheduling
-from pyams_skin.interfaces import IContentHelp
from pyams_skin.layer import IPyAMSLayer
+from pyams_utils.interfaces import VIEW_SYSTEM_PERMISSION, MANAGE_SYSTEM_PERMISSION
from pyams_zmi.layer import IAdminLayer
from z3c.form.interfaces import IDataExtractedEvent, DISPLAY_MODE
from z3c.table.interfaces import IValues, IColumn
@@ -28,9 +28,9 @@
# import packages
from pyams_form.form import AJAXEditForm
+from pyams_form.help import FormHelp
from pyams_form.schema import CloseButton
from pyams_pagelet.pagelet import pagelet_config
-from pyams_skin.help import ContentHelp
from pyams_skin.table import BaseTable, I18nColumn
from pyams_template.template import template_config
from pyams_utils.adapter import adapter_config, ContextAdapter, ContextRequestViewAdapter
@@ -66,7 +66,7 @@
input_css_class = 'col-md-8'
fields = field.Fields(ITaskInfo).omit('__parent__', '__name__')
- edit_permission = 'system.manage'
+ edit_permission = MANAGE_SYSTEM_PERMISSION
task_factory = None
def updateWidgets(self, prefix=None):
@@ -94,7 +94,7 @@
event.form.widgets.errors += (Invalid(_("Specified task name is already used!")),)
-@pagelet_config(name='properties.html', context=ITask, layer=IPyAMSLayer, permission='system.view')
+@pagelet_config(name='properties.html', context=ITask, layer=IPyAMSLayer, permission=VIEW_SYSTEM_PERMISSION)
class TaskPropertiesEditForm(AdminDialogEditForm):
"""Scheduler task properties edit form"""
@@ -110,7 +110,7 @@
fields = field.Fields(ITaskInfo).omit('__parent__', '__name__')
ajax_handler = 'properties.json'
- edit_permission = 'system.manage'
+ edit_permission = MANAGE_SYSTEM_PERMISSION
def updateWidgets(self, prefix=None):
super(TaskPropertiesEditForm, self).updateWidgets(prefix)
@@ -118,7 +118,7 @@
@view_config(name='properties.json', context=ITask, request_type=IPyAMSLayer,
- permission='system.manage', renderer='json', xhr=True)
+ permission=MANAGE_SYSTEM_PERMISSION, renderer='json', xhr=True)
class SchedulerTaskPropertiesAJAXEditForm(AJAXEditForm, TaskPropertiesEditForm):
"""Scheduler task properties edit form, AJAX view"""
@@ -137,7 +137,7 @@
input_css_class = 'col-md-8'
ajax_handler = 'schedule.json'
- edit_permission = 'system.manage'
+ edit_permission = MANAGE_SYSTEM_PERMISSION
def update_content(self, content, data):
changes = super(TaskScheduleEditForm, self).update_content(content, data)
@@ -156,7 +156,7 @@
return super(TaskSchedulerAJAXEditForm, self).get_ajax_output(changes)
-@pagelet_config(name='schedule.html', context=ICronTask, layer=IPyAMSLayer, permission='system.view')
+@pagelet_config(name='schedule.html', context=ICronTask, layer=IPyAMSLayer, permission=VIEW_SYSTEM_PERMISSION)
class CronTaskScheduleEditForm(TaskScheduleEditForm):
"""Cron-style task schedule edit form"""
@@ -164,12 +164,12 @@
@view_config(name='schedule.json', context=ICronTask, request_type=IPyAMSLayer,
- permission='system.manage', renderer='json', xhr=True)
+ permission=MANAGE_SYSTEM_PERMISSION, renderer='json', xhr=True)
class CronTaskScheduleAJAXEditForm(TaskSchedulerAJAXEditForm, CronTaskScheduleEditForm):
"""Cron-style task schedule edit form, AJAX view"""
-@pagelet_config(name='schedule.html', context=IDateTask, layer=IPyAMSLayer, permission='system.view')
+@pagelet_config(name='schedule.html', context=IDateTask, layer=IPyAMSLayer, permission=VIEW_SYSTEM_PERMISSION)
class DateTaskScheduleEditForm(TaskScheduleEditForm):
"""Date-style task schedule edit form"""
@@ -177,12 +177,12 @@
@view_config(name='schedule.json', context=IDateTask, request_type=IPyAMSLayer,
- permission='system.manage', renderer='json', xhr=True)
+ permission=MANAGE_SYSTEM_PERMISSION, renderer='json', xhr=True)
class DateTaskScheduleAJAXEditForm(TaskSchedulerAJAXEditForm, DateTaskScheduleEditForm):
"""Date-style task schedule edit form, AJAX view"""
-@pagelet_config(name='schedule.html', context=ILoopTask, layer=IPyAMSLayer, permission='system.view')
+@pagelet_config(name='schedule.html', context=ILoopTask, layer=IPyAMSLayer, permission=VIEW_SYSTEM_PERMISSION)
class LoopTaskScheduleEditForm(TaskScheduleEditForm):
"""Loop-style task schedule edit form"""
@@ -190,7 +190,7 @@
@view_config(name='schedule.json', context=ILoopTask, request_type=IPyAMSLayer,
- permission='system.manage', renderer='json', xhr=True)
+ permission=MANAGE_SYSTEM_PERMISSION, renderer='json', xhr=True)
class LoopTaskScheduleAJAXEditForm(TaskSchedulerAJAXEditForm, LoopTaskScheduleEditForm):
"""Loop-style task schedule edit form, AJAX view"""
@@ -203,7 +203,7 @@
execute = button.Button(name='execute', title=_("Run in normal mode"))
-@pagelet_config(name='run.html', context=ITask, layer=IPyAMSLayer, permission='system.manage')
+@pagelet_config(name='run.html', context=ITask, layer=IPyAMSLayer, permission=MANAGE_SYSTEM_PERMISSION)
class TaskRunForm(AdminDialogEditForm):
"""Task runner form"""
@@ -237,7 +237,7 @@
@view_config(name='run.json', context=ITask, request_type=IPyAMSLayer,
- permission='system.manage', renderer='json', xhr=True)
+ permission=MANAGE_SYSTEM_PERMISSION, renderer='json', xhr=True)
class TaskRunAJAXForm(AJAXEditForm, TaskRunForm):
"""Task runner form, AJAX view"""
@@ -255,8 +255,8 @@
'close_form': False}
-@adapter_config(context=(ITask, IAdminLayer, TaskRunForm), provides=IContentHelp)
-class TaskRunFormHelpAdapter(ContentHelp):
+@adapter_config(context=(ITask, IAdminLayer, TaskRunForm), provides=IFormHelp)
+class TaskRunFormHelpAdapter(FormHelp):
"""Task run form help adapter"""
status = 'warning'
@@ -279,7 +279,7 @@
"""Task debug report viewlet"""
-@pagelet_config(name='history.html', context=ITask, layer=IPyAMSLayer, permission='system.view')
+@pagelet_config(name='history.html', context=ITask, layer=IPyAMSLayer, permission=VIEW_SYSTEM_PERMISSION)
class TaskHistoryDisplayForm(AdminDialogDisplayForm):
"""Task history display form"""
@@ -316,7 +316,7 @@
'data-ams-datatable-sdom': "t<'dt-row dt-bottom-row'<'text-right'p>>",
'data-ams-datatable-display-length': '20',
'data-ams-datatable-pagination-type': 'bootstrap_prevnext'},
- 'tr': {'data-ams-url': lambda x: absolute_url(x, self.request, 'info.json'),
+ 'tr': {'data-ams-url': lambda x, col: absolute_url(x, self.request, 'info.json'),
'data-ams-target': '#task-history-report'}}
def getCSSHighlightClass(self, column, item, cssClass):
@@ -363,7 +363,7 @@
@view_config(name='info.json', context=ITaskHistory, request_type=IPyAMSLayer,
- permission='system.view', renderer='json', xhr=True)
+ permission=VIEW_SYSTEM_PERMISSION, renderer='json', xhr=True)
def TaskHistoryInfoView(request):
return {'status': 'success',
'close_form': False,