Merged in darojas/processmaker (pull request #202)
Se adicionan validaciones a PMUSER. Se modifica download y upload (incompleto) para FILESMANAGER
This commit is contained in:
@@ -391,18 +391,12 @@ class FilesManager
|
||||
$sDirectory = PATH_DATA_MAILTEMPLATES . $sProcessUID . PATH_SEP . $sfile;
|
||||
break;
|
||||
}
|
||||
$arrayTaskUid = $this->getFileManagerUid($sDirectory);
|
||||
if (!$arrayTaskUid) {
|
||||
throw (new \Exception( 'invalid value specified for `path`.'));
|
||||
}
|
||||
/*
|
||||
This is usefull when you are downloading big files, as it
|
||||
will prevent time out of the script :
|
||||
*/
|
||||
$url = $sDirectory;
|
||||
$sPath = $sfile;//path to
|
||||
set_time_limit(0);
|
||||
ini_set('display_errors',true);//Just in case we get some errors, let us know....
|
||||
$fp = fopen ($sDirectory, 'w+');//This is the file where we save the information
|
||||
$ch = curl_init($sDirectory);//Here is the file we are downloading
|
||||
ini_set('display_errors',true);//Just in case we get some errors, let us know
|
||||
$fp = fopen ($sPath, 'w');//This is the file where we save the information
|
||||
$ch = curl_init(str_replace(" ","%20",$url));
|
||||
curl_setopt($ch, CURLOPT_TIMEOUT, 50);
|
||||
curl_setopt($ch, CURLOPT_FILE, $fp);
|
||||
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
|
||||
|
||||
@@ -50,6 +50,7 @@ class ProcessSupervisor
|
||||
$oCriteria->addJoin(\ProcessUserPeer::USR_UID, \UsersPeer::USR_UID, \Criteria::LEFT_JOIN);
|
||||
$oCriteria->add(\ProcessUserPeer::PU_TYPE, 'SUPERVISOR');
|
||||
$oCriteria->add(\ProcessUserPeer::PRO_UID, $sProcessUID);
|
||||
$oCriteria->add(\UsersPeer::USR_STATUS, 'ACTIVE');
|
||||
$oCriteria->addAscendingOrderByColumn(\UsersPeer::USR_FIRSTNAME);
|
||||
$oDataset = \ProcessUserPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
@@ -61,7 +62,7 @@ class ProcessSupervisor
|
||||
'usr_firstname' => $aRow['USR_FIRSTNAME'],
|
||||
'usr_lastname' => $aRow['USR_LASTNAME'],
|
||||
'usr_username' => $aRow['USR_USERNAME'],
|
||||
'usr_email' => $aRow['USR_EMAIL'] );
|
||||
'usr_email' => $aRow['USR_EMAIL']);
|
||||
$oDataset->next();
|
||||
}
|
||||
if ($aResp == null) {
|
||||
@@ -218,6 +219,7 @@ class ProcessSupervisor
|
||||
$oCriteria->add(\UsersPeer::USR_UID, $aUIDS, \Criteria::IN);
|
||||
$oCriteria->addAscendingOrderByColumn(\UsersPeer::USR_FIRSTNAME);
|
||||
$oCriteria->add(\UsersPeer::USR_ROLE, 'PROCESSMAKER_ADMIN', \Criteria::EQUAL);
|
||||
$oCriteria->add(\UsersPeer::USR_STATUS, 'ACTIVE');
|
||||
$oDataset = \UsersPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
$oDataset->next();
|
||||
|
||||
@@ -211,6 +211,36 @@ class User
|
||||
require_once (PATH_TRUNK . "workflow" . PATH_SEP . "engine" . PATH_SEP . "classes" . PATH_SEP . "model" . PATH_SEP . "Users.php");
|
||||
$arrayData = array_change_key_case($arrayData, CASE_UPPER);
|
||||
$form = $arrayData;
|
||||
if ($form['USR_REPLACED_BY'] != '') {
|
||||
$oReplacedBy = \UsersPeer::retrieveByPK($form['USR_REPLACED_BY']);
|
||||
if (is_null($oReplacedBy)) {
|
||||
throw new \Exception('`usr_replaced_by`:'.$form['USR_REPLACED_BY'].' '.\G::LoadTranslation('ID_AUTHENTICATION_SOURCE_INVALID'));
|
||||
}
|
||||
}
|
||||
if ($form['USR_COUNTRY'] != '') {
|
||||
$oCountry = \IsoCountryPeer::retrieveByPK($form['USR_COUNTRY']);
|
||||
if (is_null($oCountry)) {
|
||||
throw new \Exception('invalid value for `usr_country`: '.$form['USR_COUNTRY']);
|
||||
}
|
||||
}
|
||||
if ($form['USR_CITY'] != '') {
|
||||
$oCity = \IsoSubdivisionPeer::retrieveByPK($form['USR_COUNTRY'], $form['USR_CITY']);
|
||||
if (is_null($oCity)) {
|
||||
throw new \Exception('invalid value for `usr_city`: '.$form['USR_CITY']);
|
||||
}
|
||||
}
|
||||
if ($form['USR_LOCATION'] != '') {
|
||||
$oLocation = \IsoLocationPeer::retrieveByPK($form['USR_COUNTRY'], $form['USR_LOCATION']);
|
||||
if (is_null($oLocation)) {
|
||||
throw new \Exception('invalid value for `usr_location`: '.$form['USR_LOCATION']);
|
||||
}
|
||||
}
|
||||
if ($form['USR_COUNTRY'] != '') {
|
||||
$oReplacedBy = \IsoCountryPeer::retrieveByPK($form['USR_COUNTRY']);
|
||||
if (is_null($oReplacedBy)) {
|
||||
throw new \Exception('invalid value for `usr_country`: '.$form['USR_COUNTRY']);
|
||||
}
|
||||
}
|
||||
if (isset($arrayData['USR_UID'])) {
|
||||
$form['USR_UID'] = $arrayData['USR_UID'];
|
||||
} else {
|
||||
@@ -255,10 +285,14 @@ class User
|
||||
} else {
|
||||
$aData['USR_LASTNAME'] = $form['USR_LASTNAME'];
|
||||
}
|
||||
if (!filter_var($form['USR_EMAIL'], FILTER_VALIDATE_EMAIL)) {
|
||||
throw new \Exception('`usr_email`. '.\G::LoadTranslation('ID_INCORRECT_EMAIL'));
|
||||
if ($form['USR_EMAIL'] == '') {
|
||||
throw new \Exception('invalid value specified for `usr_email`, can`t be null.');
|
||||
} else {
|
||||
$aData['USR_EMAIL'] = $form['USR_EMAIL'];
|
||||
if (!filter_var($form['USR_EMAIL'], FILTER_VALIDATE_EMAIL)) {
|
||||
throw new \Exception('`usr_email`. '.\G::LoadTranslation('ID_INCORRECT_EMAIL'));
|
||||
} else {
|
||||
$aData['USR_EMAIL'] = $form['USR_EMAIL'];
|
||||
}
|
||||
}
|
||||
if ($form['USR_DUE_DATE'] == '') {
|
||||
throw new \Exception('`usr_due_date`. '.\G::LoadTranslation('ID_MSG_ERROR_DUE_DATE'));
|
||||
@@ -279,25 +313,29 @@ class User
|
||||
$aData['USR_BIRTHDAY'] = date('Y-m-d');
|
||||
$aData['USR_AUTH_USER_DN'] = $form['USR_AUTH_USER_DN'];
|
||||
$statusWF = $form['USR_STATUS'];
|
||||
if ($form['USR_STATUS'] == '') {
|
||||
throw new \Exception('`usr_status`. '.\G::LoadTranslation('ID_SOME_FIELDS_REQUIRED'));
|
||||
if ($form['USR_STATUS'] == '') {
|
||||
throw new \Exception('invalid value specified for `usr_status`, can`t be null');
|
||||
} else {
|
||||
if ($form['USR_STATUS'] == 'ACTIVE' || $form['USR_STATUS'] == 'INACTIVE' || $form['USR_STATUS'] == 'VACATION') {
|
||||
$aData['USR_STATUS'] = $form['USR_STATUS'];
|
||||
} else {
|
||||
throw new \Exception('`usr_status`. Invalid value for field.');
|
||||
throw new \Exception('`usr_status`. Invalid value for status field.');
|
||||
}
|
||||
}
|
||||
$oCriteria = new \Criteria('rbac');
|
||||
$oCriteria->add(\RolesPeer::ROL_CODE, $form['USR_ROLE']);
|
||||
$oDataset = \RolesPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
$oDataset->next();
|
||||
$aRow = $oDataset->getRow();
|
||||
if ($oDataset->getRow()) {
|
||||
$aData['USR_ROLE'] = $form['USR_ROLE'];
|
||||
if ($form['USR_ROLE'] == '') {
|
||||
throw new \Exception('invalid value specified for `usr_role`, can`t be null');
|
||||
} else {
|
||||
throw new \Exception('`usr_role`. Invalid value for field.');
|
||||
$oCriteria = new \Criteria('rbac');
|
||||
$oCriteria->add(\RolesPeer::ROL_CODE, $form['USR_ROLE']);
|
||||
$oDataset = \RolesPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
$oDataset->next();
|
||||
$aRow = $oDataset->getRow();
|
||||
if ($oDataset->getRow()) {
|
||||
$aData['USR_ROLE'] = $form['USR_ROLE'];
|
||||
} else {
|
||||
throw new \Exception('`usr_role`. Invalid value for role field.');
|
||||
}
|
||||
}
|
||||
try {
|
||||
if ($aData['USR_STATUS'] == 'ACTIVE') {
|
||||
@@ -308,7 +346,7 @@ class User
|
||||
}
|
||||
$sUserUID = $this->createUser($aData);
|
||||
if ($form['USR_ROLE'] != '') {
|
||||
$this->assignRoleToUser($sUserUID, $form['USR_ROLE']);
|
||||
$this->assignRoleToUser($sUserUID, $form['USR_ROLE']);
|
||||
}
|
||||
} catch(Exception $oError) {
|
||||
throw new \Exception($oError->getMessage());
|
||||
@@ -367,7 +405,7 @@ class User
|
||||
$form = $arrayData;
|
||||
$countPermission = 0;
|
||||
$permission = $this->loadUserRolePermission($RBAC->sSystem, $usrLoggedUid);
|
||||
foreach($permission as $key => $value) {
|
||||
foreach ($permission as $key => $value) {
|
||||
if ($value["PER_CODE"] == 'PM_USERS') {
|
||||
$countPermission+=1;
|
||||
}
|
||||
@@ -386,12 +424,6 @@ class User
|
||||
if ($form['USR_NEW_PASS'] != '') {
|
||||
$form['USR_PASSWORD'] = md5($form['USR_NEW_PASS']);
|
||||
}
|
||||
if (!isset($form['USR_CITY'])) {
|
||||
$form['USR_CITY'] = '';
|
||||
}
|
||||
if (!isset($form['USR_LOCATION'])) {
|
||||
$form['USR_LOCATION'] = '';
|
||||
}
|
||||
if (!isset($form['USR_AUTH_USER_DN'])) {
|
||||
$form['USR_AUTH_USER_DN'] = '';
|
||||
}
|
||||
@@ -520,9 +552,32 @@ class User
|
||||
} else {
|
||||
$this->updateUser($aData);
|
||||
}
|
||||
$aData['USR_COUNTRY'] = $form['USR_COUNTRY'];
|
||||
$aData['USR_CITY'] = $form['USR_CITY'];
|
||||
$aData['USR_LOCATION'] = $form['USR_LOCATION'];
|
||||
if ($form['USR_COUNTRY'] != '') {
|
||||
$oReplacedBy = \IsoCountryPeer::retrieveByPK($form['USR_COUNTRY']);
|
||||
if (is_null($oReplacedBy)) {
|
||||
throw new \Exception('invalid value for `usr_country`: '.$form['USR_COUNTRY']);
|
||||
} else {
|
||||
$aData['USR_COUNTRY'] = $form['USR_COUNTRY'];
|
||||
$aData['USR_CITY'] = '';
|
||||
$aData['USR_LOCATION'] = '';
|
||||
}
|
||||
}
|
||||
if ($form['USR_CITY'] != '') {
|
||||
$oCity = \IsoSubdivisionPeer::retrieveByPK($form['USR_COUNTRY'], $form['USR_CITY']);
|
||||
if (is_null($oCity)) {
|
||||
throw new \Exception('invalid value for `usr_city`: '.$form['USR_CITY']);
|
||||
} else {
|
||||
$aData['USR_CITY'] = $form['USR_CITY'];
|
||||
}
|
||||
}
|
||||
if ($form['USR_LOCATION'] != '') {
|
||||
$oLocation = \IsoLocationPeer::retrieveByPK($form['USR_COUNTRY'], $form['USR_LOCATION']);
|
||||
if (is_null($oLocation)) {
|
||||
throw new \Exception('invalid value for `usr_location`: '.$form['USR_LOCATION']);
|
||||
} else {
|
||||
$aData['USR_LOCATION'] = $form['USR_LOCATION'];
|
||||
}
|
||||
}
|
||||
$aData['USR_ADDRESS'] = $form['USR_ADDRESS'];
|
||||
$aData['USR_PHONE'] = $form['USR_PHONE'];
|
||||
$aData['USR_ZIP_CODE'] = $form['USR_ZIP_CODE'];
|
||||
@@ -530,8 +585,13 @@ class User
|
||||
if ($form['USR_ROLE'] != '') {
|
||||
$aData['USR_ROLE'] = $form['USR_ROLE'];
|
||||
}
|
||||
if (isset($form['USR_REPLACED_BY'])) {
|
||||
$aData['USR_REPLACED_BY'] = $form['USR_REPLACED_BY'];
|
||||
if ($form['USR_REPLACED_BY'] != '') {
|
||||
$oReplacedBy = \UsersPeer::retrieveByPK($form['USR_REPLACED_BY']);
|
||||
if (is_null($oReplacedBy)) {
|
||||
throw new \Exception('`usr_replaced_by`:'.$form['USR_REPLACED_BY'].' '.\G::LoadTranslation('ID_AUTHENTICATION_SOURCE_INVALID'));
|
||||
} else {
|
||||
$aData['USR_REPLACED_BY'] = $form['USR_REPLACED_BY'];
|
||||
}
|
||||
}
|
||||
if (isset($form['USR_AUTH_USER_DN'])) {
|
||||
$aData['USR_AUTH_USER_DN'] = $form['USR_AUTH_USER_DN'];
|
||||
@@ -674,6 +734,7 @@ class User
|
||||
}
|
||||
}
|
||||
}
|
||||
$oCriteria->add(\UsersPeer::USR_STATUS, 'CLOSED', \Criteria::ALT_NOT_EQUAL);
|
||||
$oDataset = \UsersPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
while ($oDataset->next()) {
|
||||
@@ -710,6 +771,7 @@ class User
|
||||
$oCriteria->add( $oCriteria->getNewCriterion( \UsersPeer::USR_USERNAME, "%$filter%", \Criteria::LIKE )->addOr( $oCriteria->getNewCriterion( \UsersPeer::USR_FIRSTNAME, "%$filter%", \Criteria::LIKE ) )->addOr( $oCriteria->getNewCriterion( \UsersPeer::USR_LASTNAME, "%$filter%", \Criteria::LIKE ) ) );
|
||||
}
|
||||
$oCriteria->add(\UsersPeer::USR_UID, $userUid);
|
||||
$oCriteria->add(\UsersPeer::USR_STATUS, 'CLOSED', \Criteria::ALT_NOT_EQUAL);
|
||||
$oDataset = \UsersPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
while ($oDataset->next()) {
|
||||
|
||||
@@ -67,10 +67,8 @@ class FilesManager extends Api
|
||||
public function doPostProcessFilesManagerUpload($prjUid)
|
||||
{
|
||||
try {
|
||||
//echo $request_data; die();
|
||||
require_once (PATH_TRUNK . "workflow" . PATH_SEP . "engine" . PATH_SEP . "src" . PATH_SEP . "Extension" . PATH_SEP . "Restler" . PATH_SEP . "UploadFormat.php");
|
||||
$userUid = $this->getUserId();
|
||||
$filesManager = new \BusinessModel\FilesManager();
|
||||
$arrayData = $filesManager->uploadProcessFilesManager($prjUid, $userUid);
|
||||
//Response
|
||||
$response = $arrayData;
|
||||
} catch (\Exception $e) {
|
||||
|
||||
@@ -13,6 +13,9 @@ class User extends Api
|
||||
{
|
||||
/**
|
||||
* @url GET
|
||||
* @param string $filter
|
||||
* @param int $start
|
||||
* @param int $limit
|
||||
*/
|
||||
public function doGetUsers($filter = '', $start = null, $limit = null)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user