Merged in darojas/processmaker (pull request #165)

Se arreglan validaciones en OUTPUTDOCUMENT y se agregan validaciones en PM USER.
This commit is contained in:
erik ao
2014-02-10 09:23:40 -04:00
5 changed files with 84 additions and 26 deletions

View File

@@ -265,9 +265,7 @@ class OutputDocument
$aData['OUT_DOC_PDF_SECURITY_OWNER_PASSWORD'] = \G::encrypt( $aData['OUT_DOC_PDF_SECURITY_OWNER_PASSWORD'], $aData['OUT_DOC_UID'] ); $aData['OUT_DOC_PDF_SECURITY_OWNER_PASSWORD'] = \G::encrypt( $aData['OUT_DOC_PDF_SECURITY_OWNER_PASSWORD'], $aData['OUT_DOC_UID'] );
} }
} }
if ($aData['OUT_DOC_UID'] == '') { $outDocUid = $oOutputDocument->create($aData);
$outDocUid = $oOutputDocument->create($aData);
}
//Return //Return
unset($aData["PRO_UID"]); unset($aData["PRO_UID"]);
$aData = array_change_key_case($aData, CASE_LOWER); $aData = array_change_key_case($aData, CASE_LOWER);

View File

@@ -984,6 +984,9 @@ class Task
public function getTaskAssignee($sProcessUID, $sTaskUID, $sAssigneeUID) public function getTaskAssignee($sProcessUID, $sTaskUID, $sAssigneeUID)
{ {
try { try {
$filter = '';
$start = null;
$limit = null;
$oProcess = \ProcessPeer::retrieveByPK( $sProcessUID ); $oProcess = \ProcessPeer::retrieveByPK( $sProcessUID );
if (is_null($oProcess)) { if (is_null($oProcess)) {
throw (new \Exception( 'This id for `prj_uid`: '. $sProcessUID .' do not correspond to a registered process')); throw (new \Exception( 'This id for `prj_uid`: '. $sProcessUID .' do not correspond to a registered process'));
@@ -1530,6 +1533,9 @@ class Task
public function getTaskAdhocAssignee($sProcessUID, $sTaskUID, $sAssigneeUID) public function getTaskAdhocAssignee($sProcessUID, $sTaskUID, $sAssigneeUID)
{ {
try { try {
$filter = '';
$start = null;
$limit = null;
$oProcess = \ProcessPeer::retrieveByPK( $sProcessUID ); $oProcess = \ProcessPeer::retrieveByPK( $sProcessUID );
if (is_null($oProcess)) { if (is_null($oProcess)) {
throw (new \Exception( 'This id for `prj_uid`: '. $sProcessUID .' do not correspond to a registered process')); throw (new \Exception( 'This id for `prj_uid`: '. $sProcessUID .' do not correspond to a registered process'));

View File

@@ -263,7 +263,16 @@ class User
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'));
} else { } else {
$aData['USR_DUE_DATE'] = $form['USR_DUE_DATE']; $dueDate = explode("-", $form['USR_DUE_DATE']);
if (ctype_digit($dueDate[0])) {
if (checkdate($dueDate[1], $dueDate[2], $dueDate[0]) == false) {
throw new \Exception('`usr_due_date`. '.\G::LoadTranslation('ID_MSG_ERROR_DUE_DATE'));
} else {
$aData['USR_DUE_DATE'] = $form['USR_DUE_DATE'];
}
} else {
throw new \Exception('`usr_due_date`. '.\G::LoadTranslation('ID_MSG_ERROR_DUE_DATE'));
}
} }
$aData['USR_CREATE_DATE'] = date('Y-m-d H:i:s'); $aData['USR_CREATE_DATE'] = date('Y-m-d H:i:s');
$aData['USR_UPDATE_DATE'] = date('Y-m-d H:i:s'); $aData['USR_UPDATE_DATE'] = date('Y-m-d H:i:s');
@@ -478,25 +487,36 @@ class User
$aData['USR_EMAIL'] = $form['USR_EMAIL']; $aData['USR_EMAIL'] = $form['USR_EMAIL'];
} }
} }
if ($form['USR_DUE_DATE'] != '') { if ($form['USR_DUE_DATE'] == '') {
$aData['USR_DUE_DATE'] = $form['USR_DUE_DATE']; throw new \Exception('`usr_due_date`. '.\G::LoadTranslation('ID_MSG_ERROR_DUE_DATE'));
} else {
$dueDate = explode("-", $form['USR_DUE_DATE']);
if (ctype_digit($dueDate[0])) {
if (checkdate($dueDate[1], $dueDate[2], $dueDate[0]) == false) {
throw new \Exception('`usr_due_date`. '.\G::LoadTranslation('ID_MSG_ERROR_DUE_DATE'));
} else {
$aData['USR_DUE_DATE'] = $form['USR_DUE_DATE'];
}
} else {
throw new \Exception('`usr_due_date`. '.\G::LoadTranslation('ID_MSG_ERROR_DUE_DATE'));
}
} }
$aData['USR_UPDATE_DATE'] = date('Y-m-d H:i:s'); $aData['USR_UPDATE_DATE'] = date('Y-m-d H:i:s');
if ($form['USR_STATUS'] != '') { if ($form['USR_STATUS'] != '') {
$aData['USR_STATUS'] = $form['USR_STATUS']; $aData['USR_STATUS'] = $form['USR_STATUS'];
} }
$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 field.');
}
if ($form['USR_ROLE'] != '') { if ($form['USR_ROLE'] != '') {
$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 field.');
}
$this->updateUser($aData, $form['USR_ROLE']); $this->updateUser($aData, $form['USR_ROLE']);
} else { } else {
$this->updateUser($aData); $this->updateUser($aData);
@@ -548,7 +568,23 @@ class User
} }
/** /**
* Delete Group * Authenticate User
*
* @param array $arrayData Data
*
* return array Return data of the User updated
*/
public function authenticate($arrayData)
{
try {
} catch (\Exception $e) {
throw $e;
}
}
/**
* Delete User
* *
* @param string $usrUid Unique id of User * @param string $usrUid Unique id of User
* *
@@ -613,6 +649,7 @@ class User
public function getUsers($filter, $start, $limit) public function getUsers($filter, $start, $limit)
{ {
try { try {
$aUserInfo = array();
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");
$oCriteria = new \Criteria(); $oCriteria = new \Criteria();
if ($filter != '') { if ($filter != '') {
@@ -653,13 +690,14 @@ class User
/** /**
* Get data of a User * Get data of a User
* *
* @param string $userUid Unique id of Group * @param string $userUid Unique id of User
* *
* return array Return an array with data of a User * return array Return an array with data of a User
*/ */
public function getUser($userUid) public function getUser($userUid)
{ {
try { try {
$aUserInfo = array();
$oUser = \UsersPeer::retrieveByPK($userUid); $oUser = \UsersPeer::retrieveByPK($userUid);
if (is_null($oUser)) { if (is_null($oUser)) {
throw (new \Exception( 'This id for `usr_uid`: '. $userUid .' do not correspond to a registered user')); throw (new \Exception( 'This id for `usr_uid`: '. $userUid .' do not correspond to a registered user'));

View File

@@ -90,8 +90,7 @@ class OutputDocuments extends Api
} catch (\Exception $e) { } catch (\Exception $e) {
//response //response
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
} }
return $response;
} }
/** /**

View File

@@ -14,7 +14,7 @@ class User extends Api
/** /**
* @url GET * @url GET
*/ */
public function index($filter = '', $start = null, $limit = null) public function doGetUsers($filter = '', $start = null, $limit = null)
{ {
try { try {
$user = new \BusinessModel\User(); $user = new \BusinessModel\User();
@@ -30,7 +30,7 @@ class User extends Api
* *
* @param string $usr_uid {@min 32}{@max 32} * @param string $usr_uid {@min 32}{@max 32}
*/ */
public function doGet($usr_uid) public function doGetUser($usr_uid)
{ {
try { try {
$user = new \BusinessModel\User(); $user = new \BusinessModel\User();
@@ -48,7 +48,7 @@ class User extends Api
* *
* @status 201 * @status 201
*/ */
public function doPost($request_data) { public function doPostUser($request_data) {
try { try {
$user = new \BusinessModel\User(); $user = new \BusinessModel\User();
$arrayData = $user->create($request_data); $arrayData = $user->create($request_data);
@@ -59,13 +59,30 @@ class User extends Api
} }
} }
/**
* @url POST /:usr_uid
*
* @param array $request_data
*
*/
public function doPostAuthenticate($request_data) {
try {
$user = new \BusinessModel\User();
$arrayData = $user->authenticate($request_data);
$response = $arrayData;
return $response;
} catch (\Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
}
}
/** /**
* @url PUT /:usr_uid * @url PUT /:usr_uid
* *
* @param string $usr_uid {@min 32}{@max 32} * @param string $usr_uid {@min 32}{@max 32}
* @param array $request_data * @param array $request_data
*/ */
public function doPut($usr_uid, $request_data) { public function doPutUser($usr_uid, $request_data) {
try { try {
$userLoggedUid = $this->getUserId(); $userLoggedUid = $this->getUserId();
$user = new \BusinessModel\User(); $user = new \BusinessModel\User();
@@ -82,7 +99,7 @@ class User extends Api
* *
* @param string $usr_uid {@min 32}{@max 32} * @param string $usr_uid {@min 32}{@max 32}
*/ */
public function doDelete($usr_uid) public function doDeleteUser($usr_uid)
{ {
try { try {
$user = new \BusinessModel\User(); $user = new \BusinessModel\User();