Files
luos/workflow/engine/methods/setup/webServicesAjax.php

1330 lines
51 KiB
PHP
Executable File

<?php
/**
* webServiceAjax.php
*
* ProcessMaker Open Source Edition
* Copyright (C) 2004 - 2008 Colosa Inc.23
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
*
*/
ini_set ( "soap.wsdl_cache_enabled", "0" ); // enabling WSDL cache
G::LoadClass ( 'ArrayPeer' );
if($RBAC->userCanAccess('PM_SETUP') != 1 && $RBAC->userCanAccess('PM_FACTORY') != 1){
G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels');
//G::header('location: ../login/login');
die;
}
G::LoadInclude ( 'ajax' );
//G::pr($_SESSION);
$_POST['action'] = get_ajax_value ( 'action' );
if( $_POST['action'] == '' ){
$_POST['action'] = (isset($_GET['action']))?$_GET['action']: '';
}
switch ($_POST ['action']) {
case 'showForm' :
global $G_PUBLISH;
$xmlform = isset ( $_POST ['wsID'] ) ? 'setup/ws' . $_POST ['wsID'] : '';
if (file_exists ( PATH_XMLFORM . $xmlform . '.xml' )) {
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$G_PUBLISH = new Publisher ( );
$fields ['SESSION_ID'] = isset ( $_SESSION ['WS_SESSION_ID'] ) ? $_SESSION ['WS_SESSION_ID'] : '';
$fields ['ACTION'] = $_POST ['wsID'];
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', $xmlform, '', $fields, '../setup/webServicesAjax' );
G::RenderPage ( 'publish', 'raw' );
}
break;
case 'showDetails' :
G::LoadClass ( 'groups' );
$dbc = new DBConnection ( );
$ses = new DBSession ( $dbc );
if (! isset ( $_SESSION ['END_POINT'] )) {
$aFields ['WS_HOST'] = $_SERVER ['HTTP_HOST'];
$aFields ['WS_WORKSPACE'] = SYS_SYS;
} else {
if (strpos ( $_SESSION ['END_POINT'], 'https' ) !== false) {
preg_match ( '@^(?:https://)?([^/]+)@i', $_SESSION ['END_POINT'], $coincidencias );
} else {
preg_match ( '@^(?:http://)?([^/]+)@i', $_SESSION ['END_POINT'], $coincidencias );
}
$aAux = explode ( ':', $coincidencias [1] );
$aFields ['WS_HOST'] = $aAux [0];
$aFields ['WS_PORT'] = (isset ( $aAux [1] ) ? $aAux [1] : '');
$aAux = explode ( $aAux [0] . (isset ( $aAux [1] ) ? ':' . $aAux [1] : ''), $_SESSION ['END_POINT'] );
$aAux = explode ( '/', $aAux [1] );
$aFields ['WS_WORKSPACE'] = substr ( $aAux [1], 3 );
}
$rows [] = array ('uid' => 'char', 'name' => 'char', 'age' => 'integer', 'balance' => 'float' );
$rows [] = array ('uid' => 'http', 'name' => 'http' );
$rows [] = array ('uid' => 'https', 'name' => 'https' );
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['protocol'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
if (! isset ( $_SESSION ['END_POINT'] )) {
//$wsdl = 'http://'.$_SERVER['HTTP_HOST'].'/sys'.SYS_SYS.'/en/green/services/wsdl';
$wsdl = 'http://' . $_SERVER ['HTTP_HOST'];
$workspace = SYS_SYS;
} else {
$wsdl = $_SESSION ['END_POINT'];
$workspace = $_SESSION ['WS_WORKSPACE'];
}
$defaultEndpoint = 'http://' . $_SERVER ['SERVER_NAME'] . ':' . $_SERVER ['SERVER_PORT'] . '/sys' . SYS_SYS . '/en/green/services/wsdl2';
$wsdl = isset ( $_SESSION ['END_POINT'] ) ? $_SESSION ['END_POINT'] : $defaultEndpoint;
$wsSessionId = '';
if (isset ( $_SESSION ['WS_SESSION_ID'] )) {
$wsSessionId = $_SESSION ['WS_SESSION_ID'];
}
$aFields ['WSDL'] = $wsdl;
$aFields ['OS'] = $workspace;
$aFields ['WSID'] = $wsSessionId;
$G_PUBLISH = new Publisher ( );
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/webServicesDetails', '', $aFields, 'webServicesSetupSave' );
G::RenderPage ( "publish", "raw" );
break;
case 'showUploadFilesForm':
global $G_PUBLISH;
$xmlform = 'setup/wsSendFiles';
if (file_exists ( PATH_XMLFORM . $xmlform . '.xml' )) {
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$G_PUBLISH = new Publisher ( );
$fields ['SESSION_ID'] = isset ( $_SESSION ['WS_SESSION_ID'] ) ? $_SESSION ['WS_SESSION_ID'] : '';
$fields ['ACTION'] = 'wsSendFiles';
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', $xmlform, '', $fields, '../setup/webServicesAjax');
G::RenderPage ( 'publish', 'blank' );
}
break;
}try {
global $G_PUBLISH;
if (isset ( $_POST ['form'] ['ACTION'] )) {
$frm = $_POST ['form'];
$action = $frm ['ACTION'];
if (isset ( $_POST ["epr"] )) {
$_SESSION ['END_POINT'] = $_POST ["epr"];
}
$defaultEndpoint = 'http://' . $_SERVER ['SERVER_NAME'] . ':' . $_SERVER ['SERVER_PORT'] . '/sys' . SYS_SYS . '/en/green/services/wsdl2';
$endpoint = isset ( $_SESSION ['END_POINT'] ) ? $_SESSION ['END_POINT'] : $defaultEndpoint;
$sessionId = isset ( $_SESSION ['SESSION_ID'] ) ? $_SESSION ['SESSION_ID'] : '';
@$client = new SoapClient ( $endpoint );
switch ($action) {
case "Login" :
$user = $frm ["USER_ID"];
$pass = $frm ["PASSWORD"];
$params = array ('userid' => $user, 'password' => $pass );
$result = $client->__SoapCall ( 'login', array ($params ) );
$_SESSION ['WS_SESSION_ID'] = '';
if ($result->status_code == 0) {
$_SESSION ['WS_SESSION_ID'] = $result->message;
}
$G_PUBLISH = new Publisher ( );
$fields ['status_code'] = $result->status_code;
$fields ['message'] = 'ProcessMaker WebService version: ' . $result->version . "\n" . $result->message;
$fields ['version'] = $result->version;
$fields ['time_stamp'] = $result->timestamp;
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
G::RenderPage ( 'publish', 'raw' );
break;
case "ProcessList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'ProcessList', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'processes');
$G_PUBLISH = new Publisher();
$rows [] = array ('guid' => 'char', 'name' => 'char' );
if( is_array($result) ){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
}
$rows [] = array ('guid' => $guid, 'name' => $name );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['process'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'process' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrProcessList', $c );
} else if( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "RoleList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'RoleList', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'roles');
$G_PUBLISH = new Publisher ();
$rows [] = array ('guid' => 'char', 'name' => 'char');
if ( is_array ( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
}
$rows [] = array ('guid' => $guid, 'name' => $name );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['role'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'role' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrRoleList', $c );
} else if( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "GroupList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'GroupList', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'groups');
$G_PUBLISH = new Publisher ( );
$rows [] = array ('guid' => 'char', 'name' => 'char' );
if (is_array ( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
}
$rows [] = array ('guid' => $guid, 'name' => $name );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['group'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'group' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrGroupList', $c );
} else if( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "CaseList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'CaseList', array ($params ) );
$G_PUBLISH = new Publisher ( );
$rows [] = array ('guid' => 'char', 'name' => 'char', 'status' => 'char', 'delIndex' => 'char' );
$result = G::PMWSCompositeResponse($wsResponse, 'cases');
if ( is_array( $result )) {
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'status')
$status = $val->value;
if ($val->key == 'delIndex')
$delIndex = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'status')
$status = $val->value;
if ($val->key == 'delIndex')
$delIndex = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
if (isset ( $item->status ))
$status = $item->status;
if (isset ( $item->delIndex ))
$delIndex = $item->delIndex;
}
$rows [] = array ('guid' => $guid, 'name' => $name, 'status' => $status, 'delIndex' => $delIndex );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['case'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'case' );
//$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrCaseList', $c );
} else if( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "UnassignedCaseList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'UnassignedCaseList', array ($params ));
$G_PUBLISH = new Publisher ( );
$rows [] = array ('guid' => 'char', 'name' => 'char', 'delIndex' => 'char' );
$result = G::PMWSCompositeResponse($wsResponse, 'cases');
if ( is_array( $result )) {
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'delIndex')
$delIndex = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'delIndex')
$delIndex = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
if (isset ( $item->delIndex ))
$delIndex = $item->delIndex;
}
$rows [] = array ('guid' => $guid, 'name' => $name, 'delIndex' => $delIndex );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['case'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'case' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrUnassignedCaseList', $c );
}
else if( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "UserList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'UserList', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'users');
$G_PUBLISH = new Publisher();
$rows [] = array ('guid' => 'char', 'name' => 'char' );
if (is_array ( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
}
$rows [] = array ('guid' => $guid, 'name' => $name );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['user'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'user' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrUserList', $c );
} else if( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "SendMessage" :
require_once('classes/model/Application.php');
$sessionId = $frm ["SESSION_ID"];
$from = $frm ["FROM"];
$to = $frm ["TO_EMAIL"];
$cc = isset($frm ["CC_MAIL"]) ?$frm ["CC_MAIL"] :'';
$bcc = isset($frm ["BCC_MAIL"])?$frm ["BCC_MAIL"] :'';
$caseId = $frm ["CASE_ID"];
$subject = $frm ["SUBJECT"];
$message = $frm ["MESSAGE"];
// getting the proUid variable
$oCases = new Application();
$oCases->load($caseId);
$proUid = $oCases->getProUid();
$caseNumber = $oCases->getAppNumber();
// generating the path for the template msj
$templateFile = PATH_DB.SYS_SYS.PATH_SEP.'mailTemplates'.PATH_SEP.$proUid.PATH_SEP.'tempTemplate.hml';
// generating the file adding the msj variable
$messageBody = "message for case: ".$caseNumber. "<br>" . $message;
file_put_contents($templateFile, $messageBody);
$params = array ( 'sessionId' => $sessionId,
'caseId' => $caseId,
'from' => $from,
'to' => $to,
'cc' => $cc,
'bcc' => $bcc,
'subject' => $subject,
'template' => 'tempTemplate.hml' );
$result = $client->__SoapCall ( 'sendMessage', 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;
case "SendVariables" :
$sessionId = $frm ["SESSION_ID"];
$caseId = $frm ["CASE_ID"];
$variables = Array();
$o = new stdClass();
$o->name = $frm ["NAME1"];
$o->value = $frm ["VALUE1"];
array_push($variables, $o);
$o = new stdClass();
$o->name = $frm ["NAME2"];
$o->value = $frm ["VALUE2"];
array_push($variables, $o);
$params = array ('sessionId' => $sessionId, 'caseId' => $caseId, 'variables' => $variables );
$result = $client->__SoapCall ( 'SendVariables', 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;
case "DerivateCase" :
$sessionId = $frm ["SESSION_ID"];
$caseId = $frm ["CASE_ID"];
$delIndex = $frm ["DEL_INDEX"];
$params = array ('sessionId' => $sessionId, 'caseId' => $caseId, 'delIndex' => $delIndex );
$result = $client->__SoapCall ( 'RouteCase', 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;
case "ReassignCase" :
$sessionId = $frm ["SESSION_ID"];
$caseId = $frm ["CASE_ID"];
$delIndex = $frm ["DEL_INDEX"];
$userIdSource = $frm ['USERIDSOURCE'];
$userIdTarget = $frm ['USERIDTARGET'];
$params = array ('sessionId' => $sessionId, 'caseId' => $caseId, 'delIndex' => $delIndex, 'userIdSource' => $userIdSource, 'userIdTarget' => $userIdTarget );
$result = $client->__SoapCall ( 'reassignCase', 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;
case "NewCaseImpersonate" :
$sessionId = $frm ["SESSION_ID"];
$processId = $frm ["PROCESS_ID"];
$userId = $frm ["USER_ID"];
$variables = Array();
foreach ( $frm ['VARIABLES'] as $iRow => $aRow ) {
$o = new stdClass();
$o->name = $aRow ['NAME'];
$o->value = $aRow ['VALUE'];
array_push($variables, $o);
}
$params = array ('sessionId' => $sessionId, 'processId' => $processId, 'userId' => $userId, 'variables' => $variables );
$result = $client->__SoapCall ( 'NewCaseImpersonate', 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;
case "NewCase" :
$sessionId = $frm ["SESSION_ID"];
$processId = $frm ["PROCESS_ID"];
$taskId = $frm ["TASK_ID"];
$variables = Array();
foreach ( $frm ['VARIABLES'] as $iRow => $aRow ) {
$o = new stdClass();
$o->name = $aRow ['NAME'];
$o->value = $aRow ['VALUE'];
array_push($variables, $o);
}
$params = array ('sessionId' => $sessionId, 'processId' => $processId, 'taskId' => $taskId, 'variables' => $variables );
$result = $client->__SoapCall ( 'NewCase', array ($params ) );
$G_PUBLISH = new Publisher ( );
$fields ['status_code'] = $result->status_code;
$fields ['time_stamp'] = $result->timestamp;
if( isset($result->caseId) ){
$fields ['message'] = "Case ID: ".$result->caseId."\nCase Number: ".$result->caseNumber."\n".$result->message;
} else {
$fields ['message'] = '';
}
if( $result->status_code == 9 ){
$_SESSION ['WS_SESSION_ID'] = '';
}
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
G::RenderPage ( 'publish', 'raw' );
break;
case "AssignUserToGroup" :
$sessionId = $frm ["SESSION_ID"];
$userId = $frm ["USER_ID"];
$groupId = $frm ["GROUP_ID"];
$params = array ('sessionId' => $sessionId, 'userId' => $userId, 'groupId' => $groupId );
$result = $client->__SoapCall ( 'AssignUserToGroup', 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;
case "CreateUser" :
$sessionId = $frm ["SESSION_ID"];
$userId = $frm ["USER_ID"];
$firstname = $frm ["FIRST_NAME"];
$lastname = $frm ["LAST_NAME"];
$email = $frm ["EMAIL"];
$role = $frm ["ROLE"];
$password = $frm ["PASSWORD"];
$params = array ('sessionId' => $sessionId, 'userId' => $userId, 'firstname' => $firstname, 'lastname' => $lastname, 'email' => $email, 'role' => $role, 'password' => $password );
$result = $client->__SoapCall ( 'CreateUser', 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;
case "TaskList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'TaskList', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'tasks');
$G_PUBLISH = new Publisher ( );
$rows [] = array ('guid' => 'char', 'name' => 'char' );
if (is_array ( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
}
$rows [] = array ('guid' => $guid, 'name' => $name );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['task'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'task' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrTaskList', $c );
} else if( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "TriggerList" :
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId );
$wsResponse = $client->__SoapCall ( 'triggerList', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'triggers');
$G_PUBLISH = new Publisher ();
$rows [] = array ('guid' => 'char', 'name' => 'char', 'processId' => 'char' );
if (is_array ( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'processId')
$processId = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'processId')
$processId = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
if (isset ( $item->processId ))
$processId = $item->processId;
}
$rows [] = array ('guid' => $guid, 'name' => $name, 'processId' => $processId );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
foreach ( $rows as $key => $row ) {
$proId = $row['processId'];
if ( isset ($_DBArray ['process']) && is_array ($_DBArray ['process']) )
foreach ( $_DBArray ['process'] as $pkey => $prow ) {
if ( $proId == $prow['guid'] ) {
$rows[ $key ]['processId'] = $prow['name'];
}
}
}
$_DBArray ['triggers'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'triggers' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrTriggerList', $c );
} else if ( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "InputDocumentList" :
$caseId = $frm ["CASE_ID"];
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId, 'caseId' => $caseId );
$wsResponse = $client->__SoapCall ( 'InputDocumentList', array ($params ) );
//g::pr($wsResponse);
$result = G::PMWSCompositeResponse($wsResponse, 'documents');
$G_PUBLISH = new Publisher ( );
$rows [] = array ('guid' => 'char', 'name' => 'char', 'processId' => 'char' );
if (is_array( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'filename')
$filename = $val->value;
if ($val->key == 'docId')
$docId = $val->value;
if ($val->key == 'version')
$version = $val->value;
if ($val->key == 'createDate')
$createDate = $val->value;
if ($val->key == 'createBy')
$createBy = $val->value;
if ($val->key == 'type')
$type = $val->value;
if ($val->key == 'link')
$link = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'filename')
$filename = $val->value;
if ($val->key == 'docId')
$docId = $val->value;
if ($val->key == 'version')
$version = $val->value;
if ($val->key == 'createDate')
$createDate = $val->value;
if ($val->key == 'createBy')
$createBy = $val->value;
if ($val->key == 'type')
$type = $val->value;
if ($val->key == 'link')
$link = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->filename ))
$filename = $item->filename;
if (isset ( $item->docId ))
$docId = $item->docId;
if (isset ( $item->version ))
$version = $item->version;
if (isset ( $item->createDate ))
$createDate = $item->createDate;
if (isset ( $item->createBy ))
$createBy = $item->createBy;
if (isset ( $item->type ))
$type = $item->type;
if (isset ( $item->link ))
$link = $item->link;
}
$rows [] = array ('guid' => $guid, 'filename' => $filename, 'docId' => $docId, 'version' => $version,
'createDate' => $createDate, 'createBy' => $createBy, 'type' => $type, 'link' => $link );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['inputDocument'] = $rows;
$documentArray = array();
$documentArray[] = array ('guid' => 'char', 'filename' => 'char' );
if ( isset($_DBArray ['inputDocument']) )
foreach ( $_DBArray ['inputDocument'] as $key => $val )
if ( $key != 0 && isset ($val['filename']) )
$documentArray[] = array ('guid' => $val['guid'], 'filename' => $val['filename'] );
if ( isset($_DBArray ['outputDocument']) )
foreach ( $_DBArray ['outputDocument'] as $key => $val )
if ( $key != 0 && isset ($val['filename']) )
$documentArray[] = array ('guid' => $val['guid'], 'filename' => $val['filename'] );
$_DBArray ['documents'] = $documentArray;
$_DBArray ['WS_TMP_CASE_UID'] = $frm ["CASE_ID"];
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'inputDocument' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrInputDocumentList', $c );
} else if ( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "InputDocumentProcessList" :
$processId = $frm ["PROCESS_ID"];
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId, 'processId' => $processId );
$wsResponse = $client->__SoapCall ( 'InputDocumentProcessList', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'documents');
$G_PUBLISH = new Publisher();
$rows [] = array ('guid' => 'char', 'name' => 'char', 'description' => 'char' );
if (is_array ( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'description')
$description = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
if ($val->key == 'description')
$description = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
if (isset ( $item->description ))
$description = $item->description;
}
$rows [] = array ('guid' => $guid, 'name' => $name, 'description' => $description );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['inputDocuments'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'inputDocuments' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrInputDocumentProcessList', $c );
} else if ( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "OutputDocumentList" :
$caseId = $frm ["CASE_ID"];
$sessionId = $frm ["SESSION_ID"];
$params = array ('sessionId' => $sessionId, 'caseId' => $caseId );
$wsResponse = $client->__SoapCall ( 'outputDocumentList', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'documents');
$G_PUBLISH = new Publisher ( );
$rows = array();
$rows [] = array ('guid' => 'char', 'name' => 'char' );
if (is_array ( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'filename')
$filename = $val->value;
if ($val->key == 'docId')
$docId = $val->value;
if ($val->key == 'version')
$version = $val->value;
if ($val->key == 'createDate')
$createDate = $val->value;
if ($val->key == 'createBy')
$createBy = $val->value;
if ($val->key == 'type')
$type = $val->value;
if ($val->key == 'link')
$link = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'filename')
$filename = $val->value;
if ($val->key == 'docId')
$docId = $val->value;
if ($val->key == 'version')
$version = $val->value;
if ($val->key == 'createDate')
$createDate = $val->value;
if ($val->key == 'createBy')
$createBy = $val->value;
if ($val->key == 'type')
$type = $val->value;
if ($val->key == 'link')
$link = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->filename ))
$filename = $item->filename;
if (isset ( $item->docId ))
$docId = $item->docId;
if (isset ( $item->version ))
$version = $item->version;
if (isset ( $item->createDate ))
$createDate = $item->createDate;
if (isset ( $item->createBy ))
$createBy = $item->createBy;
if (isset ( $item->type ))
$type = $item->type;
if (isset ( $item->link ))
$link = $item->link;
}
$rows [] = array ('guid' => $guid, 'filename' => $filename, 'docId' => $docId, 'version' => $version,
'createDate' => $createDate, 'createBy' => $createBy, 'type' => $type, 'link' => $link );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['outputDocument'] = $rows;
$documentArray = array();
$documentArray[] = array ('guid' => 'char', 'filename' => 'char' );
if ( isset($_DBArray ['inputDocument']) )
foreach ( $_DBArray ['inputDocument'] as $key => $val )
if ( $key != 0 && isset ($val['filename']) )
$documentArray[] = array ('guid' => $val['guid'], 'filename' => $val['filename'] );
if ( isset($_DBArray ['outputDocument']) )
foreach ( $_DBArray ['outputDocument'] as $key => $val )
if ( $key != 0 && isset ($val['filename']) )
$documentArray[] = array ('guid' => $val['guid'], 'filename' => $val['filename'] );
$_DBArray ['documents'] = $documentArray;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'outputDocument' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrOutputDocumentList', $c );
} else if ( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
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"];
$params = array ('sessionId' => $sessionId, 'appDocUid' => $appDocUid );
$result = $client->__SoapCall ( 'RemoveDocument', array ($params ) );
$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 = new Publisher ( );
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
G::RenderPage ( 'publish', 'raw' );
break;
case "TaskCase" :
$sessionId = $frm ["SESSION_ID"];
$caseId = $frm ["CASE_ID"];
$params = array ('sessionId' => $sessionId, 'caseId' => $caseId );
$wsResponse = $client->__SoapCall ( 'TaskCase', array ($params ) );
$result = G::PMWSCompositeResponse($wsResponse, 'taskCases');
$G_PUBLISH = new Publisher ( );
$rows [] = array ('guid' => 'char', 'name' => 'char' );
if (is_array ( $result )){
foreach ( $result as $key => $item ) {
if (isset ( $item->item ))
foreach ( $item->item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else if (is_array ( $item ))
foreach ( $item as $index => $val ) {
if ($val->key == 'guid')
$guid = $val->value;
if ($val->key == 'name')
$name = $val->value;
}
else {
if (isset ( $item->guid ))
$guid = $item->guid;
if (isset ( $item->name ))
$name = $item->name;
}
$rows [] = array ('guid' => $guid, 'name' => $name );
}
global $_DBArray;
$_DBArray = (isset ( $_SESSION ['_DBArray'] ) ? $_SESSION ['_DBArray'] : '');
$_DBArray ['taskCases'] = $rows;
$_SESSION ['_DBArray'] = $_DBArray;
G::LoadClass ( 'ArrayPeer' );
$c = new Criteria ( 'dbarray' );
$c->setDBArrayTable ( 'taskCases' );
$c->addAscendingOrderByColumn ( 'name' );
$G_PUBLISH->AddContent ( 'propeltable', 'paged-table', 'setup/wsrTaskCase', $c );
} else if ( is_object($result) ){
$_SESSION ['WS_SESSION_ID'] = '';
$fields ['status_code'] = $result->status_code;
$fields ['message'] = $result->message;
$fields ['time_stamp'] = date("Y-m-d H:i:s");
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
}
G::RenderPage ( 'publish', 'raw' );
break;
case "wsSendFiles" :
if ( isset($_FILES['form']) ) {
foreach ($_FILES['form']['name'] as $sFieldName => $vValue) {
if ( $_FILES['form']['error'][$sFieldName] == 0 ){
file_put_contents(G::sys_get_temp_dir().PATH_SEP.$_FILES['form']['name'][$sFieldName], file_get_contents($_FILES['form']['tmp_name'][$sFieldName]));
$filename = G::sys_get_temp_dir().PATH_SEP.$_FILES['form']['name'][$sFieldName];
}
}
}
// G::pr ( $_SESSION );
if(!isset($_POST['form']['INPUT_DOCUMENT'])){
$_POST['form']['INPUT_DOCUMENT'] = '';
}
if (isset($_SESSION['_DBArray']['inputDocument'])){
foreach($_SESSION['_DBArray']['inputDocument'] as $inputDocument){
if ($inputDocument['guid']==$_POST['form']['INPUT_DOCUMENT']){
$doc_uid = $inputDocument['docId'];
}
}
} else {
$doc_uid = "default";
}
if(!isset($_SESSION['_DBArray']['WS_TMP_CASE_UID'])){
$_SESSION['_DBArray']['WS_TMP_CASE_UID'] = '';
}
$usr_uid = $_SESSION['USER_LOGGED'];
$app_uid = $_SESSION['_DBArray']['WS_TMP_CASE_UID'];
$del_index = 1;
function sendFile($FILENAME, $USR_UID, $APP_UID, $DEL_INDEX = 1, $DOC_UID = NULL, $title = NULL, $comment = NULL) {
$defaultEndpoint = 'http://' . $_SERVER ['SERVER_NAME'] . ':' . $_SERVER ['SERVER_PORT'] . '/sys' . SYS_SYS . '/en/green/services/upload';
$upload = isset ( $_SESSION ['END_POINT'] ) ? $_SESSION ['END_POINT'] : $defaultEndpoint;
$DOC_UID = ($DOC_UID != NULL) ? $DOC_UID : - 1;
$APP_DOC_TYPE = ($DOC_UID == - 1) ? 'ATTACHED' : 'INPUT';
$title = ($title != NULL) ? $title : $FILENAME;
$comment = ($comment != NULL) ? $comment : '';
$params = array (
'ATTACH_FILE' => "@$FILENAME",
'APPLICATION' => $APP_UID,
'INDEX' => $DEL_INDEX,
'USR_UID' => $USR_UID,
'DOC_UID' => $DOC_UID,
'APP_DOC_TYPE' => $APP_DOC_TYPE,
'TITLE' => $title,
'COMMENT' => $comment
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $defaultEndpoint);
//curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
$fields ['status_code'] = 0;
$fields ['time_stamp'] = date( "Y-m-d H:i:s" );
if ($_POST['form']['UPLOAD_OPTION']=='1'){
// G::pr($doc_uid);
$fields ['message'] = sendFile($filename, $usr_uid, $app_uid, 1, $doc_uid);
} else {
$fields ['message'] = sendFile($filename, $usr_uid, $app_uid);
}
$G_PUBLISH = new Publisher ( );
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'setup/wsShowResult', null, $fields );
G::RenderPage ( 'publish', 'blank' );
die ();
break;
default :
print_r ( $_POST );
}
}
global $_DBArray;
} catch ( Exception $e ) {
$G_PUBLISH = new Publisher ( );
$aMessage ['MESSAGE'] = $e->getMessage ();
$G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'login/showMessage', '', $aMessage );
G::RenderPage ( 'publish', 'raw' );
}