Add workflow states list view
This commit is contained in:
@@ -18,13 +18,14 @@ setup_workflow_list_link = {'text': _(u'workflow list'), 'view': 'setup_workflow
|
|||||||
setup_workflow_create_link = {'text': _(u'create new'), 'view': 'setup_workflow_create', 'famfam': 'chart_organisation_add', 'permissions': [PERMISSION_WORKFLOW_SETUP_CREATE]}
|
setup_workflow_create_link = {'text': _(u'create new'), 'view': 'setup_workflow_create', 'famfam': 'chart_organisation_add', 'permissions': [PERMISSION_WORKFLOW_SETUP_CREATE]}
|
||||||
setup_workflow_edit_link = {'text': _(u'edit'), 'view': 'setup_workflow_edit', 'args': 'object.pk', 'famfam': 'chart_organisation', 'permissions': [PERMISSION_WORKFLOW_SETUP_EDIT]}
|
setup_workflow_edit_link = {'text': _(u'edit'), 'view': 'setup_workflow_edit', 'args': 'object.pk', 'famfam': 'chart_organisation', 'permissions': [PERMISSION_WORKFLOW_SETUP_EDIT]}
|
||||||
setup_workflow_delete_link = {'text': _(u'delete'), 'view': 'setup_workflow_delete', 'args': 'object.pk', 'famfam': 'chart_organisation_delete', 'permissions': [PERMISSION_WORKFLOW_SETUP_DELETE]}
|
setup_workflow_delete_link = {'text': _(u'delete'), 'view': 'setup_workflow_delete', 'args': 'object.pk', 'famfam': 'chart_organisation_delete', 'permissions': [PERMISSION_WORKFLOW_SETUP_DELETE]}
|
||||||
|
setup_workflow_states_list_link = {'text': _(u'states'), 'view': 'setup_workflow_states_list', 'args': 'object.pk', 'famfam': 'transmit_go', 'permissions': [PERMISSION_WORKFLOW_SETUP_EDIT]}
|
||||||
|
|
||||||
setup_state_list_link = {'text': _(u'state list'), 'view': 'setup_state_list', 'famfam': 'transmit', 'permissions': [PERMISSION_STATE_SETUP_VIEW]}
|
setup_state_list_link = {'text': _(u'state list'), 'view': 'setup_state_list', 'famfam': 'transmit', 'permissions': [PERMISSION_STATE_SETUP_VIEW]}
|
||||||
setup_state_create_link = {'text': _(u'create new'), 'view': 'setup_state_create', 'famfam': 'transmit_add', 'permissions': [PERMISSION_STATE_SETUP_CREATE]}
|
setup_state_create_link = {'text': _(u'create new'), 'view': 'setup_state_create', 'famfam': 'transmit_add', 'permissions': [PERMISSION_STATE_SETUP_CREATE]}
|
||||||
setup_state_edit_link = {'text': _(u'edit'), 'view': 'setup_state_edit', 'args': 'object.pk', 'famfam': 'transmit_edit', 'permissions': [PERMISSION_STATE_SETUP_EDIT]}
|
setup_state_edit_link = {'text': _(u'edit'), 'view': 'setup_state_edit', 'args': 'object.pk', 'famfam': 'transmit_edit', 'permissions': [PERMISSION_STATE_SETUP_EDIT]}
|
||||||
setup_state_delete_link = {'text': _(u'delete'), 'view': 'setup_state_delete', 'args': 'object.pk', 'famfam': 'transmit_delete', 'permissions': [PERMISSION_STATE_SETUP_DELETE]}
|
setup_state_delete_link = {'text': _(u'delete'), 'view': 'setup_state_delete', 'args': 'object.pk', 'famfam': 'transmit_delete', 'permissions': [PERMISSION_STATE_SETUP_DELETE]}
|
||||||
|
|
||||||
register_links(Workflow, [setup_workflow_edit_link, setup_workflow_delete_link])
|
register_links(Workflow, [setup_workflow_states_list_link, setup_workflow_edit_link, setup_workflow_delete_link])
|
||||||
register_links([Workflow, State, 'setup_workflow_list', 'setup_workflow_create', 'setup_state_list'], [setup_workflow_list_link], menu_name=u'form_header')
|
register_links([Workflow, State, 'setup_workflow_list', 'setup_workflow_create', 'setup_state_list'], [setup_workflow_list_link], menu_name=u'form_header')
|
||||||
register_links([Workflow, 'setup_workflow_list', 'setup_workflow_create'], [setup_workflow_create_link], menu_name=u'secondary_menu')
|
register_links([Workflow, 'setup_workflow_list', 'setup_workflow_create'], [setup_workflow_create_link], menu_name=u'secondary_menu')
|
||||||
|
|
||||||
|
|||||||
@@ -62,8 +62,8 @@ class Transition(models.Model):
|
|||||||
|
|
||||||
|
|
||||||
class WorkflowState(models.Model):
|
class WorkflowState(models.Model):
|
||||||
workflow = models.ForeignKey(Workflow, related_name='workflow_state_workflow', verbose_name=_(u'workflow'))
|
workflow = models.ForeignKey(Workflow, verbose_name=_(u'workflow'))
|
||||||
state = models.ForeignKey(State, related_name='workflow_state_state', verbose_name=_(u'state'))
|
state = models.ForeignKey(State, verbose_name=_(u'state'))
|
||||||
description = models.TextField(blank=True, verbose_name=_(u'description'))
|
description = models.TextField(blank=True, verbose_name=_(u'description'))
|
||||||
|
|
||||||
def __unicode__(self):
|
def __unicode__(self):
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ urlpatterns = patterns('workflows.views',
|
|||||||
url(r'^setup/workflow/create/$', 'setup_workflow_create', (), 'setup_workflow_create'),
|
url(r'^setup/workflow/create/$', 'setup_workflow_create', (), 'setup_workflow_create'),
|
||||||
url(r'^setup/workflow/(?P<workflow_pk>\d+)/edit/$', 'setup_workflow_edit', (), 'setup_workflow_edit'),
|
url(r'^setup/workflow/(?P<workflow_pk>\d+)/edit/$', 'setup_workflow_edit', (), 'setup_workflow_edit'),
|
||||||
url(r'^setup/workflow/(?P<workflow_pk>\d+)/delete/$', 'setup_workflow_delete', (), 'setup_workflow_delete'),
|
url(r'^setup/workflow/(?P<workflow_pk>\d+)/delete/$', 'setup_workflow_delete', (), 'setup_workflow_delete'),
|
||||||
|
url(r'^setup/workflow/(?P<workflow_pk>\d+)/state/list/$', 'setup_workflow_states_list', (), 'setup_workflow_states_list'),
|
||||||
|
|
||||||
url(r'^setup/state/list/$', 'setup_state_list', (), 'setup_state_list'),
|
url(r'^setup/state/list/$', 'setup_state_list', (), 'setup_state_list'),
|
||||||
url(r'^setup/state/create/$', 'setup_state_create', (), 'setup_state_create'),
|
url(r'^setup/state/create/$', 'setup_state_create', (), 'setup_state_create'),
|
||||||
|
|||||||
@@ -38,8 +38,6 @@ def setup_workflow_list(request):
|
|||||||
'object_list': Workflow.objects.all(),
|
'object_list': Workflow.objects.all(),
|
||||||
'title': _(u'workflows'),
|
'title': _(u'workflows'),
|
||||||
'hide_link': True,
|
'hide_link': True,
|
||||||
#'list_object_variable_name': 'source',
|
|
||||||
#'source_type': source_type,
|
|
||||||
'extra_columns': [
|
'extra_columns': [
|
||||||
{'name': _(u'Initial state'), 'attribute': encapsulate(lambda workflow: workflow.initial_state or _(u'None'))},
|
{'name': _(u'Initial state'), 'attribute': encapsulate(lambda workflow: workflow.initial_state or _(u'None'))},
|
||||||
],
|
],
|
||||||
@@ -52,7 +50,6 @@ def setup_workflow_list(request):
|
|||||||
def setup_workflow_create(request):
|
def setup_workflow_create(request):
|
||||||
Permission.objects.check_permissions(request.user, [PERMISSION_WORKFLOW_SETUP_CREATE])
|
Permission.objects.check_permissions(request.user, [PERMISSION_WORKFLOW_SETUP_CREATE])
|
||||||
redirect_url = reverse('setup_workflow_list')
|
redirect_url = reverse('setup_workflow_list')
|
||||||
#previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', redirect_url)))
|
|
||||||
|
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
form = WorkflowSetupForm(request.POST)
|
form = WorkflowSetupForm(request.POST)
|
||||||
@@ -142,6 +139,22 @@ def setup_workflow_delete(request, workflow_pk=None, workflow_pk_list=None):
|
|||||||
return render_to_response('generic_confirm.html', context,
|
return render_to_response('generic_confirm.html', context,
|
||||||
context_instance=RequestContext(request))
|
context_instance=RequestContext(request))
|
||||||
|
|
||||||
|
|
||||||
|
def setup_workflow_states_list(request, workflow_pk):
|
||||||
|
Permission.objects.check_permissions(request.user, [PERMISSION_WORKFLOW_SETUP_EDIT])
|
||||||
|
workflow = get_object_or_404(Workflow, pk=workflow_pk)
|
||||||
|
|
||||||
|
context = {
|
||||||
|
'object_list': workflow.workflowstate_set.all(),
|
||||||
|
'title': _(u'workflows'),
|
||||||
|
'hide_link': True,
|
||||||
|
'object': workflow,
|
||||||
|
}
|
||||||
|
|
||||||
|
return render_to_response('generic_list.html', context,
|
||||||
|
context_instance=RequestContext(request))
|
||||||
|
|
||||||
|
|
||||||
# States
|
# States
|
||||||
def setup_state_list(request):
|
def setup_state_list(request):
|
||||||
Permission.objects.check_permissions(request.user, [PERMISSION_STATE_SETUP_VIEW])
|
Permission.objects.check_permissions(request.user, [PERMISSION_STATE_SETUP_VIEW])
|
||||||
|
|||||||
Reference in New Issue
Block a user