From 0c523ed29622b530c282863d895d6f11aac8ff51 Mon Sep 17 00:00:00 2001 From: Luis Fernando Saisa Lopez Date: Wed, 6 May 2015 16:28:05 -0400 Subject: [PATCH 1/5] PM-2288 "DesignerBPMN>CaseTracker: No se puede..." SOLVED > Code Isuue: DesignerBPMN>CaseTracker: No se puede visualizar el estado que tiene el caso creado > Solution: Se completa a la opcion "Where is My Case?" del case tracker para el seguimiento del caso. --- workflow/engine/controllers/designer.php | 6 ++- workflow/engine/templates/tracker/viewMap.php | 50 +++++++++++++++++-- workflow/public_html/sysGeneric.php | 2 +- 3 files changed, 51 insertions(+), 7 deletions(-) diff --git a/workflow/engine/controllers/designer.php b/workflow/engine/controllers/designer.php index 745d5c771..6c6d2cced 100644 --- a/workflow/engine/controllers/designer.php +++ b/workflow/engine/controllers/designer.php @@ -128,6 +128,11 @@ class Designer extends Controller \ProcessMaker\Services\OAuth2\Server::setPmClientId($client['CLIENT_ID']); $oauthServer = new \ProcessMaker\Services\OAuth2\Server(); + + if (!isset($_SESSION["USER_LOGGED"])) { + $_SESSION["USER_LOGGED"] = "00000000000000000000000000000001"; + } + $userId = $_SESSION['USER_LOGGED']; $authorize = true; $_GET = array_merge($_GET, array( @@ -151,4 +156,3 @@ class Designer extends Controller return array('dsn' => $dsn, 'username' => DB_USER, 'password' => DB_PASS); } } - diff --git a/workflow/engine/templates/tracker/viewMap.php b/workflow/engine/templates/tracker/viewMap.php index e9a5ea343..845e4c5d3 100644 --- a/workflow/engine/templates/tracker/viewMap.php +++ b/workflow/engine/templates/tracker/viewMap.php @@ -1,5 +1,45 @@ - -Not supported yet. \ No newline at end of file + + + diff --git a/workflow/public_html/sysGeneric.php b/workflow/public_html/sysGeneric.php index d6714eec3..d958f6f79 100755 --- a/workflow/public_html/sysGeneric.php +++ b/workflow/public_html/sysGeneric.php @@ -961,7 +961,7 @@ if (! defined( 'EXECUTE_BY_CRON' )) { } } - if ($bRedirect) { + if ($bRedirect && !isset($_GET["tracker_designer"])) { if (substr( SYS_SKIN, 0, 2 ) == 'ux' && SYS_SKIN != 'uxs') { // verify if the current skin is a 'ux' variant $loginUrl = 'main/login'; } else if (strpos( $_SERVER['REQUEST_URI'], '/home' ) !== false) { //verify is it is using the uxs skin for simplified interface From 3e35bb1cae3d8301c0f556b12d44bbb42c52076f Mon Sep 17 00:00:00 2001 From: Luis Fernando Saisa Lopez Date: Fri, 8 May 2015 11:24:26 -0400 Subject: [PATCH 2/5] PM-2288 "DesignerBPMN>CaseTracker: No se puede..." SOLVED --- workflow/engine/controllers/designer.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/workflow/engine/controllers/designer.php b/workflow/engine/controllers/designer.php index 6c6d2cced..67624beb1 100644 --- a/workflow/engine/controllers/designer.php +++ b/workflow/engine/controllers/designer.php @@ -27,6 +27,11 @@ class Designer extends Controller $appUid = isset($httpData->app_uid) ? $httpData->app_uid : ''; $proReadOnly = isset($httpData->prj_readonly) ? $httpData->prj_readonly : 'false'; $client = $this->getClientCredentials(); + + if (isset($httpData->tracker_designer) && $httpData->tracker_designer == 1) { + $client["tracker_designer"] = 1; + } + $authCode = $this->getAuthorizationCode($client); $debug = false; //System::isDebugMode(); @@ -129,7 +134,7 @@ class Designer extends Controller $oauthServer = new \ProcessMaker\Services\OAuth2\Server(); - if (!isset($_SESSION["USER_LOGGED"])) { + if (isset($client["tracker_designer"]) && $client["tracker_designer"] == 1) { $_SESSION["USER_LOGGED"] = "00000000000000000000000000000001"; } @@ -144,6 +149,10 @@ class Designer extends Controller $response = $oauthServer->postAuthorize($authorize, $userId, true); $code = substr($response->getHttpHeader('Location'), strpos($response->getHttpHeader('Location'), 'code=')+5, 40); + if (isset($client["tracker_designer"]) && $client["tracker_designer"] == 1) { + unset($_SESSION["USER_LOGGED"]); + } + return $code; } From 29eaea60f6fdea01fa59b6982b87c20f7c5ab26b Mon Sep 17 00:00:00 2001 From: Brayan Pereyra Date: Fri, 8 May 2015 15:41:43 -0400 Subject: [PATCH 3/5] PM-2660 Adicion del permiso Summary Form --- workflow/engine/controllers/designer.php | 3 +++ workflow/engine/methods/cases/summary.php | 26 ++++++++++++++----- .../Api/Project/ProcessPermissions.php | 2 +- workflow/engine/templates/designer/index.html | 2 ++ 4 files changed, 26 insertions(+), 7 deletions(-) diff --git a/workflow/engine/controllers/designer.php b/workflow/engine/controllers/designer.php index 745d5c771..e1afc7ca0 100644 --- a/workflow/engine/controllers/designer.php +++ b/workflow/engine/controllers/designer.php @@ -55,16 +55,19 @@ class Designer extends Controller $clientToken["client_secret"] = $client['CLIENT_SECRET']; $consolidated = 0; + $enterprise = 0; /*----------------------------------********---------------------------------*/ $licensedFeatures = & PMLicensedFeatures::getSingleton(); if ($licensedFeatures->verifyfeature('7TTeDBQeWRoZTZKYjh4eFpYUlRDUUEyVERPU3FxellWank=')) { $consolidated = 1; } + $enterprise = 1; /*----------------------------------********---------------------------------*/ $this->setVar('prj_uid', $proUid); $this->setVar('app_uid', $appUid); $this->setVar('consolidated', $consolidated); + $this->setVar('enterprise', $enterprise); $this->setVar('prj_readonly', $proReadOnly); $this->setVar('credentials', base64_encode(json_encode($clientToken))); $this->setVar('isDebugMode', $debug); diff --git a/workflow/engine/methods/cases/summary.php b/workflow/engine/methods/cases/summary.php index 1975b4bb7..72be7a59c 100755 --- a/workflow/engine/methods/cases/summary.php +++ b/workflow/engine/methods/cases/summary.php @@ -57,13 +57,27 @@ try { die(); } /*----------------------------------********---------------------------------*/ - if (file_exists( PATH_DYNAFORM . $applicationFields['PRO_UID'] . PATH_SEP . $_REQUEST['DYN_UID'] . '.xml' )) { - $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = ''; - $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP'] = '#'; - $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP_LABEL'] = ''; - $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_ACTION'] = '#'; - $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['DYNUIDPRINT'] = $_REQUEST['DYN_UID']; + $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = ''; + $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP'] = '#'; + $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP_LABEL'] = ''; + $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_ACTION'] = '#'; + $applicationFields['APP_DATA']['__DYNAFORM_OPTIONS']['DYNUIDPRINT'] = $_REQUEST['DYN_UID']; + $criteria = new Criteria(); + $criteria->addSelectColumn(DynaformPeer::DYN_CONTENT); + $criteria->add(DynaformPeer::DYN_UID, $_REQUEST['DYN_UID']); + $criteria->add(DynaformPeer::DYN_VERSION, 2); + $result = DynaformPeer::doSelectRS($criteria); + $result->setFetchmode(ResultSet::FETCHMODE_ASSOC); + if ($result->next()) { + G::LoadClass('pmDynaform'); + G::LoadClass('pmDynaform'); + $FieldsPmDynaform = $applicationFields; + $FieldsPmDynaform["CURRENT_DYNAFORM"] = $_REQUEST['DYN_UID']; + $a = new pmDynaform($FieldsPmDynaform); + $a->printView(); + } + if (file_exists( PATH_DYNAFORM . $applicationFields['PRO_UID'] . PATH_SEP . $_REQUEST['DYN_UID'] . '.xml' )) { G::LoadClass( 'dbConnections' ); $_SESSION['PROCESS'] = $applicationFields['PRO_UID']; $dbConnections = new dbConnections( $_SESSION['PROCESS'] ); diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Project/ProcessPermissions.php b/workflow/engine/src/ProcessMaker/Services/Api/Project/ProcessPermissions.php index 77bf5e6e2..06280b067 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Project/ProcessPermissions.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Project/ProcessPermissions.php @@ -67,7 +67,7 @@ class ProcessPermissions extends Api * @param string $op_user_relation {@from body} {@choice 1,2} * @param string $op_case_status {@from body} {@choice ALL,DRAFT,TO_DO,PAUSED,COMPLETED} * @param string $op_participate {@from body} {@choice 0,1} - * @param string $op_obj_type {@from body} {@choice ANY,DYNAFORM,INPUT,OUTPUT,CASES_NOTES,MSGS_HISTORY} + * @param string $op_obj_type {@from body} {@choice ANY,DYNAFORM,INPUT,OUTPUT,CASES_NOTES,MSGS_HISTORY,SUMMARY_FORM} * @param string $op_action {@from body} {@choice VIEW,BLOCK,DELETE,RESEND} * @param string $tas_uid {@from body} * @param string $op_task_source {@from body} diff --git a/workflow/engine/templates/designer/index.html b/workflow/engine/templates/designer/index.html index 0df4bfed4..2ec0e90b5 100644 --- a/workflow/engine/templates/designer/index.html +++ b/workflow/engine/templates/designer/index.html @@ -21,6 +21,7 @@ var prj_uid = "{$prj_uid}"; var app_uid = "{$app_uid}"; var consolidated = "{$consolidated}"; + var enterprise = "{$enterprise}"; var prj_readonly = "{$prj_readonly}"; var credentials = "{$credentials}"; var distribution = "{$distribution}"; @@ -69,6 +70,7 @@ var prj_uid = "{$prj_uid}"; var app_uid = "{$app_uid}"; var consolidated = "{$consolidated}"; + var enterprise = "{$enterprise}"; var prj_readonly = "{$prj_readonly}"; var credentials = "{$credentials}"; var distribution = "{$distribution}"; From 55525cfc5c5b38ce434ed52f144a5a4e821d61e2 Mon Sep 17 00:00:00 2001 From: jonathan Date: Fri, 8 May 2015 15:44:05 -0400 Subject: [PATCH 4/5] pm2153 --- workflow/engine/methods/tracker/login.php | 18 +++-- workflow/engine/skinEngine/skinEngine.php | 6 +- workflow/engine/xmlform/tracker/loginpm3.html | 25 +++++++ workflow/engine/xmlform/tracker/loginpm3.xml | 69 +++++++++++++++++++ 4 files changed, 110 insertions(+), 8 deletions(-) create mode 100644 workflow/engine/xmlform/tracker/loginpm3.html create mode 100644 workflow/engine/xmlform/tracker/loginpm3.xml diff --git a/workflow/engine/methods/tracker/login.php b/workflow/engine/methods/tracker/login.php index d7d125635..4687b61be 100755 --- a/workflow/engine/methods/tracker/login.php +++ b/workflow/engine/methods/tracker/login.php @@ -22,16 +22,20 @@ * Coral Gables, FL, 33134, USA, or email info@colosa.com. */ -/* -* Login for authentication of Case Tracker -* -* @author Everth S. Berrios Morales -* +/* +* Login for authentication of Case Tracker +* +* @author Everth S. Berrios Morales +* */ $G_PUBLISH = new Publisher(); -//echo G::generateUniqueNumber(); -$G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'tracker/login', '', '', SYS_URI . 'tracker/authentication.php' ); +//echo G::generateUniqueNumber(); +if(SYS_SKIN == 'neoclassic'){ + $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'tracker/loginpm3', '', '', SYS_URI . 'tracker/authentication.php' ); +}else{ + $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'tracker/login', '', '', SYS_URI . 'tracker/authentication.php' ); +} G::RenderPage( "publish" ); session_destroy(); diff --git a/workflow/engine/skinEngine/skinEngine.php b/workflow/engine/skinEngine/skinEngine.php index 0468437f8..ea4907cf9 100755 --- a/workflow/engine/skinEngine/skinEngine.php +++ b/workflow/engine/skinEngine/skinEngine.php @@ -734,7 +734,11 @@ class SkinEngine $switch_interface = isset($_SESSION['user_experience']) && $_SESSION['user_experience'] == 'SWITCHABLE'; $smarty->assign('user_logged', (isset($_SESSION['USER_LOGGED'])? $_SESSION['USER_LOGGED'] : '')); - $smarty->assign('tracker', (SYS_COLLECTION == 'tracker') ? ( ($G_PUBLISH->Parts[0]['File'] != 'tracker/login' ) ? true : '') : ''); + if(SYS_SKIN == 'neoclassic'){ + $smarty->assign('tracker', (SYS_COLLECTION == 'tracker') ? ( ($G_PUBLISH->Parts[0]['File'] != 'tracker/loginpm3' ) ? true : '') : ''); + }else{ + $smarty->assign('tracker', (SYS_COLLECTION == 'tracker') ? ( ($G_PUBLISH->Parts[0]['File'] != 'tracker/login' ) ? true : '') : ''); + } $smarty->assign('switch_interface', $switch_interface); $smarty->assign('switch_interface_label', G::LoadTranslation('ID_SWITCH_INTERFACE')); $smarty->assign('rolename', isset($_SESSION['USR_ROLENAME']) ? $_SESSION['USR_ROLENAME'] . '' : ''); diff --git a/workflow/engine/xmlform/tracker/loginpm3.html b/workflow/engine/xmlform/tracker/loginpm3.html new file mode 100644 index 000000000..9808031de --- /dev/null +++ b/workflow/engine/xmlform/tracker/loginpm3.html @@ -0,0 +1,25 @@ + + + \ No newline at end of file diff --git a/workflow/engine/xmlform/tracker/loginpm3.xml b/workflow/engine/xmlform/tracker/loginpm3.xml new file mode 100644 index 000000000..a935d27dc --- /dev/null +++ b/workflow/engine/xmlform/tracker/loginpm3.xml @@ -0,0 +1,69 @@ + + + + <en><![CDATA[CASE TRACKER]]></en> + + + + + + + + + + + + From 10f742b044be13a514dfdbba651991856c6ec969 Mon Sep 17 00:00:00 2001 From: Marco Antonio Nina Mena Date: Fri, 8 May 2015 15:57:36 -0400 Subject: [PATCH 5/5] Improvement trigger report by user --- .../methods/setup/setupSchemas/triggerFillReportByUser.sql | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/workflow/engine/methods/setup/setupSchemas/triggerFillReportByUser.sql b/workflow/engine/methods/setup/setupSchemas/triggerFillReportByUser.sql index 12cadab2c..44305b1e9 100644 --- a/workflow/engine/methods/setup/setupSchemas/triggerFillReportByUser.sql +++ b/workflow/engine/methods/setup/setupSchemas/triggerFillReportByUser.sql @@ -41,8 +41,9 @@ SELECT FROM APP_CACHE_VIEW AS ACV WHERE - ACV.DEL_INIT_DATE BETWEEN CAST(@INIT_DATE AS DATETIME) AND CAST(@FINISH_DATE AS DATETIME) -GROUP BY ACV.USR_UID , ACV.TAS_UID , ACV.PRO_UID; + (ACV.DEL_INIT_DATE BETWEEN CAST(@INIT_DATE AS DATETIME) AND CAST(@FINISH_DATE AS DATETIME)) + AND ACV.DEL_INIT_DATE IS NOT NULL +GROUP BY ACV.USR_UID , ACV.TAS_UID, DATE_FORMAT( ACV.DEL_INIT_DATE, '%m' ) , DATE_FORMAT( ACV.DEL_INIT_DATE, '%Y' ) ; DELETE USR_REPORTING FROM USR_REPORTING