PMCORE-2500
This commit is contained in:
@@ -19475,6 +19475,18 @@ msgstr "Successfully connected to MySQL Server"
|
|||||||
msgid "My account"
|
msgid "My account"
|
||||||
msgstr "My account"
|
msgstr "My account"
|
||||||
|
|
||||||
|
# TRANSLATION
|
||||||
|
# LABEL/ID_MY_CASES
|
||||||
|
#: LABEL/ID_MY_CASES
|
||||||
|
msgid "My Cases"
|
||||||
|
msgstr "My Cases"
|
||||||
|
|
||||||
|
# TRANSLATION
|
||||||
|
# LABEL/ID_MY_DOCUMENTS
|
||||||
|
#: LABEL/ID_MY_DOCUMENTS
|
||||||
|
msgid "My Documents"
|
||||||
|
msgstr "My Documents"
|
||||||
|
|
||||||
# TRANSLATION
|
# TRANSLATION
|
||||||
# LABEL/ID_MY_DRAFTS
|
# LABEL/ID_MY_DRAFTS
|
||||||
#: LABEL/ID_MY_DRAFTS
|
#: LABEL/ID_MY_DRAFTS
|
||||||
@@ -24977,6 +24989,12 @@ msgstr "Failed saving Supervisor Assigned to process"
|
|||||||
msgid "Supervisor has been removed successfully from Process"
|
msgid "Supervisor has been removed successfully from Process"
|
||||||
msgstr "Supervisor has been removed successfully from Process"
|
msgstr "Supervisor has been removed successfully from Process"
|
||||||
|
|
||||||
|
# TRANSLATION
|
||||||
|
# LABEL/ID_SUPERVISOR_TASKS
|
||||||
|
#: LABEL/ID_SUPERVISOR_TASKS
|
||||||
|
msgid "Supervisor Tasks"
|
||||||
|
msgstr "Supervisor Tasks"
|
||||||
|
|
||||||
# TRANSLATION
|
# TRANSLATION
|
||||||
# LABEL/ID_SUPERVISOR_UNAVAILABLE
|
# LABEL/ID_SUPERVISOR_UNAVAILABLE
|
||||||
#: LABEL/ID_SUPERVISOR_UNAVAILABLE
|
#: LABEL/ID_SUPERVISOR_UNAVAILABLE
|
||||||
@@ -25241,6 +25259,12 @@ msgstr "Overdue"
|
|||||||
msgid "Task properties has been saved successfully"
|
msgid "Task properties has been saved successfully"
|
||||||
msgstr "Task properties has been saved successfully"
|
msgstr "Task properties has been saved successfully"
|
||||||
|
|
||||||
|
# TRANSLATION
|
||||||
|
# LABEL/ID_TASK_REASSIGNMENTS
|
||||||
|
#: LABEL/ID_TASK_REASSIGNMENTS
|
||||||
|
msgid "Task Reassignments"
|
||||||
|
msgstr "Task Reassignments"
|
||||||
|
|
||||||
# TRANSLATION
|
# TRANSLATION
|
||||||
# LABEL/ID_TASK_TRANSFER
|
# LABEL/ID_TASK_TRANSFER
|
||||||
#: LABEL/ID_TASK_TRANSFER
|
#: LABEL/ID_TASK_TRANSFER
|
||||||
|
|||||||
@@ -60135,6 +60135,8 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
|
|||||||
( 'LABEL','ID_MYSQL_ERROR','en','MySQL error: {0}','2014-01-15') ,
|
( 'LABEL','ID_MYSQL_ERROR','en','MySQL error: {0}','2014-01-15') ,
|
||||||
( 'LABEL','ID_MYSQL_SUCCESS_CONNECT','en','Successfully connected to MySQL Server','2015-04-08') ,
|
( 'LABEL','ID_MYSQL_SUCCESS_CONNECT','en','Successfully connected to MySQL Server','2015-04-08') ,
|
||||||
( 'LABEL','ID_MY_ACCOUNT','en','My account','2014-01-15') ,
|
( 'LABEL','ID_MY_ACCOUNT','en','My account','2014-01-15') ,
|
||||||
|
( 'LABEL','ID_MY_CASES','en','My Cases','2020-12-07') ,
|
||||||
|
( 'LABEL','ID_MY_DOCUMENTS','en','My Documents','2014-12-07') ,
|
||||||
( 'LABEL','ID_MY_DRAFTS','en','My Drafts','2014-01-15') ,
|
( 'LABEL','ID_MY_DRAFTS','en','My Drafts','2014-01-15') ,
|
||||||
( 'LABEL','ID_MY_INBOX','en','My inbox','2014-01-15') ,
|
( 'LABEL','ID_MY_INBOX','en','My inbox','2014-01-15') ,
|
||||||
( 'LABEL','ID_NAME','en','Name','2014-01-15') ,
|
( 'LABEL','ID_NAME','en','Name','2014-01-15') ,
|
||||||
@@ -61080,6 +61082,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
|
|||||||
( 'LABEL','ID_SUPERVISOR_DOES_NOT_HAVE_DYNAFORMS','en','Supervisor does not have a permission for Dynaform(s).','2015-05-28') ,
|
( 'LABEL','ID_SUPERVISOR_DOES_NOT_HAVE_DYNAFORMS','en','Supervisor does not have a permission for Dynaform(s).','2015-05-28') ,
|
||||||
( 'LABEL','ID_SUPERVISOR_FAILED','en','Failed saving Supervisor Assigned to process','2014-01-15') ,
|
( 'LABEL','ID_SUPERVISOR_FAILED','en','Failed saving Supervisor Assigned to process','2014-01-15') ,
|
||||||
( 'LABEL','ID_SUPERVISOR_REMOVED','en','Supervisor has been removed successfully from Process','2014-01-15') ,
|
( 'LABEL','ID_SUPERVISOR_REMOVED','en','Supervisor has been removed successfully from Process','2014-01-15') ,
|
||||||
|
( 'LABEL','ID_SUPERVISOR_TASKS','en','Supervisor Tasks','2020-12-07') ,
|
||||||
( 'LABEL','ID_SUPERVISOR_UNAVAILABLE','en','No supervisors are available. All supervisors have been already assigned.','2014-01-15') ,
|
( 'LABEL','ID_SUPERVISOR_UNAVAILABLE','en','No supervisors are available. All supervisors have been already assigned.','2014-01-15') ,
|
||||||
( 'LABEL','ID_SUPPORT','en','Support','2014-10-20') ,
|
( 'LABEL','ID_SUPPORT','en','Support','2014-10-20') ,
|
||||||
( 'LABEL','ID_SWITCH_EDITOR','en','Switch Editor','2014-01-15') ,
|
( 'LABEL','ID_SWITCH_EDITOR','en','Switch Editor','2014-01-15') ,
|
||||||
@@ -61126,6 +61129,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
|
|||||||
( 'LABEL','ID_TASK_NO_STEPS','en','The task doesn''t have any steps','2014-01-15') ,
|
( 'LABEL','ID_TASK_NO_STEPS','en','The task doesn''t have any steps','2014-01-15') ,
|
||||||
( 'LABEL','ID_TASK_OVERDUE','en','Overdue','2015-06-09') ,
|
( 'LABEL','ID_TASK_OVERDUE','en','Overdue','2015-06-09') ,
|
||||||
( 'LABEL','ID_TASK_PROPERTIES_SAVE','en','Task properties has been saved successfully','2014-01-15') ,
|
( 'LABEL','ID_TASK_PROPERTIES_SAVE','en','Task properties has been saved successfully','2014-01-15') ,
|
||||||
|
( 'LABEL','ID_TASK_REASSIGNMENTS','en','Task Reassignments','2020-12-07') ,
|
||||||
( 'LABEL','ID_TASK_TRANSFER','en','Task Transfer Date','2014-01-15') ,
|
( 'LABEL','ID_TASK_TRANSFER','en','Task Transfer Date','2014-01-15') ,
|
||||||
( 'LABEL','ID_TASK_WAS_ASSIGNED_TO_USER','en','Manual assignment shouldn''t be used with sub-processes.<br>The task "{0}" from case {1} was assigned to user <b>{2}</b> ( {3} {4} )','2015-02-24') ,
|
( 'LABEL','ID_TASK_WAS_ASSIGNED_TO_USER','en','Manual assignment shouldn''t be used with sub-processes.<br>The task "{0}" from case {1} was assigned to user <b>{2}</b> ( {3} {4} )','2015-02-24') ,
|
||||||
( 'LABEL','ID_TAS_DURATION_REQUIRE','en','Duration task required','2014-0f-15') ,
|
( 'LABEL','ID_TAS_DURATION_REQUIRE','en','Duration task required','2014-0f-15') ,
|
||||||
|
|||||||
84
workflow/engine/menus/home.php
Normal file
84
workflow/engine/menus/home.php
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
global $RBAC;
|
||||||
|
global $G_TMP_MENU;
|
||||||
|
|
||||||
|
// Home section
|
||||||
|
$G_TMP_MENU->AddIdRawOption('SEARCHS', '', G::LoadTranslation('ID_HOME'), '', '', 'blockHeader');
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CASES_MY_CASES',
|
||||||
|
'/',
|
||||||
|
G::LoadTranslation('ID_MY_CASES'),
|
||||||
|
'fas fa-sliders-h'
|
||||||
|
);
|
||||||
|
if ($RBAC->userCanAccess('PM_ALLCASES') == 1) {
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CASES_SEARCH',
|
||||||
|
'casesListExtJs?action=search',
|
||||||
|
G::LoadTranslation('ID_ADVANCEDSEARCH'),
|
||||||
|
'fas fa-search'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Tasks section
|
||||||
|
$G_TMP_MENU->AddIdRawOption('FOLDERS', '', G::LoadTranslation('ID_TASKS'), '', '', 'blockHeader');
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CASES_INBOX',
|
||||||
|
'casesListExtJs?action=todo',
|
||||||
|
G::LoadTranslation('ID_INBOX'),
|
||||||
|
'far fa-check-circle'
|
||||||
|
);
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CASES_DRAFT',
|
||||||
|
'casesListExtJs?action=draft',
|
||||||
|
G::LoadTranslation('ID_DRAFT'),
|
||||||
|
'far fa-edit'
|
||||||
|
);
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CASES_PAUSED',
|
||||||
|
'casesListExtJs?action=paused',
|
||||||
|
G::LoadTranslation('ID_PAUSED'),
|
||||||
|
'far fa-pause-circle'
|
||||||
|
);
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CASES_SELFSERVICE',
|
||||||
|
'casesListExtJs?action=selfservice',
|
||||||
|
G::LoadTranslation('ID_UNASSIGNED'),
|
||||||
|
'fas fa-crosshairs'
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// Supervisor Tasks section
|
||||||
|
$G_TMP_MENU->AddIdRawOption('ADMIN', '', G::LoadTranslation('ID_SUPERVISOR_TASKS'), '', '', 'blockHeader');
|
||||||
|
/*----------------------------------********---------------------------------*/
|
||||||
|
$licensedFeatures = PMLicensedFeatures::getSingleton();
|
||||||
|
if ($licensedFeatures->verifyfeature('7TTeDBQeWRoZTZKYjh4eFpYUlRDUUEyVERPU3FxellWank=')) {
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CONSOLIDATED_CASES',
|
||||||
|
'casesConsolidatedListExtJs?action=consolidated',
|
||||||
|
G::LoadTranslation('ID_BATCH_ROUTING'),
|
||||||
|
'fas fa-bars'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
/*----------------------------------********---------------------------------*/
|
||||||
|
if ($RBAC->userCanAccess('PM_REASSIGNCASE') == 1 || $RBAC->userCanAccess('PM_REASSIGNCASE_SUPERVISOR') == 1) {
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CASES_TO_REASSIGN',
|
||||||
|
'casesListExtJs?action=to_reassign',
|
||||||
|
G::LoadTranslation('ID_TASK_REASSIGNMENTS'),
|
||||||
|
'fas fa-arrows-alt'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Documents section
|
||||||
|
if ($RBAC->userCanAccess('PM_FOLDERS_ALL') == 1 || $RBAC->userCanAccess('PM_FOLDERS_OWNER') == 1) {
|
||||||
|
$G_TMP_MENU->AddIdRawOption('DOCUMENTS', '', G::LoadTranslation('ID_FOLDERS'), '', '', 'blockHeader');
|
||||||
|
$G_TMP_MENU->AddIdRawOption(
|
||||||
|
'CASES_FOLDERS',
|
||||||
|
'casesStartPage?action=documents',
|
||||||
|
G::LoadTranslation('ID_MY_DOCUMENTS'),
|
||||||
|
'fas fa-bars'
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -4,7 +4,9 @@ namespace ProcessMaker\Services\Api;
|
|||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
use Luracast\Restler\RestException;
|
use Luracast\Restler\RestException;
|
||||||
|
use Menu;
|
||||||
use ProcessMaker\BusinessModel\Cases\Draft;
|
use ProcessMaker\BusinessModel\Cases\Draft;
|
||||||
|
use ProcessMaker\BusinessModel\Cases\Filter;
|
||||||
use ProcessMaker\BusinessModel\Cases\Inbox;
|
use ProcessMaker\BusinessModel\Cases\Inbox;
|
||||||
use ProcessMaker\BusinessModel\Cases\Participated;
|
use ProcessMaker\BusinessModel\Cases\Participated;
|
||||||
use ProcessMaker\BusinessModel\Cases\Paused;
|
use ProcessMaker\BusinessModel\Cases\Paused;
|
||||||
@@ -14,6 +16,7 @@ use ProcessMaker\BusinessModel\Cases\Unassigned;
|
|||||||
use ProcessMaker\Model\User;
|
use ProcessMaker\Model\User;
|
||||||
use ProcessMaker\Services\Api;
|
use ProcessMaker\Services\Api;
|
||||||
use RBAC;
|
use RBAC;
|
||||||
|
use stdClass;
|
||||||
|
|
||||||
class Home extends Api
|
class Home extends Api
|
||||||
{
|
{
|
||||||
@@ -460,4 +463,75 @@ class Home extends Api
|
|||||||
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
|
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get home menu
|
||||||
|
*
|
||||||
|
* @url GET /menu
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*
|
||||||
|
* @access protected
|
||||||
|
*/
|
||||||
|
public function getMenu()
|
||||||
|
{
|
||||||
|
// Parse menu definition
|
||||||
|
$menuInstance = new Menu();
|
||||||
|
$menuInstance->load('home');
|
||||||
|
|
||||||
|
// Initializing variables
|
||||||
|
$optionsWithCounter = ['CASES_INBOX', 'CASES_DRAFT', 'CASES_PAUSED', 'CASES_SELFSERVICE'];
|
||||||
|
$menuHome = [];
|
||||||
|
|
||||||
|
// Build the Home menu
|
||||||
|
for ($i = 0; $i < count($menuInstance->Options); $i++) {
|
||||||
|
// Initializing option object
|
||||||
|
$option = new stdClass();
|
||||||
|
|
||||||
|
// Build the object according to the option menu type
|
||||||
|
if ($menuInstance->Types[$i] === 'blockHeader') {
|
||||||
|
$option->header = true;
|
||||||
|
$option->title = $menuInstance->Labels[$i];
|
||||||
|
$option->hiddenOnCollapse = true;
|
||||||
|
} else {
|
||||||
|
$option->href = $menuInstance->Options[$i];
|
||||||
|
$option->id = $menuInstance->Id[$i];
|
||||||
|
$option->title = $menuInstance->Labels[$i];
|
||||||
|
$option->icon = $menuInstance->Icons[$i];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add additional attributes for some options
|
||||||
|
if (in_array($menuInstance->Id[$i], $optionsWithCounter)) {
|
||||||
|
$option->badge = new stdClass();
|
||||||
|
$option->badge->text = '0';
|
||||||
|
$option->badge->class = 'badge-custom';
|
||||||
|
}
|
||||||
|
if ($menuInstance->Id[$i] === 'CASES_SEARCH') {
|
||||||
|
// Get advanced search filters for the current user
|
||||||
|
$filters = Filter::getByUser($this->getUserId());
|
||||||
|
|
||||||
|
// Initializing
|
||||||
|
$child = [];
|
||||||
|
foreach ($filters as $filter) {
|
||||||
|
$childFilter = new stdClass();
|
||||||
|
$childFilter->id = $filter->id;
|
||||||
|
$childFilter->page = '/advanced-search';
|
||||||
|
$childFilter->href = "{$childFilter->page}/{$filter->id}";
|
||||||
|
$childFilter->title = $filter->name;
|
||||||
|
$childFilter->icon = 'fas fa-circle';
|
||||||
|
$childFilter->filters = $filter->filters;
|
||||||
|
$child[] = $childFilter;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Adding filters to the "Advanced Search" option
|
||||||
|
$option->child = $child;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add option to the menu
|
||||||
|
$menuHome[] = $option;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Return menu
|
||||||
|
return $menuHome;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user