diff --git a/workflow/engine/js/controls/variablePicker.js b/workflow/engine/js/controls/variablePicker.js old mode 100644 new mode 100755 index c44ca4807..47879c843 --- a/workflow/engine/js/controls/variablePicker.js +++ b/workflow/engine/js/controls/variablePicker.js @@ -1,3 +1,10 @@ +//function onLoad(){ + // generateListValues(document.getElementById('prefix').value); +//} +//window.onload=function(){ + //generateListValues(document.getElementById('prefix').value); +//}; + var getValue = function (list) { insertFormVar(document.getElementById('selectedField').value,list.value); } @@ -19,6 +26,22 @@ var getVariableList = function (queryText, proUid, varType){ return responseData; } +var getPrefix = function (prefix) { + if(document.getElementById('prefix').value=='ID_TO_STRING') + prefix='@@'; + else if(document.getElementById('prefix').value=='ID_TO_FLOAT') + prefix='@#'; + else if(document.getElementById('prefix').value=='ID_TO_INTEGER') + prefix='@%'; + else if(document.getElementById('prefix').value=='ID_TO_URL') + prefix='@?'; + else if(document.getElementById('prefix').value=='ID_SQL_ESCAPE') + prefix='@$'; + else if(document.getElementById('prefix').value=='ID_REPLACE_WITHOUT_CHANGES') + prefix='@='; + return prefix; +} + var getPrefixInfo = function (prefix){ var oRPC = new leimnud.module.rpc.xmlhttp({ url : "../processes/processes_Ajax", @@ -31,11 +54,13 @@ var getPrefixInfo = function (prefix){ } leimnud.event.add(document.getElementById('type_variables'), 'change', function(event) { - generateListValues(); + var prefix=getPrefix(document.getElementById('prefix').value); + generateListValues(prefix); }); leimnud.event.add(document.getElementById('prefix'), 'change', function(event) { - document.getElementById('desc_prefix').textContent = getPrefixInfo(document.getElementById('prefix').value); + var prefix=getPrefix(document.getElementById('prefix').value); + generateListValues(prefix); }); leimnud.event.add(document.getElementById('_Var_Form_'), 'change', function(event) { @@ -43,38 +68,38 @@ leimnud.event.add(document.getElementById('_Var_Form_'), 'change', function(even }); leimnud.event.add(document.getElementById('search'), 'keypress', function(e) { - var key = e.keyCode; - if(key == '13'){ - // elements that will be part of a function - var list = getVariableList(document.getElementById('search').value, document.getElementById("process").value, document.getElementById('type_variables').value); - for (var i=0; i< list.length; i++){ - console.log(list[i].sName); - } - e.cancelBubble = true; - e.returnValue = false; - if (e.stopPropagation) { - e.stopPropagation(); - e.preventDefault(); - } - //return false; - } + + var prefix=getPrefix(document.getElementById('prefix').value); + var key = e.keyCode; + if(key == '13'){ + generateListValues(prefix); + + e.cancelBubble = true; + e.returnValue = false; + if (e.stopPropagation) { + e.stopPropagation(); + e.preventDefault(); + } + } }); -var generateListValues = function(){ - - var list = getVariableList('', document.getElementById("process").value, document.getElementById('type_variables').value); - var combo = document.getElementById("_Var_Form_"); +function generateListValues (prefix){ + + var list = getVariableList(document.getElementById('search').value, document.getElementById('process').value, document.getElementById('type_variables').value); + var combo = document.getElementById("_Var_Form_"); var option = document.createElement('option'); - for (m=combo.options.length-1;m>=0;m--){ - combo.options[m]=null - } - - for (var i=0; i< list.length; i++){ - console.log(list[i].sValue); - var combo = document.getElementById("_Var_Form_"); - var option = document.createElement('option'); - combo.options.add(option, 0); - combo.options[0].value = list[i].sName; - combo.options[0].text ='@@'+list[i].sName+' ('+list[i].sLabel+')'; + for (m=combo.options.length-1;m>=0;m--){ + combo.options[m]=null } + if(list.length>0){ + for (var i=0; i< list.length; i++){ + combo.options.add(option, 0); + combo.options[0].value = list[i].sName; + combo.options[0].text = prefix+list[i].sName+' ('+list[i].sLabel+')'; + } + } else { + combo.options.add(option, 0); + combo.options[0].value = '0'; + combo.options[0].text = 'No results'; + } } diff --git a/workflow/engine/methods/controls/varsAjax.php b/workflow/engine/methods/controls/varsAjax.php index 23b4df451..59964cb66 100755 --- a/workflow/engine/methods/controls/varsAjax.php +++ b/workflow/engine/methods/controls/varsAjax.php @@ -21,7 +21,7 @@ * For more information, contact Colosa Inc, 2566 Le Jeune Rd., * Coral Gables, FL, 33134, USA, or email info@colosa.com. */ -$html = '
'; +$html = ''; $html .= '
'; @@ -62,12 +62,21 @@ $html .= ''; $html .= ''; //$html .= ''; -$html .= ''; + $html .= ''; +$html .= ''; $html .= ''; $html .= ''; $html .= ''; $html .= ''; +/* +$html .= ''; +$html .= ''; +$html .= ''; +$html .= ''; +$html .= ''; +$html .= ''; +*/ $html .= '     '; $html .= '';