add remove users from group webservices
This commit is contained in:
@@ -934,6 +934,49 @@ class wsBase
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* remove user from group
|
||||
* @param string $appDocUid
|
||||
* @return $result will return an object
|
||||
*/
|
||||
public function removeUserFromGroup($userId, $groupId) {
|
||||
try {
|
||||
G::LoadClass('groups');
|
||||
global $RBAC;
|
||||
$RBAC->initRBAC();
|
||||
$user=$RBAC->verifyUserId($userId);
|
||||
if($user==0){
|
||||
$result = new wsResponse (3, "User not registered in the system");
|
||||
return $result;
|
||||
}
|
||||
|
||||
$groups = new Groups;
|
||||
$very_group = $groups->verifyGroup( $groupId );
|
||||
if ( $very_group==0 ) {
|
||||
$result = new wsResponse (9, "Group not registered in the system");
|
||||
return $result;
|
||||
}
|
||||
|
||||
$very_user = $groups->verifyUsertoGroup( $groupId, $userId);
|
||||
if($very_user==1){
|
||||
$oGroup = new Groups();
|
||||
$oGroup->removeUserOfGroup($groupId, $userId);
|
||||
$result = new wsResponse (0, "command executed successfuly");
|
||||
return $result;
|
||||
}
|
||||
//$oGroup->removeUserOfGroup($_POST['GRP_UID'], $_POST['USR_UID']);
|
||||
$result = new wsResponse (8, "User not registered in the group");
|
||||
return $result;
|
||||
}
|
||||
catch ( Exception $e ) {
|
||||
$result = new wsResponse (100, $e->getMessage());
|
||||
return $result;
|
||||
}
|
||||
//G::LoadClass('groups');
|
||||
// $oGroup = new Groups();
|
||||
// $oGroup->removeUserOfGroup($_POST['GRP_UID'], $_POST['USR_UID']);
|
||||
}
|
||||
|
||||
/*
|
||||
* assigns a user to a group
|
||||
* @param string $userId
|
||||
@@ -2028,4 +2071,6 @@ class wsBase
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -221,6 +221,15 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="removeUserFromGroupRequest">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="sessionId" type="xs:string"/>
|
||||
<xs:element name="userId" type="xs:string"/>
|
||||
<xs:element name="groupId" type="xs:string"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="assignUserToDepartmentRequest">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
@@ -788,6 +797,10 @@
|
||||
<message name="importProcessFromLibraryResponse">
|
||||
<part name="parameters" element="xs0:importProcessFromLibraryResponse"/>
|
||||
</message>
|
||||
|
||||
<message name="removeUserFromGroupRequest">
|
||||
<part name="parameters" element="xs0:removeUserFromGroupRequest"/>
|
||||
</message>
|
||||
<portType name="ProcessMakerServiceSoap">
|
||||
<operation name="login">
|
||||
<input message="xs0:loginRequest"/>
|
||||
@@ -909,6 +922,10 @@
|
||||
<input message="xs0:importProcessFromLibraryRequest"/>
|
||||
<output message="xs0:importProcessFromLibraryResponse"/>
|
||||
</operation>
|
||||
<operation name="removeUserFromGroup">
|
||||
<input message="xs0:removeUserFromGroupRequest"/>
|
||||
<output message="xs0:pmResponse"/>
|
||||
</operation>
|
||||
</portType>
|
||||
<binding name="ProcessMakerServiceSoap" type="xs0:ProcessMakerServiceSoap">
|
||||
<soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
|
||||
@@ -1182,6 +1199,15 @@
|
||||
<soap12:body use="literal"/>
|
||||
</output>
|
||||
</operation>
|
||||
<operation name="removeUserFromGroup">
|
||||
<soap12:operation soapAction="urn:removeUserFromGroup" soapActionRequired="true" style="document"/>
|
||||
<input>
|
||||
<soap12:body use="literal"/>
|
||||
</input>
|
||||
<output>
|
||||
<soap12:body use="literal"/>
|
||||
</output>
|
||||
</operation>
|
||||
</binding>
|
||||
<service name="ProcessMakerService">
|
||||
<documentation>ProcessMaker Web Service</documentation>
|
||||
|
||||
@@ -557,7 +557,7 @@
|
||||
if ( is_array ( $variables) ) {
|
||||
foreach ( $variables as $key=>$val ) {
|
||||
if (!is_object($val->value)){
|
||||
eval('$Fields[ "' . $val->name . '" ]= $val->value ;');
|
||||
eval('$Fields[ ' . $val->name . ' ]= $val->value ;');
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -762,7 +762,18 @@
|
||||
return new wsResponse (9, 'Session expired');
|
||||
}
|
||||
}
|
||||
//add removeUserFromGroup
|
||||
function removeUserFromGroup( $params ) {
|
||||
$vsResult = isValidSession($params->sessionId);
|
||||
if( $vsResult->status_code !== 0 ){
|
||||
return $vsResult;
|
||||
}
|
||||
|
||||
$ws = new wsBase ();
|
||||
$res = $ws->removeUserFromGroup($params->userId, $params->groupId);
|
||||
return $res ;
|
||||
}
|
||||
//end add
|
||||
function ifPermission( $sessionId, $permission ){
|
||||
global $RBAC;
|
||||
$RBAC->initRBAC();
|
||||
@@ -816,6 +827,6 @@ $server->addFunction("TaskCase");
|
||||
$server->addFunction("ReassignCase");
|
||||
$server->addFunction("systemInformation");
|
||||
$server->addFunction("importProcessFromLibrary");
|
||||
|
||||
$server->addFunction("removeUserFromGroup");
|
||||
$server->handle();
|
||||
|
||||
|
||||
@@ -1075,7 +1075,25 @@ switch ($_POST ['action']) {
|
||||
|
||||
G::RenderPage ( 'publish', 'raw' );
|
||||
break;
|
||||
//add removeUserFromGroup
|
||||
case "removeUserFromGroup" :
|
||||
$sessionId = $frm ["SESSION_ID"];
|
||||
$userId = $frm ["USER_ID"];
|
||||
$groupId = $frm ["GROUP_ID"];
|
||||
$params = array ('sessionId' => $sessionId, 'userId' => $userId, 'groupId' => $groupId );
|
||||
$result = $client->__SoapCall ( 'removeUserFromGroup', array ($params ) );
|
||||
$G_PUBLISH = new Publisher ( );
|
||||
$fields ['status_code'] = $result->status_code;
|
||||
$fields ['message'] = $result->message;
|
||||
$fields ['time_stamp'] = $result->timestamp;
|
||||
if( $result->status_code == 9 ){
|
||||
$_SESSION ['WS_SESSION_ID'] = '';
|
||||
}
|
||||
|
||||
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
|
||||
G::RenderPage ( 'publish', 'raw' );
|
||||
break;
|
||||
//end add
|
||||
case "RemoveDocument" :
|
||||
$appDocUid = $frm ["APP_DOC_UID"];
|
||||
$sessionId = $frm ["SESSION_ID"];
|
||||
|
||||
@@ -104,6 +104,7 @@ $allWebservices [] = 'OutputDocumentList';
|
||||
$allWebservices [] = 'RemoveDocument';
|
||||
$allWebservices [] = 'TaskCase';
|
||||
$allWebservices [] = 'ReassignCase';
|
||||
$allWebservices [] = 'removeUserFromGroup';
|
||||
|
||||
foreach ( $allWebservices as $ws ) {
|
||||
$ID_TEST = G::LoadTranslation ( 'ID_TEST' );
|
||||
|
||||
17
workflow/engine/xmlform/setup/wsremoveUserFromGroup.xml
Normal file
17
workflow/engine/xmlform/setup/wsremoveUserFromGroup.xml
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<dynaForm name="webservices" width="500" mode="edit" border="0" enableTemplate="0" height="105px">
|
||||
<SESSION_ID type="text" size="36" maxlength="32">
|
||||
<en>Session Id</en>
|
||||
</SESSION_ID>
|
||||
<USER_ID type="dropdown" sqlConnection="dbarray">
|
||||
SELECT * from user
|
||||
<en>User ID</en>
|
||||
<GROUP_ID type="dropdown" sqlConnection="dbarray">
|
||||
SELECT * from group
|
||||
<en>Group ID</en>
|
||||
<ACTION type="hidden">
|
||||
</ACTION>
|
||||
<ACTIONB type="button" onclick="submitThisForm(this.form);">
|
||||
<en>RemoveUserToGroup</en>
|
||||
</ACTIONB>
|
||||
</dynaForm>
|
||||
Reference in New Issue
Block a user