Se adicionan validaciones a PMUSER
This commit is contained in:
@@ -207,10 +207,16 @@ class User
|
|||||||
public function create($arrayData)
|
public function create($arrayData)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
global $RBAC;
|
global $RBAC;
|
||||||
require_once (PATH_TRUNK . "workflow" . PATH_SEP . "engine" . PATH_SEP . "classes" . PATH_SEP . "model" . PATH_SEP . "Users.php");
|
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);
|
$arrayData = array_change_key_case($arrayData, CASE_UPPER);
|
||||||
$form = $arrayData;
|
$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 (isset($arrayData['USR_UID'])) {
|
if (isset($arrayData['USR_UID'])) {
|
||||||
$form['USR_UID'] = $arrayData['USR_UID'];
|
$form['USR_UID'] = $arrayData['USR_UID'];
|
||||||
} else {
|
} else {
|
||||||
@@ -255,10 +261,14 @@ class User
|
|||||||
} else {
|
} else {
|
||||||
$aData['USR_LASTNAME'] = $form['USR_LASTNAME'];
|
$aData['USR_LASTNAME'] = $form['USR_LASTNAME'];
|
||||||
}
|
}
|
||||||
if (!filter_var($form['USR_EMAIL'], FILTER_VALIDATE_EMAIL)) {
|
if ($form['USR_EMAIL'] == '') {
|
||||||
throw new \Exception('`usr_email`. '.\G::LoadTranslation('ID_INCORRECT_EMAIL'));
|
throw new \Exception('`usr_email`. E-mail is required');
|
||||||
} else {
|
} 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'] == '') {
|
if ($form['USR_DUE_DATE'] == '') {
|
||||||
throw new \Exception('`usr_due_date`. '.\G::LoadTranslation('ID_MSG_ERROR_DUE_DATE'));
|
throw new \Exception('`usr_due_date`. '.\G::LoadTranslation('ID_MSG_ERROR_DUE_DATE'));
|
||||||
@@ -280,24 +290,28 @@ class User
|
|||||||
$aData['USR_AUTH_USER_DN'] = $form['USR_AUTH_USER_DN'];
|
$aData['USR_AUTH_USER_DN'] = $form['USR_AUTH_USER_DN'];
|
||||||
$statusWF = $form['USR_STATUS'];
|
$statusWF = $form['USR_STATUS'];
|
||||||
if ($form['USR_STATUS'] == '') {
|
if ($form['USR_STATUS'] == '') {
|
||||||
throw new \Exception('`usr_status`. '.\G::LoadTranslation('ID_SOME_FIELDS_REQUIRED'));
|
throw new \Exception('`usr_status`. User status is required');
|
||||||
} else {
|
} else {
|
||||||
if ($form['USR_STATUS'] == 'ACTIVE' || $form['USR_STATUS'] == 'INACTIVE' || $form['USR_STATUS'] == 'VACATION') {
|
if ($form['USR_STATUS'] == 'ACTIVE' || $form['USR_STATUS'] == 'INACTIVE' || $form['USR_STATUS'] == 'VACATION') {
|
||||||
$aData['USR_STATUS'] = $form['USR_STATUS'];
|
$aData['USR_STATUS'] = $form['USR_STATUS'];
|
||||||
} else {
|
} else {
|
||||||
throw new \Exception('`usr_status`. Invalid value for field.');
|
throw new \Exception('`usr_status`. Invalid value for status field.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$oCriteria = new \Criteria('rbac');
|
if ($form['USR_ROLE'] == '') {
|
||||||
$oCriteria->add(\RolesPeer::ROL_CODE, $form['USR_ROLE']);
|
throw new \Exception('`usr_role`. User role is required');
|
||||||
$oDataset = \RolesPeer::doSelectRS($oCriteria);
|
|
||||||
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
|
||||||
$oDataset->next();
|
|
||||||
$aRow = $oDataset->getRow();
|
|
||||||
if ($oDataset->getRow()) {
|
|
||||||
$aData['USR_ROLE'] = $form['USR_ROLE'];
|
|
||||||
} else {
|
} 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 {
|
try {
|
||||||
if ($aData['USR_STATUS'] == 'ACTIVE') {
|
if ($aData['USR_STATUS'] == 'ACTIVE') {
|
||||||
@@ -322,7 +336,7 @@ class User
|
|||||||
$aData['USR_PHONE'] = $form['USR_PHONE'];
|
$aData['USR_PHONE'] = $form['USR_PHONE'];
|
||||||
$aData['USR_ZIP_CODE'] = $form['USR_ZIP_CODE'];
|
$aData['USR_ZIP_CODE'] = $form['USR_ZIP_CODE'];
|
||||||
$aData['USR_POSITION'] = $form['USR_POSITION'];
|
$aData['USR_POSITION'] = $form['USR_POSITION'];
|
||||||
$aData['USR_REPLACED_BY'] = $form['USR_REPLACED_BY'];
|
$aData['USR_REPLACED_BY'] = $form['USR_REPLACED_BY'];
|
||||||
$oUser = new \Users();
|
$oUser = new \Users();
|
||||||
$oUser -> create( $aData );
|
$oUser -> create( $aData );
|
||||||
// comment photos files
|
// comment photos files
|
||||||
@@ -530,8 +544,13 @@ class User
|
|||||||
if ($form['USR_ROLE'] != '') {
|
if ($form['USR_ROLE'] != '') {
|
||||||
$aData['USR_ROLE'] = $form['USR_ROLE'];
|
$aData['USR_ROLE'] = $form['USR_ROLE'];
|
||||||
}
|
}
|
||||||
if (isset($form['USR_REPLACED_BY'])) {
|
if ($form['USR_REPLACED_BY'] != '') {
|
||||||
$aData['USR_REPLACED_BY'] = $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'])) {
|
if (isset($form['USR_AUTH_USER_DN'])) {
|
||||||
$aData['USR_AUTH_USER_DN'] = $form['USR_AUTH_USER_DN'];
|
$aData['USR_AUTH_USER_DN'] = $form['USR_AUTH_USER_DN'];
|
||||||
|
|||||||
@@ -13,6 +13,9 @@ class User extends Api
|
|||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @url GET
|
* @url GET
|
||||||
|
* @param string $filter
|
||||||
|
* @param int $start
|
||||||
|
* @param int $limit
|
||||||
*/
|
*/
|
||||||
public function doGetUsers($filter = '', $start = null, $limit = null)
|
public function doGetUsers($filter = '', $start = null, $limit = null)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user