17 import(
'lib.pkp.classes.form.Form');
28 parent::__construct(
'controllers/grid/settings/submissionChecklist/form/submissionChecklistForm.tpl');
43 $context = $request->getContext();
45 $submissionChecklistAll = $context->getData(
'submissionChecklist');
46 $checklistItem = array();
49 $checklistItem[$locale] =
null;
54 if ( isset($this->submissionChecklistId) ) {
56 if ( !isset($submissionChecklistAll[$locale][$this->submissionChecklistId][
'content'])) {
57 $checklistItem[$locale] =
'';
64 $this->_data = array(
'checklistItem' => $checklistItem );
67 $this->_data[
'gridId'] = $args[
'gridId'];
68 $this->_data[
'rowId'] = isset($args[
'rowId']) ? $args[
'rowId'] :
null;
74 function fetch($request, $template =
null, $display =
false) {
76 return parent::fetch($request, $template, $display);
84 $this->
readUserVars(array(
'submissionChecklistId',
'checklistItem'));
91 function execute(...$functionArgs) {
93 $router = $request->getRouter();
94 $context = $router->getContext($request);
95 $submissionChecklistAll = $context->getData(
'submissionChecklist');
98 $this->submissionChecklistId = ($this->submissionChecklistId !=
null ? $this->submissionChecklistId:(max(array_keys($submissionChecklistAll[$locale])) + 1));
101 foreach ($submissionChecklistAll[$locale] as $checklistItem) {
102 if ($checklistItem[
'order'] > $order) {
103 $order = $checklistItem[
'order'];
108 $checklistItem = $this->
getData(
'checklistItem');
110 if (isset($checklistItem[$locale])) {
116 $context->updateSetting(
'submissionChecklist', $submissionChecklistAll,
'object',
true);
117 parent::execute(...$functionArgs);