diff --git a/gulliver/js/maborak/core/maborak.loader.js b/gulliver/js/maborak/core/maborak.loader.js index 310ea109a..b87e81c97 100644 --- a/gulliver/js/maborak/core/maborak.loader.js +++ b/gulliver/js/maborak/core/maborak.loader.js @@ -592,11 +592,13 @@ else if(this.type=="group") {this.parent.dom.setStyle(this.options.elements[i],{left:this.elementStart[i].x+(cursor.x-this.cursorStart.x),top:this.elementStart[i].y+(cursor.y-this.cursorStart.y)});}} else if(this.type=="link") {if(this.options.limit===true) -{var rng=this.parent.dom.positionRange(this.linkRef,false,true);rG={l:true,t:true};for(i=0;i(screen.width-(element.clientWidth+25))){rG.l=false;} +if(tT>(screen.height-(element.clientHeight+200))){rG.t=false;} +if(rG.l) {this.parent.dom.setStyle(this.linkRef[i],{left:tL});} if(rG.t) {this.parent.dom.setStyle(this.linkRef[i],{top:tT});}}} @@ -1005,7 +1007,7 @@ mainPanel=new leimnud.module.panel();mainPanel.options={limit:true,size:{w:850,h function showNewProcessMap(PRO_UID) {window.location="../bpmnDesigner?id="+PRO_UID;} function showLogCaseSchedulerList(PRO_UID) -{mainPanel=new leimnud.module.panel();mainPanel.options={size:{w:640,h:450},position:{x:0,y:0,center:true},title:"Case Scheduler Log List",theme:"processmaker",statusBar:false,control:{resize:false,roll:false,drag:true},fx:{modal:true,opacity:true,blinkToFront:false,fadeIn:false,drag:true}};mainPanel.events={remove:function(){delete(mainPanel);}.extend(this)};mainPanel.make();mainPanel.loader.show();var oRPC=new leimnud.module.rpc.xmlhttp({url:'processes_Ajax',args:'action=log_case_scheduler&PRO_UID='+PRO_UID});oRPC.callback=function(rpc){mainPanel.loader.hide();var scs=rpc.xmlhttp.responseText.extractScript();mainPanel.addContent(rpc.xmlhttp.responseText);scs.evalScript();}.extend(this);oRPC.make();} +{mainPanel=new leimnud.module.panel();mainPanel.options={limit:true,size:{w:640,h:450},position:{x:0,y:0,center:true},title:"Case Scheduler Log List",theme:"processmaker",statusBar:false,control:{resize:false,roll:false,drag:true},fx:{modal:true,opacity:true,blinkToFront:false,fadeIn:false,drag:true}};mainPanel.events={remove:function(){delete(mainPanel);}.extend(this)};mainPanel.make();mainPanel.loader.show();var oRPC=new leimnud.module.rpc.xmlhttp({url:'processes_Ajax',args:'action=log_case_scheduler&PRO_UID='+PRO_UID});oRPC.callback=function(rpc){mainPanel.loader.hide();var scs=rpc.xmlhttp.responseText.extractScript();mainPanel.addContent(rpc.xmlhttp.responseText);scs.evalScript();}.extend(this);oRPC.make();} function exitEditor() {location.href='../processes/mainInit';} function moldTitle(title,size) diff --git a/gulliver/js/maborak/core/module.drag.js b/gulliver/js/maborak/core/module.drag.js index 2f90d9132..425cb8bca 100755 --- a/gulliver/js/maborak/core/module.drag.js +++ b/gulliver/js/maborak/core/module.drag.js @@ -268,7 +268,6 @@ leimnud.Package.Public({ { if(this.options.limit===true) { - var rng=this.parent.dom.positionRange(this.linkRef,false,true); rG={ l:true, t:true @@ -284,6 +283,12 @@ leimnud.Package.Public({ { tL=parseInt(this.elementStart[i].x+(cursor.x-this.cursorStart.x),10); tT=parseInt(this.elementStart[i].y+(cursor.y-this.cursorStart.y),10); + if (tL > (screen.width - (element.clientWidth + 25))) { + rG.l = false; + } + if (tT > (screen.height - (element.clientHeight + 200))) { + rG.t = false; + } if(rG.l) { this.parent.dom.setStyle(this.linkRef[i],{ diff --git a/workflow/engine/classes/class.Installer.php b/workflow/engine/classes/class.Installer.php index 4c82f4005..4984401cf 100755 --- a/workflow/engine/classes/class.Installer.php +++ b/workflow/engine/classes/class.Installer.php @@ -267,6 +267,73 @@ class Installer break; } } + + //ACTIVE ENTERPRISE + + ini_set('max_execution_time', '0'); + ini_set('memory_limit', '256M'); + + $serv = 'http://'; + if (isset($_SERVER['HTTPS']) && trim($_SERVER['HTTPS']) != '') { + $serv = 'https://'; + } + $serv .= $_SERVER['SERVER_NAME']; + if (isset($_SERVER['SERVER_PORT']) && trim($_SERVER['SERVER_PORT']) != '') { + $serv .= ':' . $_SERVER['SERVER_PORT']; + } + + // create session + $cookiefile = sys_get_temp_dir() . PATH_SEP . 'curl-session'; + + $fp = fopen($cookiefile, "w"); + fclose($fp); + chmod($cookiefile, 0777); + + $user = urlencode($this->options['admin']['username']); + $pass = urlencode($this->options['admin']['password']); + $workspace = $this->options['name']; + $lang = SYS_LANG; + $skinName = SYS_SKIN; + + $ch = curl_init(); + + // set URL and other appropriate options + curl_setopt($ch, CURLOPT_URL, "$serv/sys{$workspace}/{$lang}/{$skinName}/login/authentication"); + curl_setopt($ch, CURLOPT_HEADER, 0); + curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile); + curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiefile); + curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false); + curl_setopt($ch, CURLOPT_POST, true); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + curl_setopt($ch, CURLOPT_POSTFIELDS, "form[USR_USERNAME]=$user&form[USR_PASSWORD]=$pass&form[USER_LANG]=$lang"); + curl_setopt($ch, CURLOPT_TIMEOUT, 90); + + $output = curl_exec($ch); + curl_close($ch); + + $ch = curl_init(); + $postData = array(); + // resolv the plugin name + $plugins = glob(PATH_CORE."plugins/*.tar"); + if (count($plugins) > 0) { + $pluginName = $plugins[0]; + + // File to upload/post + $postData['form[PLUGIN_FILENAME]'] = "@{$pluginName}"; + curl_setopt($ch, CURLOPT_URL, "$serv/sys{$workspace}/{$lang}/{$skinName}/setup/pluginsImportFile"); + curl_setopt($ch, CURLOPT_HEADER, 0); + curl_setopt($ch, CURLOPT_VERBOSE, 0); + curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile); + curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiefile); + curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false); + curl_setopt($ch, CURLOPT_POST, true); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); + curl_setopt($ch, CURLOPT_TIMEOUT, 90); + + $output = curl_exec($ch); + curl_close($ch); + } } } diff --git a/workflow/engine/js/dbConnections/main.js b/workflow/engine/js/dbConnections/main.js index 9c3c193c4..1cdf99c21 100755 --- a/workflow/engine/js/dbConnections/main.js +++ b/workflow/engine/js/dbConnections/main.js @@ -14,6 +14,7 @@ var oPanel; function newDbConnection() { oPanel = new leimnud.module.panel(); oPanel.options = { + limit :true, size :{w:450,h:380}, position:{x:0,y:0,center:true}, title :G_STRINGS.ID_DBS_NEW, @@ -129,6 +130,7 @@ function editDbConnection(DBS_UID) oPanel = new leimnud.module.panel(); oPanel.options = { + limit :true, size :{w:450,h:380}, position:{x:0,y:0,center:true}, title :G_STRINGS.ID_DBS_EDIT, @@ -235,6 +237,7 @@ function testDBConnection() var myPanel = new leimnud.module.panel(); currentPopupWindow = myPanel; myPanel.options = { + limit :true, size:{w:500,h:400}, position:{center:true}, title: G_STRINGS.DBCONNECTIONS_TEST, diff --git a/workflow/engine/js/processmap/core/processmap.js b/workflow/engine/js/processmap/core/processmap.js index e9897e94c..8b155ea9a 100755 --- a/workflow/engine/js/processmap/core/processmap.js +++ b/workflow/engine/js/processmap/core/processmap.js @@ -2772,6 +2772,7 @@ function showLogCaseSchedulerList(PRO_UID) { mainPanel = new leimnud.module.panel(); mainPanel.options = { + limit :true, size :{w:640,h:450}, position:{x:0,y:0,center:true}, title :"Case Scheduler Log List", diff --git a/workflow/engine/methods/cases/proxyReassignUsersList.php b/workflow/engine/methods/cases/proxyReassignUsersList.php index 797b1247b..5b8a7cbe9 100755 --- a/workflow/engine/methods/cases/proxyReassignUsersList.php +++ b/workflow/engine/methods/cases/proxyReassignUsersList.php @@ -70,13 +70,15 @@ $oConf = new Configurations(); $aUsersInvolved = Array(); $ConfEnv = $oConf->getFormats(); -G::LoadClass( 'tasks' ); -$task = new Task(); -$tasks = $task->load($TaskUid); -$rows = $oCases->getUsersToReassign($TaskUid, $_SESSION['USER_LOGGED'], $tasks['PRO_UID']); -foreach ($rows as $row) { - $sCaseUser = G::getFormatUserList( $ConfEnv['format'], $row ); - $aUsersInvolved[] = array ('userUid' => $row['USR_UID'], 'userFullname' => $sCaseUser); +if ($TaskUid != '') { + G::LoadClass( 'tasks' ); + $task = new Task(); + $tasks = $task->load($TaskUid); + $rows = $oCases->getUsersToReassign($TaskUid, $_SESSION['USER_LOGGED'], $tasks['PRO_UID']); + foreach ($rows as $row) { + $sCaseUser = G::getFormatUserList( $ConfEnv['format'], $row ); + $aUsersInvolved[] = array ('userUid' => $row['USR_UID'], 'userFullname' => $sCaseUser); + } } // $oTmp = new stdClass(); diff --git a/workflow/engine/methods/processes/processes_Ajax.php b/workflow/engine/methods/processes/processes_Ajax.php index 78ab9373e..cd3fefdc4 100755 --- a/workflow/engine/methods/processes/processes_Ajax.php +++ b/workflow/engine/methods/processes/processes_Ajax.php @@ -40,7 +40,11 @@ try { //$oJSON = new Services_JSON(); if (isset($_REQUEST['data'])) { - $oData = Bootstrap::json_decode(stripslashes($_REQUEST['data'])); + if($_REQUEST['action']=="addText"||$_REQUEST['action']=="updateText") { + $oData = Bootstrap::json_decode($_REQUEST['data']); + } else { + $oData = Bootstrap::json_decode(stripslashes($_REQUEST['data'])); + } //$oData = $oJSON->decode( stripslashes( $_REQUEST['data'] ) ); $sOutput = ''; $sTask = '';