Add hook before create user
This commit is contained in:
@@ -193,6 +193,14 @@ class RbacUsers extends BaseRbacUsers
|
|||||||
|
|
||||||
public function create($aData)
|
public function create($aData)
|
||||||
{
|
{
|
||||||
|
$pluginRegistry = & PMPluginRegistry::getSingleton();
|
||||||
|
if ($pluginRegistry->existsTrigger(PM_BEFORE_CREATE_USER)) {
|
||||||
|
try {
|
||||||
|
$pluginRegistry->executeTriggers(PM_BEFORE_CREATE_USER);
|
||||||
|
} catch(Exception $error) {
|
||||||
|
throw new Exception($error->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
$oConnection = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
|
$oConnection = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
|
||||||
try {
|
try {
|
||||||
$oRBACUsers = new RbacUsers();
|
$oRBACUsers = new RbacUsers();
|
||||||
|
|||||||
@@ -41,6 +41,9 @@ define('PM_UPLOAD_DOCUMENT_BEFORE', 1012);
|
|||||||
define('PM_CREATE_NEW_DELEGATION', 1013);
|
define('PM_CREATE_NEW_DELEGATION', 1013);
|
||||||
define('PM_SINGLE_SIGN_ON', 1014);
|
define('PM_SINGLE_SIGN_ON', 1014);
|
||||||
define('PM_GET_CASES_AJAX_LISTENER', 1015);
|
define('PM_GET_CASES_AJAX_LISTENER', 1015);
|
||||||
|
define('PM_BEFORE_CREATE_USER', 1016);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package workflow.engine.classes
|
* @package workflow.engine.classes
|
||||||
|
|||||||
@@ -1137,8 +1137,11 @@ function WSCreateUser ($userId, $password, $firstname, $lastname, $email, $role,
|
|||||||
$params = array ("sessionId" => $sessionId,"userId" => $userId,"firstname" => $firstname,"lastname" => $lastname,"email" => $email,"role" => $role,"password" => $password,"dueDate" => $dueDate,"status" => $status
|
$params = array ("sessionId" => $sessionId,"userId" => $userId,"firstname" => $firstname,"lastname" => $lastname,"email" => $email,"role" => $role,"password" => $password,"dueDate" => $dueDate,"status" => $status
|
||||||
);
|
);
|
||||||
|
|
||||||
$result = $client->__soapCall( "CreateUser", array ($params
|
try {
|
||||||
) );
|
$result = $client->__soapCall( "CreateUser", array ($params) );
|
||||||
|
} catch(Exception $oError) {
|
||||||
|
return $oError->getMessage();
|
||||||
|
}
|
||||||
|
|
||||||
$fields["status_code"] = $result->status_code;
|
$fields["status_code"] = $result->status_code;
|
||||||
$fields["message"] = $result->message;
|
$fields["message"] = $result->message;
|
||||||
|
|||||||
@@ -1058,7 +1058,12 @@ class wsBase
|
|||||||
$arrayData["USR_AUTH_USER_DN"] = "";
|
$arrayData["USR_AUTH_USER_DN"] = "";
|
||||||
$arrayData["USR_STATUS"] = ($status == "ACTIVE") ? 1 : 0;
|
$arrayData["USR_STATUS"] = ($status == "ACTIVE") ? 1 : 0;
|
||||||
|
|
||||||
$userUid = $RBAC->createUser( $arrayData, $strRole );
|
try {
|
||||||
|
$userUid = $RBAC->createUser( $arrayData, $strRole );
|
||||||
|
} catch(Exception $oError) {
|
||||||
|
$result = new wsCreateUserResponse(100, $oError->getMessage(), null );
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
$arrayData["USR_UID"] = $userUid;
|
$arrayData["USR_UID"] = $userUid;
|
||||||
$arrayData["USR_STATUS"] = $status;
|
$arrayData["USR_STATUS"] = $status;
|
||||||
|
|||||||
@@ -62,7 +62,13 @@ foreach ($_POST['aUsers'] as $sUser) {
|
|||||||
$aUser['sDN'] = str_replace( $match, $newMatch, $aUser['sDN'] );
|
$aUser['sDN'] = str_replace( $match, $newMatch, $aUser['sDN'] );
|
||||||
}
|
}
|
||||||
$aData['USR_AUTH_USER_DN'] = $aUser['sDN'];
|
$aData['USR_AUTH_USER_DN'] = $aUser['sDN'];
|
||||||
$sUserUID = $RBAC->createUser( $aData, 'PROCESSMAKER_OPERATOR' );
|
try {
|
||||||
|
$sUserUID = $RBAC->createUser( $aData, 'PROCESSMAKER_OPERATOR' );
|
||||||
|
} catch(Exception $oError) {
|
||||||
|
$G_PUBLISH = new Publisher();
|
||||||
|
$G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'login/showMessage', '', array ('MESSAGE' => $oError->getMessage()) );
|
||||||
|
G::RenderPage("publish", "blank");
|
||||||
|
}
|
||||||
$aData['USR_STATUS'] = 'ACTIVE';
|
$aData['USR_STATUS'] = 'ACTIVE';
|
||||||
$aData['USR_UID'] = $sUserUID;
|
$aData['USR_UID'] = $sUserUID;
|
||||||
$aData['USR_PASSWORD'] = md5( $sUserUID ); //fake :p
|
$aData['USR_PASSWORD'] = md5( $sUserUID ); //fake :p
|
||||||
|
|||||||
@@ -847,7 +847,11 @@ function CreateUser ($params)
|
|||||||
|
|
||||||
$ws = new wsBase();
|
$ws = new wsBase();
|
||||||
|
|
||||||
$res = $ws->createUser( $params->userId, $params->firstname, $params->lastname, $params->email, $params->role, $params->password, ((isset( $params->dueDate )) ? $params->dueDate : null), ((isset( $params->status )) ? $params->status : null) );
|
try {
|
||||||
|
$res = $ws->createUser( $params->userId, $params->firstname, $params->lastname, $params->email, $params->role, $params->password, ((isset( $params->dueDate )) ? $params->dueDate : null), ((isset( $params->status )) ? $params->status : null) );
|
||||||
|
} catch(Exception $oError) {
|
||||||
|
return $oError->getMessage();
|
||||||
|
}
|
||||||
|
|
||||||
return $res;
|
return $res;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -147,7 +147,11 @@ switch ($_POST['action']) {
|
|||||||
//fixing bug in inactive user when the admin create a new user.
|
//fixing bug in inactive user when the admin create a new user.
|
||||||
$statusWF = $form['USR_STATUS'];
|
$statusWF = $form['USR_STATUS'];
|
||||||
$aData['USR_STATUS'] = $form['USR_STATUS'] == 'ACTIVE' ? 1 : 0;
|
$aData['USR_STATUS'] = $form['USR_STATUS'] == 'ACTIVE' ? 1 : 0;
|
||||||
$sUserUID = $RBAC->createUser($aData, $form['USR_ROLE']);
|
try {
|
||||||
|
$sUserUID = $RBAC->createUser($aData, $form['USR_ROLE']);
|
||||||
|
} catch(Exception $oError) {
|
||||||
|
throw new Exception($oError->getMessage());
|
||||||
|
}
|
||||||
$aData['USR_STATUS'] = $statusWF;
|
$aData['USR_STATUS'] = $statusWF;
|
||||||
$aData['USR_UID'] = $sUserUID;
|
$aData['USR_UID'] = $sUserUID;
|
||||||
$aData['USR_PASSWORD'] = md5($sUserUID); //fake :p
|
$aData['USR_PASSWORD'] = md5($sUserUID); //fake :p
|
||||||
|
|||||||
Reference in New Issue
Block a user