Descripcion: El problema ocurria en el Ajax task_Ajax.php en donde existe una validacion que si no se le manda el parametro TAS_ASSIGN_TYPE lo setea por default a BALANCED. La solucion fue que ademas de la anterior validacion se verifique que si no se le mando el parametro se revise si anteriormente ya se le habia asignado algun valor, en caso que si se le coloca tan valor y en caso de que no se le coloca el valor por default (BALANCED)
100 lines
3.3 KiB
PHP
Executable File
100 lines
3.3 KiB
PHP
Executable File
<?php
|
|
try {
|
|
global $RBAC;
|
|
|
|
switch ($RBAC->userCanAccess( 'PM_FACTORY' )) {
|
|
case - 2:
|
|
G::SendTemporalMessage( 'ID_USER_HAVENT_RIGHTS_SYSTEM', 'error', 'labels' );
|
|
G::header( 'location: ../login/login' );
|
|
die();
|
|
break;
|
|
case - 1:
|
|
G::SendTemporalMessage( 'ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels' );
|
|
G::header( 'location: ../login/login' );
|
|
die();
|
|
break;
|
|
}
|
|
|
|
//$oJSON = new Services_JSON();
|
|
$aData = get_object_vars( G::json_decode( $_POST['oData'] ));
|
|
//$aData = get_object_vars( $oJSON->decode( $_POST['oData'] ) );
|
|
|
|
if (isset( $_POST['function'] )) {
|
|
$sAction = $_POST['function'];
|
|
} else {
|
|
$sAction = $_POST['functions'];
|
|
}
|
|
|
|
switch ($sAction) {
|
|
case "saveTaskData":
|
|
require_once ("classes/model/Task.php");
|
|
|
|
$response = array ();
|
|
|
|
$oTask = new Task();
|
|
|
|
/**
|
|
* routine to replace @amp@ by &
|
|
* that why the char "&" can't be passed by XmlHttpRequest directly
|
|
* @autor erik <erik@colosa.com>
|
|
*/
|
|
|
|
foreach ($aData as $k => $v) {
|
|
$aData[$k] = str_replace( '@amp@', '&', $v );
|
|
}
|
|
|
|
if (isset( $aData['SEND_EMAIL'] )) {
|
|
$aData['TAS_SEND_LAST_EMAIL'] = $aData['SEND_EMAIL'] == 'TRUE' ? 'TRUE' : 'FALSE';
|
|
} else {
|
|
$aData['TAS_SEND_LAST_EMAIL'] = 'FALSE';
|
|
}
|
|
|
|
//Additional configuration
|
|
if (isset( $aData['TAS_DEF_MESSAGE_TYPE'] ) && isset( $aData['TAS_DEF_MESSAGE_TEMPLATE'] )) {
|
|
G::LoadClass( 'configuration' );
|
|
|
|
$oConf = new Configurations();
|
|
$oConf->aConfig = array ('TAS_DEF_MESSAGE_TYPE' => $aData['TAS_DEF_MESSAGE_TYPE'],'TAS_DEF_MESSAGE_TEMPLATE' => $aData['TAS_DEF_MESSAGE_TEMPLATE']
|
|
);
|
|
|
|
$oConf->saveConfig( 'TAS_EXTRA_PROPERTIES', $aData['TAS_UID'], '', '' );
|
|
|
|
unset( $aData['TAS_DEF_MESSAGE_TYPE'] );
|
|
unset( $aData['TAS_DEF_MESSAGE_TEMPLATE'] );
|
|
}
|
|
|
|
//Validating TAS_ASSIGN_VARIABLE value
|
|
|
|
if (!isset($aData['TAS_ASSIGN_TYPE'])) {
|
|
$derivate_type = $oTask->kgetassigType($_SESSION['PROCESS'],$aData['TAS_UID']);
|
|
if(is_null($derivate_type)){
|
|
$aData['TAS_ASSIGN_TYPE'] = 'BALANCED';
|
|
}else{
|
|
$aData['TAS_ASSIGN_TYPE'] = $derivate_type['TAS_ASSIGN_TYPE'];
|
|
}
|
|
}
|
|
if ($aData['TAS_ASSIGN_TYPE'] == 'SELF_SERVICE_EVALUATE') {
|
|
$aData['TAS_ASSIGN_TYPE'] = 'SELF_SERVICE';
|
|
if(trim($aData['TAS_GROUP_VARIABLE']) == '') {
|
|
$aData['TAS_GROUP_VARIABLE'] = '@@SYS_GROUP_TO_BE_ASSIGNED';
|
|
}
|
|
} else {
|
|
$aData['TAS_GROUP_VARIABLE'] = '';
|
|
}
|
|
|
|
$result = $oTask->update( $aData );
|
|
|
|
$response["status"] = "OK";
|
|
|
|
if ($result == 3) {
|
|
$response["status"] = "CRONCL";
|
|
}
|
|
|
|
echo G::json_encode( $response );
|
|
break;
|
|
}
|
|
} catch (Exception $oException) {
|
|
die( $oException->getMessage() );
|
|
}
|
|
|