mirror of
https://github.com/VTECRM/vtenext.git
synced 2026-02-26 16:18:47 +00:00
74 lines
2.1 KiB
PHP
74 lines
2.1 KiB
PHP
<?php
|
|
/*************************************
|
|
* SPDX-FileCopyrightText: 2009-2020 Vtenext S.r.l. <info@vtenext.com>
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
************************************/
|
|
/* crmv@155145 crmv@173271 */
|
|
|
|
global $adb,$table_prefix;
|
|
|
|
$ruleid = intval($_REQUEST['ruleid']);
|
|
$total_conditions = intval($_REQUEST['total_conditions']);
|
|
$module_name = $_REQUEST['module_name'];
|
|
$condName = $_REQUEST['workflow_name'];
|
|
$condRoles = $_REQUEST['role_grp_check'];
|
|
|
|
$conditionals = CRMEntity::getInstance('Conditionals');
|
|
|
|
// build conditional object
|
|
$cond = array(
|
|
'name' => $condName,
|
|
'module' => $module_name,
|
|
'roles' => $condRoles,
|
|
'conditions' => array(),
|
|
'fields' => array(),
|
|
);
|
|
|
|
// get conditions
|
|
if ($total_conditions > 0) {
|
|
for ($j=0; $j<$total_conditions; $j++) {
|
|
if ($_REQUEST["deleted".$j] == 1) continue;
|
|
$cond['conditions'][] = array(
|
|
'fieldname' => $_REQUEST['field'.$j],
|
|
'criteria' => $_REQUEST['criteria_id'.$j],
|
|
'value' => $_REQUEST['field_value'.$j],
|
|
);
|
|
}
|
|
}
|
|
|
|
// get fields
|
|
$query =
|
|
"SELECT fieldname
|
|
FROM {$table_prefix}_field f
|
|
INNER JOIN {$table_prefix}_tab t ON t.tabid = f.tabid
|
|
WHERE t.name = ?";
|
|
$result = $adb->pquery($query, array($module_name));
|
|
if ($result && $adb->num_rows($result) > 0) {
|
|
while ($row = $adb->fetchByAssoc($result, -1, false)) {
|
|
$fieldname = $row['fieldname'];
|
|
if (array_key_exists("FpovManaged".$fieldname,$_REQUEST)) {
|
|
$cond['fields'][$fieldname] = array(
|
|
'read' => ($_REQUEST['FpovReadPermission'.$fieldname] == "1"),
|
|
'write' => ($_REQUEST['FpovWritePermission'.$fieldname] == "1"),
|
|
'mandatory' => ($_REQUEST['FpovMandatoryPermission'.$fieldname] == "1"),
|
|
);
|
|
}
|
|
}
|
|
}
|
|
|
|
$ruleid = $conditionals->saveConditional($ruleid, $cond);
|
|
|
|
// crmv@77249
|
|
if ($_REQUEST['included'] == true) {
|
|
$params = array(
|
|
'included' => 'true',
|
|
'skip_vte_header' => 'true',
|
|
'skip_footer' => 'true',
|
|
'formodule' => $_REQUEST['formodule'],
|
|
'statusfield' => $_REQUEST['statusfield'],
|
|
);
|
|
$otherParams = "&".http_build_query($params);
|
|
}
|
|
// crmv@77249e
|
|
|
|
header("Location: index.php?module=Conditionals&action=index&parenttab=Settings".$otherParams); |