523 |
523 |
get_response().add_javascript(['jquery.js'])
|
524 |
524 |
DateWidget.prepare_javascript()
|
525 |
525 |
form = Form(use_tokens=False, id='listing-settings')
|
526 |
|
form.add(CheckboxWidget, 'waiting', title=_('Waiting for an action'),
|
527 |
|
value=True)
|
|
526 |
form.add(SingleSelectWidget, 'status', title=_('Status'),
|
|
527 |
options=[
|
|
528 |
('waiting', _('Waiting for an action'), 'waiting'),
|
|
529 |
('open', C_('formdata|Open'), 'open'),
|
|
530 |
('done', _('Done'), 'done'),
|
|
531 |
('all', _('All'), 'all')])
|
528 |
532 |
form.add(DateWidget, 'start', title=_('Start Date'))
|
529 |
533 |
form.add(DateWidget, 'end', title=_('End Date'))
|
530 |
534 |
|
... | ... | |
702 |
706 |
parsed_values = {}
|
703 |
707 |
user_roles = [logged_users_role().id] + (get_request().user.roles or [])
|
704 |
708 |
criterias = get_global_criteria(get_request(), parsed_values)
|
705 |
|
criterias.append(Equal('is_at_endpoint', False))
|
706 |
709 |
query_parameters = (get_request().form or {}).copy()
|
707 |
710 |
query_parameters.pop('callback', None) # when using jsonp
|
708 |
|
if not query_parameters or get_request().form.get('waiting') == 'yes':
|
|
711 |
status = query_parameters.get('status', 'waiting')
|
|
712 |
if query_parameters.get('waiting') == 'yes':
|
|
713 |
# compatibility with ?waiting=yes|no parameter, still used in
|
|
714 |
# the /count endpoint used for indicators
|
|
715 |
status = 'waiting'
|
|
716 |
elif query_parameters.get('waiting') == 'no':
|
|
717 |
status = 'open'
|
|
718 |
if status == 'waiting':
|
|
719 |
criterias.append(Equal('is_at_endpoint', False))
|
709 |
720 |
criterias.append(Intersects('actions_roles_array', user_roles))
|
710 |
|
else:
|
|
721 |
elif status == 'open':
|
|
722 |
criterias.append(Equal('is_at_endpoint', False))
|
711 |
723 |
criterias.append(Intersects('concerned_roles_array', user_roles))
|
|
724 |
elif status == 'done':
|
|
725 |
criterias.append(Equal('is_at_endpoint', True))
|
712 |
726 |
if get_request().form.get('submission_channel'):
|
713 |
727 |
if get_request().form.get('submission_channel') == 'web':
|
714 |
728 |
criterias.append(Null('submission_channel'))
|
715 |
|
-
|