41
41
from workflow import WorkflowState , NOT_REGISTERED , PENDING , FINISHED , EXPORTED
42
42
from customization import custom_flag
43
43
from rw import ODSWriter , XLSWriter
44
+ from workflow import NOT_REGISTERED , EMPTY , PENDING , FINISHED , EXPORTED
44
45
45
46
# Messages
46
47
MSG_APPLICATION_TITLE = MSG (u'<span class="application-title">Title of your application:</span> {title}' , format = 'replace_html' )
@@ -217,8 +218,10 @@ def raw_action(self, resource, context, form):
217
218
context .database .change_resource (resource )
218
219
# Transmit list of errors when returning GET
219
220
context .message = MSG_SAVED
220
- # if resource.get_workflow_state() == EMPTY:
221
- resource .set_workflow_state (PENDING )
221
+ # Update form state
222
+ if resource .get_value ('form_state' ) == EMPTY :
223
+ resource .set_value ('form_state' , PENDING )
224
+
222
225
223
226
def action (self , resource , context , form ):
224
227
schema , pages = resource .get_schema_pages ()
@@ -370,9 +373,9 @@ def action(self, resource, context, form):
370
373
context .message = messages
371
374
else :
372
375
context .message = MSG_SAVED
373
- # FIXME
374
- # if resource.get_workflow_state( ) == EMPTY:
375
- # resource.set_workflow_state( PENDING)
376
+ # Update form state
377
+ if resource .get_value ( 'form_state' ) == EMPTY :
378
+ resource .set_value ( 'form_state' , PENDING )
376
379
377
380
378
381
@@ -449,9 +452,8 @@ def get_namespace(self, resource, context):
449
452
is_allowed_to_export = True
450
453
namespace ['is_allowed_to_export' ] = is_allowed_to_export
451
454
# State
452
- namespace ['statename' ] = statename = resource .get_workflow_state ()
453
- namespace ['form_state' ] = WorkflowState .get_value (
454
- resource .get_workflow_state ())
455
+ namespace ['statename' ] = statename = resource .get_value ('form_state' )
456
+ namespace ['form_state' ] = resource .get_value_title ('form_state' )
455
457
# Transitions
456
458
namespace ['can_send' ] = statename == PENDING and not errors
457
459
namespace ['can_export' ] = is_allowed_to_export and not errors
@@ -465,7 +467,7 @@ def get_namespace(self, resource, context):
465
467
def action_send (self , resource , context , form ):
466
468
"""Ce qu'il faut faire quand le formulaire est soumis.
467
469
"""
468
- resource .set_workflow_state ( FINISHED )
470
+ resource .set_value ( 'form_state' , FINISHED )
469
471
470
472
# Notification e-mail
471
473
application = resource .parent
@@ -502,7 +504,7 @@ def action_send(self, resource, context, form):
502
504
def action_export (self , resource , context , form ):
503
505
"""Ce qu'il faut faire quand le formulaire est exporté.
504
506
"""
505
- resource .set_workflow_state ( EXPORTED )
507
+ resource .set_value ( 'form_state' , EXPORTED )
506
508
507
509
# XXX
508
510
context .commit = False
@@ -623,7 +625,7 @@ def action_export(self, resource, context, form, writer_cls=ODSWriter):
623
625
and user .get_value ('password' ) is None ):
624
626
state = NOT_REGISTERED
625
627
else :
626
- state = item_brain .workflow_state
628
+ state = item_brain .form_state
627
629
value = WorkflowState .get_value (state )
628
630
else :
629
631
value = self .get_item_value (resource , context , item ,
@@ -671,7 +673,7 @@ class Forms_Export(BaseView):
671
673
def GET (self , resource , context ):
672
674
app = resource .parent
673
675
for form in app .get_forms ():
674
- state = form .get_workflow_state ( )
676
+ state = form .get_value ( 'form_state' )
675
677
if state != 'private' :
676
678
break
677
679
else :
@@ -723,7 +725,7 @@ def GET(self, resource, context):
723
725
email = ""
724
726
firstname = ""
725
727
lastname = form .name
726
- state = WorkflowState . get_value ( form .get_workflow_state () )
728
+ state = form .get_value_title ( 'form_state' )
727
729
state = state .gettext ()
728
730
row = [form .name , firstname , lastname , email , state ]
729
731
handler = form .get_value ('data' )
0 commit comments