Merge remote-tracking branch 'upstream/3.1' into HOR-1087

This commit is contained in:
root
2016-06-07 10:32:00 -04:00
4 changed files with 83 additions and 18 deletions

View File

@@ -257,8 +257,8 @@ class ListInbox extends BaseListInbox
$criteria = new Criteria();
$criteria->addSelectColumn(ContentPeer::CON_VALUE);
$criteria->add( ContentPeer::CON_ID, $data['APP_UID'], Criteria::EQUAL );
$criteria->add( ContentPeer::CON_CATEGORY, 'APP_TITLE', Criteria::EQUAL );
$criteria->add( ContentPeer::CON_ID, $data['TAS_UID'], Criteria::EQUAL );
$criteria->add( ContentPeer::CON_CATEGORY, 'TAS_DEF_TITLE', Criteria::EQUAL );
$criteria->add( ContentPeer::CON_LANG, SYS_LANG, Criteria::EQUAL );
$dataset = ContentPeer::doSelectRS($criteria);
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);

View File

@@ -16,23 +16,23 @@ if (!isset($_SESSION['USER_LOGGED'])) {
try {
$userUid = $_SESSION['USER_LOGGED'];
$filters['paged'] = isset( $_REQUEST["paged"] ) ? $_REQUEST["paged"] : true;
$filters['count'] = isset( $_REQUEST['count'] ) ? $_REQUEST['count'] : true;
$filters['category'] = isset( $_REQUEST["category"] ) ? $_REQUEST["category"] : "";
$filters['process'] = isset( $_REQUEST["process"] ) ? $_REQUEST["process"] : "";
$filters['search'] = isset( $_REQUEST["search"] ) ? $_REQUEST["search"] : "";
$filters['filter'] = isset( $_REQUEST["filter"] ) ? $_REQUEST["filter"] : "";
$filters['paged'] = isset( $_REQUEST["paged"] ) ? $filter->sanitizeInputValue($_REQUEST["paged"], 'nosql') : true;
$filters['count'] = isset( $_REQUEST['count'] ) ? $filter->sanitizeInputValue($_REQUEST["count"], 'nosql') : true;
$filters['category'] = isset( $_REQUEST["category"] ) ? $filter->sanitizeInputValue($_REQUEST["category"], 'nosql') : "";
$filters['process'] = isset( $_REQUEST["process"] ) ? $filter->sanitizeInputValue($_REQUEST["process"], 'nosql') : "";
$filters['search'] = isset( $_REQUEST["search"] ) ? $filter->sanitizeInputValue($_REQUEST["search"], 'nosql') : "";
$filters['filter'] = isset( $_REQUEST["filter"] ) ? $filter->sanitizeInputValue($_REQUEST["filter"], 'nosql') : "";
$filters['dateFrom'] = (!empty( $_REQUEST["dateFrom"] )) ? substr( $_REQUEST["dateFrom"], 0, 10 ) : "";
$filters['dateTo'] = (!empty( $_REQUEST["dateTo"] )) ? substr( $_REQUEST["dateTo"], 0, 10 ) : "";
$filters['start'] = isset( $_REQUEST["start"] ) ? $_REQUEST["start"] : "0";
$filters['limit'] = isset( $_REQUEST["limit"] ) ? $_REQUEST["limit"] : "25";
$filters['sort'] = (isset($_REQUEST['sort']))? (($_REQUEST['sort'] == 'APP_STATUS_LABEL')? 'APP_STATUS' : $_REQUEST['sort']) : '';
$filters['dir'] = isset( $_REQUEST["dir"] ) ? $_REQUEST["dir"] : "DESC";
$filters['start'] = isset( $_REQUEST["start"] ) ? $filter->sanitizeInputValue($_REQUEST["start"], 'nosql') : "0";
$filters['limit'] = isset( $_REQUEST["limit"] ) ? $filter->sanitizeInputValue($_REQUEST["limit"], 'nosql') : "25";
$filters['sort'] = (isset($_REQUEST['sort']))? (($_REQUEST['sort'] == 'APP_STATUS_LABEL')? 'APP_STATUS' : $filter->sanitizeInputValue($_REQUEST["sort"], 'nosql')) : '';
$filters['dir'] = isset( $_REQUEST["dir"] ) ? $filter->sanitizeInputValue($_REQUEST["dir"], 'nosql') : "DESC";
$filters['action'] = isset( $_REQUEST["action"] ) ? $_REQUEST["action"] : "";
$listName = isset( $_REQUEST["list"] ) ? $_REQUEST["list"] : "inbox";
$filters['filterStatus'] = isset( $_REQUEST["filterStatus"] ) ? $_REQUEST["filterStatus"] : "";
$filters['action'] = isset( $_REQUEST["action"] ) ? $filter->sanitizeInputValue($_REQUEST["action"], 'nosql') : "";
$listName = isset( $_REQUEST["list"] ) ? $filter->sanitizeInputValue($_REQUEST["list"], 'nosql') : "inbox";
$filters['filterStatus'] = isset( $_REQUEST["filterStatus"] ) ? $filter->sanitizeInputValue($_REQUEST["filterStatus"], 'nosql') : "";
// Select list
switch ($listName) {

View File

@@ -32,6 +32,8 @@
$function = isset( $_POST['function'] ) ? $_POST['function'] : '';
$infoProcess = new Process();
$resultProcessOld = $infoProcess->load($_POST['form']['PRO_UID']);
unset($resultProcessOld['PRO_DYNAFORMS']);
switch ($function) {
case 'lookForNameProcess':
require_once 'classes/model/Content.php';
@@ -93,8 +95,10 @@ switch ($function) {
break;
}
$resultProcessNew = $infoProcess->load($_POST['form']['PRO_UID']);
$oldFields = array_diff_assoc($resultProcessOld,$resultProcessNew);
unset($resultProcessNew['PRO_DYNAFORMS']);
$newFields = array_diff_assoc($resultProcessNew,$resultProcessOld);
$fields = array();
@@ -114,7 +118,7 @@ if(array_key_exists('PRO_SUMMARY_DYNAFORM', $newFields)) {
$fields[] = "Dynaform to show a case summary";
}
if(array_key_exists('PRO_DERIVATION_SCREEN_TPL', $newFields)) {
$fields[] = "Routing Screen Template";
$fields[] = "Routing Screen Template";
}
if(array_key_exists('PRO_DEBUG', $newFields)) {
$fields[] = G::LoadTranslation('ID_PRO_DEBUG');
@@ -147,7 +151,7 @@ G::auditLog('EditProcess','Edit fields ('.implode(', ',$fields).') in process "'
if(isset($_POST['form']['PRO_UID']) && !empty($_POST['form']['PRO_UID'])) {
$valuesProcess['PRO_UID'] = $_POST['form']['PRO_UID'];
$valuesProcess['PRO_UPDATE_DATE'] = date("Y-m-d H:i:s");
$valuesProcess['PRO_UPDATE_DATE'] = date("Y-m-d H:i:s");
G::LoadClass('processes');
$infoProcess = new Processes();
$resultProcess = $infoProcess->updateProcessRow($valuesProcess);

View File

@@ -1612,4 +1612,65 @@ class Light extends Api
}
return $response;
}
/**
* Get next step
*
* @url POST /get-next-step/:app_uid
* @return array
*/
public function doGetStep($app_uid, $request_data)
{
$pro_uid = $request_data["pro_uid"];
$act_uid = $request_data["act_uid"];
$step_uid = $request_data["step_uid"];
$step_pos = $request_data["step_pos"];
$app_index = $request_data["app_index"];
$dyn_uid = isset($request_data["dyn_uid"]) ? $request_data["dyn_uid"] : null;
$usr_uid = $this->getUserId();
$response = [];
//trigger before
$oMobile = new \ProcessMaker\BusinessModel\Light();
$triggers = $oMobile->doExecuteTriggerCase($usr_uid, $pro_uid, $act_uid, $app_uid, $step_uid, "before");
if ($triggers["status"] === "ok") {
$triggers["status"] = "200";
}
$response["triggers"] = $triggers;
//conditionalSteps
$oCase = new \Cases();
$oAppDelegate = new \AppDelegation();
$alreadyRouted = $oAppDelegate->alreadyRouted($app_uid, $app_index);
if ($alreadyRouted) {
throw (new RestException(Api::STAT_APP_EXCEPTION, G::LoadTranslation('ID_CASE_DELEGATION_ALREADY_CLOSED')));
}
$_SESSION["APPLICATION"] = $app_uid;
$_SESSION["PROCESS"] = $pro_uid;
$_SESSION["INDEX"] = $app_index;
$_SESSION["USER_LOGGED"] = $usr_uid;
do {
$conditionalSteps = $oCase->getNextStep($pro_uid, $app_uid, $app_index, $step_pos);
if (is_array($conditionalSteps) && (
$conditionalSteps["TYPE"] === "DYNAFORM" ||
$conditionalSteps["TYPE"] === "DERIVATION")
) {
break;
} else {
$step_pos = $step_pos + 1;
}
} while ($conditionalSteps !== false);
$response["conditionalSteps"] = $conditionalSteps;
//variables
$cases = new \ProcessMaker\BusinessModel\Cases();
$variables = $cases->getCaseVariables($app_uid, $usr_uid, $dyn_uid);
$variables = DateTime::convertUtcToTimeZone($variables);
$response["variables"] = $variables;
return $response;
}
}