2010-12-02 23:34:41 +00:00
|
|
|
<?
|
|
|
|
|
ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache
|
|
|
|
|
|
|
|
|
|
define ('WEB_SERVICE_VERSION' , '2.0' );
|
|
|
|
|
|
|
|
|
|
//$wsdl = PATH_METHODS . "services" . PATH_SEP . "pmos.wsdl";
|
|
|
|
|
$wsdl = PATH_METHODS . "services" . PATH_SEP . "pmos2.wsdl";
|
|
|
|
|
|
|
|
|
|
require_once ( "classes/model/Application.php" );
|
|
|
|
|
require_once ( "classes/model/AppDelegation.php" );
|
|
|
|
|
require_once ( "classes/model/AppThread.php" );
|
|
|
|
|
require_once ( "classes/model/Dynaform.php" );
|
|
|
|
|
require_once ( "classes/model/Department.php" );
|
|
|
|
|
require_once ( "classes/model/Groupwf.php" );
|
|
|
|
|
require_once ( "classes/model/InputDocument.php" );
|
|
|
|
|
require_once ( "classes/model/Language.php" );
|
|
|
|
|
require_once ( "classes/model/OutputDocument.php" );
|
|
|
|
|
require_once ( "classes/model/Process.php" );
|
|
|
|
|
require_once ( "classes/model/ReportTable.php");
|
|
|
|
|
require_once ( "classes/model/ReportVar.php");
|
|
|
|
|
require_once ( "classes/model/Step.php" );
|
|
|
|
|
require_once ( "classes/model/StepTrigger.php" );
|
|
|
|
|
require_once ( "classes/model/Task.php" );
|
|
|
|
|
require_once ( "classes/model/TaskUser.php" );
|
|
|
|
|
require_once ( "classes/model/Triggers.php" );
|
|
|
|
|
require_once ( "classes/model/Users.php" );
|
|
|
|
|
require_once ( "classes/model/Session.php" );
|
|
|
|
|
require_once ( "classes/model/Content.php" );
|
|
|
|
|
G::LoadClass('wsResponse');
|
|
|
|
|
G::LoadClass('wsBase');
|
|
|
|
|
|
|
|
|
|
function login( $params ) {
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->login( $params->userid, $params->password );
|
|
|
|
|
return array(
|
|
|
|
|
'status_code' => $res->status_code ,
|
|
|
|
|
'message' => $res->message,
|
|
|
|
|
'version' => WEB_SERVICE_VERSION,
|
2011-01-26 02:32:51 +00:00
|
|
|
'timestamp' => $res->timestamp
|
2010-12-02 23:34:41 +00:00
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2011-09-15 17:52:15 -04:00
|
|
|
function ProcessList( $params ) {
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("processes" => $o);
|
|
|
|
|
}
|
2011-09-15 17:52:15 -04:00
|
|
|
|
|
|
|
|
if (ifPermission( $params->sessionId, 'PM_CASES') != 0 ){
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
$res = $ws->processList();
|
|
|
|
|
return array("processes" => $res );
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_FACTORY') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("processes" => $o);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
/** if you are not an admin user, then this function will return only your valid process **/
|
|
|
|
|
if ( ifPermission( $params->sessionId, 'PM_FACTORY') == 0 ) {
|
|
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$oSessions = new Sessions();
|
|
|
|
|
$session = $oSessions->getSessionUser($params->sessionId);
|
|
|
|
|
$userId = $session['USR_UID'];
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
2011-09-19 11:17:23 -04:00
|
|
|
$res = $ws->processListVerified( $userId );
|
2010-12-02 23:34:41 +00:00
|
|
|
return array("processes" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase();
|
|
|
|
|
$res = $ws->processList();
|
2011-09-15 17:52:15 -04:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
return array("processes" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function RoleList( $params ) {
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("roles" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("roles" => $o);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->roleList();
|
|
|
|
|
return array("roles" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function GroupList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("groups" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
|
|
|
|
return array("groups" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->groupList();
|
|
|
|
|
return array("groups" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function DepartmentList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("departments" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
|
|
|
|
return array("departments" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->departmentList();
|
|
|
|
|
return array("departments" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function CaseList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
|
|
|
|
$o->status = '';
|
|
|
|
|
$o->delIndex = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("cases" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->status = '';
|
|
|
|
|
$o->delIndex = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("cases" => $o);
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$oSessions = new Sessions();
|
|
|
|
|
$session = $oSessions->getSessionUser($params->sessionId);
|
|
|
|
|
$userId = $session['USR_UID'];
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->caseList( $userId );
|
|
|
|
|
return array("cases" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function UserList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("users" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
|
|
|
|
return array("users" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->userList();
|
|
|
|
|
return array("users" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function triggerList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
|
|
|
|
$o->processId = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("triggers" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->processId = '';
|
|
|
|
|
return array("triggers" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->triggerList();
|
|
|
|
|
return array("triggers" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function outputDocumentList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->filename = '';
|
|
|
|
|
$o->docId = '';
|
|
|
|
|
$o->version = '';
|
|
|
|
|
$o->createDate = '';
|
|
|
|
|
$o->createBy = '';
|
|
|
|
|
$o->type = '';
|
|
|
|
|
$o->index = '';
|
|
|
|
|
$o->link = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("documents" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->filename = '';
|
|
|
|
|
$o->docId = '';
|
|
|
|
|
$o->version = '';
|
|
|
|
|
$o->createDate = '';
|
|
|
|
|
$o->createBy = '';
|
|
|
|
|
$o->type = '';
|
|
|
|
|
$o->index = '';
|
|
|
|
|
$o->link = '';
|
|
|
|
|
return array("documents" => $o);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$oSessions = new Sessions();
|
|
|
|
|
$session = $oSessions->getSessionUser($params->sessionId);
|
|
|
|
|
$userId = $session['USR_UID'];
|
|
|
|
|
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->outputDocumentList( $params->caseId, $userId );
|
|
|
|
|
return array("documents" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function inputDocumentList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->filename = '';
|
|
|
|
|
$o->docId = '';
|
|
|
|
|
$o->version = '';
|
|
|
|
|
$o->createDate = '';
|
|
|
|
|
$o->createBy = '';
|
|
|
|
|
$o->type = '';
|
|
|
|
|
$o->index = '';
|
|
|
|
|
$o->link = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("documents" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->filename = '';
|
|
|
|
|
$o->docId = '';
|
|
|
|
|
$o->version = '';
|
|
|
|
|
$o->createDate = '';
|
|
|
|
|
$o->createBy = '';
|
|
|
|
|
$o->type = '';
|
|
|
|
|
$o->index = '';
|
|
|
|
|
$o->link = '';
|
|
|
|
|
return array("documents" => $o);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$oSessions = new Sessions();
|
|
|
|
|
$session = $oSessions->getSessionUser($params->sessionId);
|
|
|
|
|
$userId = $session['USR_UID'];
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->inputDocumentList( $params->caseId, $userId );
|
|
|
|
|
return array("documents" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function inputDocumentProcessList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
|
|
|
|
$o->description = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("documents" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
|
|
|
|
$o->description = '';
|
|
|
|
|
return array("documents" => $o);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->inputDocumentProcessList( $params->processId );
|
|
|
|
|
return array("documents" => $res);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function removeDocument( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$result = new wsResponse (2, "Insufficient privileges to execute this function");
|
2010-12-02 23:34:41 +00:00
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->removeDocument( $params->appDocUid );
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function SendMessage( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ) {
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result->getPayloadArray();
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
2011-01-26 02:32:51 +00:00
|
|
|
$res = $ws->sendMessage(
|
2010-12-02 23:34:41 +00:00
|
|
|
$params->caseId,
|
|
|
|
|
$params->from,
|
|
|
|
|
$params->to,
|
|
|
|
|
$params->cc,
|
|
|
|
|
$params->bcc,
|
|
|
|
|
$params->subject,
|
|
|
|
|
$params->template
|
|
|
|
|
);
|
|
|
|
|
return $res->getPayloadArray() ;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function getCaseInfo( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ) {
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->getCaseInfo( $params->caseId, $params->delIndex );
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function SendVariables( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ) {
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase();
|
|
|
|
|
$variables = $params->variables;
|
|
|
|
|
$Fields = Array();
|
|
|
|
|
if ( is_object($variables) ) {
|
|
|
|
|
$Fields[$variables->name] = $variables->value;
|
|
|
|
|
} else if ( is_array($variables) ) {
|
|
|
|
|
foreach ( $variables as $index=>$obj ) {
|
|
|
|
|
if ( is_object($obj) && isset($obj->name) && isset($obj->value)){
|
2011-01-26 02:32:51 +00:00
|
|
|
$Fields[$obj->name] = $obj->value;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$params->variables = $Fields;
|
|
|
|
|
$res = $ws->sendVariables($params->caseId, $params->variables);
|
|
|
|
|
|
|
|
|
|
return $res->getPayloadArray();
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
2011-09-15 16:35:48 -04:00
|
|
|
function GetVariables( $params ) {
|
|
|
|
|
if (!is_array($params->variables)) {
|
|
|
|
|
$params->variables = array($params->variables);
|
|
|
|
|
}
|
|
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsGetVariableResponse (2, "You do not have privileges", NULL );
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
|
|
|
|
|
$res = $ws->getVariables($params->caseId, $params->variables);
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function DerivateCase( $params ) {
|
|
|
|
|
$oSession = new Sessions();
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$user = $oSession->getSessionUser($params->sessionId);
|
|
|
|
|
|
|
|
|
|
$oStd->stored_system_variables = true;
|
|
|
|
|
$oStd->wsSessionId = $params->sessionId;
|
|
|
|
|
$ws = new wsBase($oStd);
|
|
|
|
|
$res = $ws->derivateCase($user['USR_UID'], $params->caseId, $params->delIndex);
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function RouteCase( $params ) {
|
|
|
|
|
$oSession = new Sessions();
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$user = $oSession->getSessionUser($params->sessionId);
|
|
|
|
|
|
|
|
|
|
$oStd->stored_system_variables = true;
|
|
|
|
|
$oStd->wsSessionId = $params->sessionId;
|
|
|
|
|
$ws = new wsBase($oStd);
|
|
|
|
|
$res = $ws->derivateCase($user['USR_UID'], $params->caseId, $params->delIndex);
|
|
|
|
|
return $res;
|
|
|
|
|
|
|
|
|
|
//return $res->getPayloadArray ( );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function executeTrigger ( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$oSession = new Sessions();
|
|
|
|
|
$user = $oSession->getSessionUser($params->sessionId);
|
|
|
|
|
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$delIndex = ( isset ( $params->delIndex ) ) ? $params->delIndex : 1 ;
|
|
|
|
|
$res = $ws->executeTrigger( $user['USR_UID'], $params->caseId, $params->triggerIndex, $delIndex);
|
|
|
|
|
return $res->getPayloadArray ( );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function NewCaseImpersonate( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$variables = $params->variables;
|
|
|
|
|
foreach ( $variables as $key=>$val ){
|
|
|
|
|
$name = $val->name;
|
|
|
|
|
$value = $val->value;
|
|
|
|
|
eval('$Fields[ ' . $val->name . ' ]= $val->value ;');
|
|
|
|
|
}
|
|
|
|
|
$params->variables = $Fields;
|
|
|
|
|
$res = $ws->newCaseImpersonate($params->processId, $params->userId, $params->variables);
|
|
|
|
|
return $res->getPayloadArray ( ) ;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function NewCase( $params ) {
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
G::LoadClass('sessions');
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if ( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
|
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$oSessions = new Sessions();
|
|
|
|
|
$session = $oSessions->getSessionUser($params->sessionId);
|
|
|
|
|
$userId = $session['USR_UID'];
|
|
|
|
|
$variables = $params->variables;
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
/* this code is for previous version of ws, and apparently this will work for grids inside the variables..
|
|
|
|
|
if (!isset($params->variables) ) {
|
|
|
|
|
$variables = array();
|
|
|
|
|
$Fields = array();
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
if ( is_object ($variables) ) {
|
|
|
|
|
$Fields[ $variables->name ]= $variables->value ;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ( is_array ( $variables) ) {
|
|
|
|
|
foreach ( $variables as $key=>$val ) {
|
|
|
|
|
$name = $val->name;
|
|
|
|
|
$value = $val->value;
|
|
|
|
|
if (!is_object($val->value))
|
|
|
|
|
{
|
|
|
|
|
eval('$Fields[ ' . $val->name . ' ]= $val->value ;');
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (is_array($val->value->item)) {
|
|
|
|
|
$i = 1;
|
|
|
|
|
foreach ($val->value->item as $key1 => $val1) {
|
|
|
|
|
if (isset($val1->value)) {
|
|
|
|
|
if (is_array($val1->value->item)) {
|
|
|
|
|
foreach ($val1->value->item as $key2 => $val2) {
|
|
|
|
|
$Fields[$val->name][$i][$val2->key] = $val2->value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$i++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
*/
|
|
|
|
|
$variables = $params->variables;
|
2011-02-02 21:29:47 +00:00
|
|
|
|
|
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if ( is_object ($variables) ) {
|
|
|
|
|
$Fields[ $variables->name ]= $variables->value ;
|
|
|
|
|
}
|
|
|
|
|
if ( is_array ( $variables) ) {
|
|
|
|
|
foreach ( $variables as $key=>$val ) {
|
|
|
|
|
if (!is_object($val->value)){
|
2011-02-02 21:29:47 +00:00
|
|
|
eval('$Fields[ ' . $val->name . ' ]= $val->value ;');
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$params->variables = $Fields;
|
|
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->newCase($params->processId, $userId, $params->taskId, $params->variables);
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
######################################################################
|
|
|
|
|
# we need to register the case id for a stored session variable. like a normal Session.
|
|
|
|
|
######################################################################
|
|
|
|
|
$oSessions->registerGlobal('APPLICATION', $res->caseId);
|
|
|
|
|
######################################################################
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function AssignUserToGroup( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0 ){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result->getPayloadArray();
|
|
|
|
|
}
|
|
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$sessions = new Sessions;
|
|
|
|
|
$user=$sessions->getSessionUser($params->sessionId);
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if(!is_array($user)){
|
2010-12-02 23:34:41 +00:00
|
|
|
return new wsResponse (3, 'User not registered in the system');
|
|
|
|
|
}
|
|
|
|
|
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->assignUserToGroup( $params->userId, $params->groupId);
|
|
|
|
|
return $res->getPayloadArray();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function AssignUserToDepartment( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult->getPayloadArray();
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0 ){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsResponse (2, "You do not have privileges");
|
|
|
|
|
return $result->getPayloadArray();
|
|
|
|
|
}
|
|
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$sessions = new Sessions;
|
|
|
|
|
$user=$sessions->getSessionUser($params->sessionId);
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if(!is_array($user)){
|
2010-12-02 23:34:41 +00:00
|
|
|
return new wsResponse (3, 'User not registered in the system');
|
|
|
|
|
}
|
|
|
|
|
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->AssignUserToDepartment( $params->userId, $params->departmentId, $params->manager );
|
|
|
|
|
return $res->getPayloadArray();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function CreateUser( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsCreateUserResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->createUser( $params->userId, $params->firstname, $params->lastname, $params->email, $params->role, $params->password);
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function CreateGroup( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$result = new wsCreateGroupResponse ($vsResult->status_code , $vsResult->message, '' );
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0 ) {
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsCreateGroupResponse (2, "You do not have privileges", '');
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->createGroup( $params->name );
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function CreateDepartment( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_USERS') == 0){
|
2010-12-02 23:34:41 +00:00
|
|
|
$result = new wsCreateUserResponse (2, "You do not have privileges");
|
|
|
|
|
return $result;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->CreateDepartment( $params->name, $params->parentUID );
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function TaskList( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("tasks" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
|
|
|
|
return array("tasks" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$oSessions = new Sessions();
|
|
|
|
|
$session = $oSessions->getSessionUser($params->sessionId);
|
|
|
|
|
$userId = $session['USR_UID'];
|
|
|
|
|
$res = $ws->taskList( $userId );
|
|
|
|
|
return array("tasks" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function TaskCase( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
$o->guid = $vsResult->status_code. ' ' . $vsResult->message;
|
|
|
|
|
$o->name = '';
|
2011-01-26 02:32:51 +00:00
|
|
|
return array("taskCases" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
if( ifPermission( $params->sessionId, 'PM_CASES') == 0 ){
|
2011-12-07 11:37:55 -04:00
|
|
|
$o->guid = "2 Insufficient privileges to execute this function";
|
2010-12-02 23:34:41 +00:00
|
|
|
$o->name = '';
|
|
|
|
|
return array("taskCases" => $o);
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->taskCase( $params->caseId );
|
|
|
|
|
return array("taskCases" => $res );
|
|
|
|
|
}
|
|
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
function ReassignCase( $params ) {
|
|
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->reassignCase($params->sessionId, $params->caseId, $params->delIndex, $params->userIdSource, $params->userIdTarget );
|
|
|
|
|
return $res ;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function systemInformation( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->systemInformation( );
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function importProcessFromLibrary( $params ) {
|
2011-01-26 02:32:51 +00:00
|
|
|
$vsResult = isValidSession($params->sessionId);
|
2010-12-02 23:34:41 +00:00
|
|
|
if( $vsResult->status_code !== 0 ){
|
2011-01-26 02:32:51 +00:00
|
|
|
return $vsResult;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->importProcessFromLibrary( $params->processId ,$params->version ,$params->importOption ,$params->usernameLibrary ,$params->passwordLibrary );
|
|
|
|
|
return $res;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*************/
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
#added By Erik AO <erik@colosa.com> in datetime 26.06.2008 10:00:00
|
|
|
|
|
# modified 12-01-2010 by erik
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2011-01-26 02:32:51 +00:00
|
|
|
function isValidSession($sessionId){
|
2010-12-02 23:34:41 +00:00
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$oSessions = new Sessions();
|
|
|
|
|
$session = $oSessions->verifySession($sessionId);
|
|
|
|
|
if( is_array($session) ) {
|
|
|
|
|
return new wsResponse (0, 'Session active');
|
|
|
|
|
} else {
|
2011-02-02 21:29:47 +00:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
return new wsResponse (9, 'Session expired');
|
|
|
|
|
}
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
//add removeUserFromGroup
|
|
|
|
|
function removeUserFromGroup( $params ) {
|
|
|
|
|
$vsResult = isValidSession($params->sessionId);
|
|
|
|
|
if( $vsResult->status_code !== 0 ){
|
|
|
|
|
return $vsResult;
|
|
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|
2011-02-02 21:29:47 +00:00
|
|
|
$ws = new wsBase ();
|
|
|
|
|
$res = $ws->removeUserFromGroup($params->userId, $params->groupId);
|
|
|
|
|
return $res ;
|
|
|
|
|
}
|
|
|
|
|
//end add
|
2010-12-02 23:34:41 +00:00
|
|
|
function ifPermission( $sessionId, $permission ){
|
|
|
|
|
global $RBAC;
|
|
|
|
|
$RBAC->initRBAC();
|
|
|
|
|
G::LoadClass('sessions');
|
|
|
|
|
$oSession = new Sessions();
|
|
|
|
|
$user = $oSession->getSessionUser($sessionId);
|
|
|
|
|
|
|
|
|
|
$oRBAC = RBAC::getSingleton();
|
|
|
|
|
$oRBAC->loadUserRolePermission($oRBAC->sSystem, $user['USR_UID']);
|
|
|
|
|
$aPermissions = $oRBAC->aUserInfo[$oRBAC->sSystem]['PERMISSIONS'];
|
|
|
|
|
$sw=0;
|
|
|
|
|
foreach ($aPermissions as $aPermission) {
|
|
|
|
|
if ($aPermission['PER_CODE'] == $permission)
|
|
|
|
|
{
|
|
|
|
|
$sw=1;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return $sw;
|
|
|
|
|
}
|
2011-02-02 21:29:47 +00:00
|
|
|
|
|
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
$server = new SoapServer( $wsdl );
|
|
|
|
|
$server->addFunction("Login");
|
|
|
|
|
$server->addFunction("ProcessList");
|
|
|
|
|
$server->addFunction("CaseList");
|
|
|
|
|
$server->addFunction("RoleList");
|
|
|
|
|
$server->addFunction("GroupList");
|
|
|
|
|
$server->addFunction("DepartmentList");
|
|
|
|
|
$server->addFunction("UserList");
|
|
|
|
|
$server->addFunction("TriggerList");
|
|
|
|
|
$server->addFunction("outputDocumentList");
|
|
|
|
|
$server->addFunction("inputDocumentList");
|
|
|
|
|
$server->addFunction("inputDocumentProcessList");
|
|
|
|
|
$server->addFunction("removeDocument");
|
|
|
|
|
$server->addFunction("SendMessage");
|
|
|
|
|
$server->addFunction("SendVariables");
|
|
|
|
|
$server->addFunction("GetVariables");
|
|
|
|
|
$server->addFunction("DerivateCase");
|
|
|
|
|
$server->addFunction("RouteCase");
|
|
|
|
|
$server->addFunction("executeTrigger");
|
|
|
|
|
$server->addFunction("NewCaseImpersonate");
|
|
|
|
|
$server->addFunction("NewCase");
|
|
|
|
|
$server->addFunction("AssignUserToGroup");
|
|
|
|
|
$server->addFunction("AssignUserToDepartment");
|
|
|
|
|
$server->addFunction("CreateGroup");
|
|
|
|
|
$server->addFunction("CreateDepartment");
|
|
|
|
|
$server->addFunction("CreateUser");
|
|
|
|
|
$server->addFunction("getCaseInfo");
|
|
|
|
|
$server->addFunction("TaskList");
|
|
|
|
|
$server->addFunction("TaskCase");
|
|
|
|
|
$server->addFunction("ReassignCase");
|
|
|
|
|
$server->addFunction("systemInformation");
|
|
|
|
|
$server->addFunction("importProcessFromLibrary");
|
2011-02-02 21:29:47 +00:00
|
|
|
$server->addFunction("removeUserFromGroup");
|
2010-12-02 23:34:41 +00:00
|
|
|
$server->handle();
|
|
|
|
|
|