BUG 9554 Event setup has a different way to pick Variables ... SOLVED

- The Events->Action call other control "picker" because don't need the key cast description and the System variables
- Changed the appereance and behaviour of the control "picker" in the Event->Action panel
This commit is contained in:
Julio Cesar Laura
2012-08-14 10:58:44 -04:00
parent 49b4279a7f
commit 5be45bfc7a
4 changed files with 57 additions and 76 deletions

View File

@@ -371,7 +371,9 @@ class processMap {
$oPM->taskOptions[]=$taskOption;
}
$oJSON = new Services_JSON ( );
$_SESSION['PROCESS'] = $sProcessUID;
$oJSON = new Services_JSON();
return $oJSON->encode($oPM);
} catch (Exception $oError) {
throw ($oError);

View File

@@ -46,18 +46,18 @@ var EventCompose = function(t){
this.ie = document.all ? true : false;
this.target = t;
this.set= function(v){
this.taget = v;
this.taget = v;
}
this.add=function(){
this.deselectAll();
o = getField(this.target);
val = getField(this.target+'_SIMPLEADD').value;
if(this.exists(val)) {
new leimnud.module.app.alert().make({label: G_STRINGS.EVENT_EMAILEXISTS});
return false;
@@ -69,21 +69,21 @@ var EventCompose = function(t){
new leimnud.module.app.alert().make({label: G_STRINGS.ID_INVALID_EMAIL});
return false;
}
id = val;
id = id.replace('"', '&quote;');
id = id.replace('"', '&quote;');
var newOption = new Option(val, "ext|"+id);
newOption.selected=true;
o.options[o.options.length] = newOption;
getField(this.target+'_SIMPLEADD').value = '';
return false;
}
this.showUsers=function(e){
oPanel = new leimnud.module.panel();
oPanel.options = {
size :{w:400,h:310},
@@ -111,9 +111,9 @@ var EventCompose = function(t){
}.extend(this);
oRPC.make();
}
this.showGroups=function(e){
oPanel = new leimnud.module.panel();
oPanel.options = {
size :{w:350,h:310},
@@ -141,12 +141,12 @@ var EventCompose = function(t){
}.extend(this);
oRPC.make();
}
this.showDynavars=function(e){
oPanel = new leimnud.module.panel();
oPanel.options = {
size :{w:350,h:310},
size :{w:450,h:400},
position:{x:e.clientX,y:e.clientY,center:false},
title :'',
theme :"processmaker",
@@ -174,25 +174,25 @@ var EventCompose = function(t){
this.pos=function(e){
var u = ie ? event.clientY + document.documentElement.scrollTop : e.pageY;
var l = ie ? event.clientX + document.documentElement.scrollLeft : e.pageX;
return 0;
}
this.toAdd= function(id, value, prefix){
if(this.exists(id)) {
new leimnud.module.app.alert().make({label: G_STRINGS.EVENT_EMAILEXISTS});
return false;
}
this.deselectAll();
o = getField(this.target);
if(prefix == 'dyn'){
var newOption = new Option('@#'+value, prefix+"|"+id);
} else {
var newOption = new Option(value, prefix+"|"+id);
}
newOption.selected=true;
o.options[o.options.length] = newOption;
}
@@ -208,17 +208,17 @@ var EventCompose = function(t){
}
o.options.length = 0;
for(i=0; i<Options.length; i++){
if(!Options[i].selected){
//var newOption = new Option(id, value);
o.options[c++] = Options[i]; //newOption;
}
}
}
if(o.options.length>0){
o.options[o.options.length-1].selected = true;
}
}
}
this.deselectAll= function(){
var o = getField(this.target);
for(i=0; i<o.options.length; i++){
@@ -250,5 +250,5 @@ var EventCompose = function(t){
}
}
}
}

View File

@@ -1,10 +1,10 @@
<?php
<?php
$req = $_POST['request'];
switch($req){
case 'showUsers':
/*
/*
$sql = "SELECT USR_UID, USR_EMAIL, CONCAT(USR_FIRSTNAME, ' ' , USR_LASTNAME) AS USR_FULLNAME FROM USERS WHERE USR_STATUS = 'ACTIVE' AND USR_EMAIL <> ''";
*/
$sDataBase = 'database_' . strtolower(DB_ADAPTER);
@@ -13,11 +13,11 @@ switch($req){
$oDataBase = new database();
$sConcat = $oDataBase->concatString("USR_FIRSTNAME", "' '" , "USR_LASTNAME") ;
}
$sql = " SELECT USR_UID, USR_EMAIL, " .
$sql = " SELECT USR_UID, USR_EMAIL, " .
$sConcat .
" AS USR_FULLNAME FROM USERS " .
" WHERE USR_STATUS = 'ACTIVE' AND USR_EMAIL <> ''";
$oCriteria = new Criteria('workflow');
$del = DBAdapter::getStringDelimiter();
@@ -30,7 +30,7 @@ switch($req){
$aRows[] = array('USR_UID'=>$rs->getString('USR_UID'), 'USR_EMAIL'=>$rs->getString('USR_EMAIL'), 'USR_FULLNAME'=>$rs->getString('USR_FULLNAME'));
}
//echo '<pre>'; print_r($aRows);
global $_DBArray;
$_DBArray['virtualtable'] = $aRows;
$_SESSION['_DBArray'] = $_DBArray;
@@ -42,20 +42,20 @@ switch($req){
$G_PUBLISH->AddContent('propeltable', 'paged-table', 'events/usermailList', $oCriteria);
G::RenderPage('publish', 'raw');
break;
case 'showGroups':
G::LoadClass('groups');
$groups = new Groups();
$allGroups= $groups->getAllGroups();
$aRows[] = array('GRP_UID' => 'char', 'GROUP_TITLE' => 'char');
foreach($allGroups as $group) {
$UID = htmlentities($group->getGrpUid());
$GROUP_TITLE = strip_tags($group->getGrpTitle());
$aRows[] = array('GRP_UID'=>$UID, 'GROUP_TITLE'=>$GROUP_TITLE);
}
global $_DBArray;
$_DBArray['virtualtable'] = $aRows;
$_SESSION['_DBArray'] = $_DBArray;
@@ -67,38 +67,19 @@ switch($req){
$G_PUBLISH->AddContent('propeltable', 'paged-table', 'events/groupmailList', $oCriteria);
G::RenderPage('publish', 'raw');
break;
case 'showDynavars':
G::LoadClass('processMap');
$oProcessMap = new processMap();
$aDynaforms = $oProcessMap->getDynaformsList($_SESSION['PROCESS']);
//g::pr($aDynaforms);
G::LoadSystem('dynaformhandler');
$aDynaformFields = Array();
foreach($aDynaforms as $dyn){
if( $dyn['DYN_TYPE'] == 'xmlform' ){
if( is_file(PATH_DYNAFORM . "{$_SESSION['PROCESS']}/{$dyn['DYN_UID']}" . '.xml') ){
$oDynaformHandler = new dynaFormHandler(PATH_DYNAFORM . "{$_SESSION['PROCESS']}/{$dyn['DYN_UID']}" . '.xml');
$aDynaformFields[$dyn['DYN_TITLE']] = $oDynaformHandler->getFieldNames();
} else {
continue;
G::LoadClass('xmlfield_InputPM');
$dynaformFields = getDynaformsVars($_SESSION['PROCESS'], false, false);
$fields = array(array('id' => 'char', 'dynaform' => 'char', 'name' => 'char'));
foreach ($dynaformFields as $dynaformField) {
$fields[] = array('id' => $dynaformField['sName'],
'name' => '<a href="#" style="color: black;" onclick="e.toAdd(\'' . $dynaformField['sName'] . '\', \'' . $dynaformField['sName'] . '\', \'dyn\');oPanel.remove();return false;">@#' . $dynaformField['sName'] . '</a>', 'label' => $dynaformField['sLabel']);
}
}
}
//G::pr($aDynaformFields); die;
$aRows = Array();
$aRows[0] = Array('id'=>'char', 'dynaform'=>'char', 'name'=>'char');
foreach($aDynaformFields as $dynName=>$aFields){
foreach($aFields as $sField){
array_push($aRows, Array('id'=>$sField, 'dynaform'=>$dynName, 'name'=>$sField));
}
}
//g::pr($aRows); die;
global $_DBArray;
$_DBArray['virtualtable'] = $aRows;
$_DBArray['virtualtable'] = $fields;
$_SESSION['_DBArray'] = $_DBArray;
G::LoadClass('ArrayPeer');
$oCriteria = new Criteria('dbarray');
@@ -107,6 +88,5 @@ switch($req){
$G_PUBLISH = new Publisher();
$G_PUBLISH->AddContent('propeltable', 'paged-table', 'events/dynavarsList', $oCriteria);
G::RenderPage('publish', 'raw');
break;
}
}

View File

@@ -1,11 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<dynaForm width="100%" rowsPerPage="5">
<dynaForm width="450" rowsPerPage="10">
<id type="private" showInTable="0"/>
<name type="text" width="350" titleAlign="left" align="left">
<en>Var. name</en>
<name type="text" width="200" titleAlign="left" align="left" enableHtml="1">
<en>Variable</en>
</name>
<dynaform type="text" colWidth="350" titleAlign="left" align="left">
<en>Dynaform</en>
</dynaform>
<ASSIGN type="link" colWidth="40" value="@G::LoadTranslation(ID_ASSIGN)" link="#" onclick="e.toAdd(@qid, @qname, &#039;dyn&#039;);return false;"/>
</dynaForm>
<label type="text" width="250" titleAlign="left" align="left">
<en>Label</en>
</label>
</dynaForm>