diff --git a/gulliver/system/class.publisher.php b/gulliver/system/class.publisher.php index 0000e8c93..40b7fc20e 100755 --- a/gulliver/system/class.publisher.php +++ b/gulliver/system/class.publisher.php @@ -293,15 +293,13 @@ class Publisher $oFieldCondition = new FieldCondition(); //This dynaform has show/hide field conditions - $dynUid = ''; if (isset($_SESSION['CURRENT_DYN_UID']) && $_SESSION['CURRENT_DYN_UID'] != '') { - $dynUid = $_SESSION['CURRENT_DYN_UID']; + $ConditionalShowHideRoutines = $oFieldCondition->getConditionScript($_SESSION["CURRENT_DYN_UID"]); //lsl } else { if (isset($_SESSION['CONDITION_DYN_UID']) && $_SESSION['CONDITION_DYN_UID'] != '') { - $dynUid = $_SESSION['CONDITION_DYN_UID']; + $ConditionalShowHideRoutines = $oFieldCondition->getConditionScript($_SESSION["CONDITION_DYN_UID"]); //lsl } } - $ConditionalShowHideRoutines = $oFieldCondition->getConditionScript($dynUid); } } diff --git a/gulliver/system/class.xmlform.php b/gulliver/system/class.xmlform.php index aa8c38a31..b8dc6db09 100755 --- a/gulliver/system/class.xmlform.php +++ b/gulliver/system/class.xmlform.php @@ -3178,17 +3178,12 @@ class XmlForm_Field_Checkbox extends XmlForm_Field $checked = (isset( $value ) && ($value == $this->value)) ? 'checked' : ''; if ($this->labelOnRight) { $html = ''; - $html = "NSFieldType() . " name='form[" . $this->name . "]' type='checkbox' $checked $readOnly disabled > + $html = "NSFieldType() . " type='checkbox' $checked $readOnly disabled /> " . $this->label . ''; } else { - $html = "NSFieldType() . " name='form[" . $this->name . "]' type='checkbox' $checked $readOnly disabled/>"; + $html = "NSFieldType() . " type='checkbox' $checked $readOnly disabled />"; } $html .= ""; - // if($this->hint){ - // $html .= ' - // - // '; - // } return $html; } } @@ -3360,11 +3355,6 @@ class XmlForm_Field_Submit extends XmlForm_Field $sLinkNextStep = 'window.location=("casesSaveDataView?UID=' . $_SESSION['CURRENT_DYN_UID'] . '");'; $html = 'NSFieldType() . ' name="form[' . $this->name . ']" type="button" value="' . G::LoadTranslation( 'ID_CONTINUE' ) . '" onclick="' . htmlentities( $sLinkNextStep, ENT_COMPAT, 'utf-8' ) . '" />'; } - - $html .= 'name . ']" '; - $html .= 'name="form[' . $this->name . ']" '; - $html .= 'type="hidden" value="' . $this->htmlentities( $this->label, ENT_QUOTES, 'utf-8' ) . '" />'; return $html; } else { return $this->htmlentities( $value, ENT_COMPAT, 'utf-8' ); @@ -3616,7 +3606,7 @@ class XmlForm_Field_Dropdown extends XmlForm_Field $html = $html . ""; } - if ($value !== $findValue) { + if ($value !== $findValue && $this->renderMode == 'view') { $html .= ""; } diff --git a/gulliver/thirdparty/propel-generator/classes/propel/engine/builder/om/php5/PHP5BasicObjectBuilder.php b/gulliver/thirdparty/propel-generator/classes/propel/engine/builder/om/php5/PHP5BasicObjectBuilder.php index 7a656ac87..a448320c8 100755 --- a/gulliver/thirdparty/propel-generator/classes/propel/engine/builder/om/php5/PHP5BasicObjectBuilder.php +++ b/gulliver/thirdparty/propel-generator/classes/propel/engine/builder/om/php5/PHP5BasicObjectBuilder.php @@ -588,7 +588,15 @@ abstract class ".$this->getClassname()." extends ".ClassTools::classname($this-> $script .= " if (\$v !== null && !is_int(\$v)) { - \$ts = strtotime(\$v); + \$ts = strtotime(\$v);"; + if ($col->getPhpDefaultValue() != 1) { + $script .= " + //Date/time accepts null values + if (\$v == '') { + \$ts = null; + }"; + } + $script .=" if (\$ts === -1 || \$ts === false) { throw new PropelException(\"Unable to parse date/time value for [$clo] from input: \" . var_export(\$v, true)); diff --git a/workflow/engine/classes/class.pmFunctions.php b/workflow/engine/classes/class.pmFunctions.php index 1c769798a..b7d3c486d 100755 --- a/workflow/engine/classes/class.pmFunctions.php +++ b/workflow/engine/classes/class.pmFunctions.php @@ -2843,8 +2843,9 @@ function PMFAddAttachmentToArray($arrayData, $index, $value, $suffix = " Copy({i * * It delete the mask a field. * - * @name PMFAddAttachmentToArray - * + * @name PMFRemoveMask + * @label PMF Remove Mask + * * @param string | $field | Value the field * @param string | $separator | Separator of thousands (, or .) * @param string | $currency | symbol of currency @@ -2852,7 +2853,7 @@ function PMFAddAttachmentToArray($arrayData, $index, $value, $suffix = " Copy({i * */ -function PMRemoveMask ($field, $separator = '.', $currency = '') +function PMFRemoveMask ($field, $separator = '.', $currency = '') { $sep = array(); if ( trim($currency) != '') { diff --git a/workflow/engine/classes/class.wsBase.php b/workflow/engine/classes/class.wsBase.php index afb70d7f7..618101068 100755 --- a/workflow/engine/classes/class.wsBase.php +++ b/workflow/engine/classes/class.wsBase.php @@ -3080,7 +3080,6 @@ class wsBase return $result; } - if (empty( $userUid )) { $result = new wsResponse( 100, G::LoadTranslation( "ID_REQUIRED_FIELD" ) . " userUid" ); @@ -3088,8 +3087,7 @@ class wsBase return $result; } - - if (! empty( $unpauseDate )) { + if( strlen($unpauseDate) >=10 ){ if (! preg_match( "/^\d{4}-\d{2}-\d{2}| \d{2}:\d{2}:\d{2}$/", $unpauseDate )) { $result = new wsResponse( 100, G::LoadTranslation( "ID_INVALID_DATA" ) . " $unpauseDate" ); @@ -3097,8 +3095,9 @@ class wsBase return $result; } + } else { + $unpauseDate = null; } - $case = new Cases(); $case->pauseCase( $caseUid, $delIndex, $userUid, $unpauseDate ); @@ -3109,7 +3108,6 @@ class wsBase ); $g->sessionVarRestore(); - return $result; } catch (Exception $e) { $result = new wsResponse(100, $e->getMessage()); diff --git a/workflow/engine/methods/appFolder/appFolderAjax.php b/workflow/engine/methods/appFolder/appFolderAjax.php index 9f07313e3..6ee91744a 100755 --- a/workflow/engine/methods/appFolder/appFolderAjax.php +++ b/workflow/engine/methods/appFolder/appFolderAjax.php @@ -20,12 +20,6 @@ if (! isset ($_REQUEST ['action'])) { print G::json_encode ($res); die (); } -if (! function_exists ($_REQUEST['action']) || !G::isUserFunction($_REQUEST['action'])) { - $res ['success'] = false; - $res ['message'] = 'The requested action does not exist'; - print G::json_encode ($res); - die (); -} if (($_REQUEST['action']) != 'rename') { $functionName = $_REQUEST ['action']; @@ -48,6 +42,12 @@ if (($_REQUEST['action']) != 'rename') { renameFolder ($oldname, $newname, $uid); } +if (! function_exists ($_REQUEST['action']) || !G::isUserFunction($_REQUEST['action'])) { + $res ['success'] = false; + $res ['message'] = 'The requested action does not exist'; + print G::json_encode ($res); + die (); +} ///////////////////////////////////////////// function renameFolder($oldname, $newname, $uid) diff --git a/workflow/engine/templates/cases/casesDocuments.js b/workflow/engine/templates/cases/casesDocuments.js index a5be99239..72ea9ff29 100755 --- a/workflow/engine/templates/cases/casesDocuments.js +++ b/workflow/engine/templates/cases/casesDocuments.js @@ -34,6 +34,7 @@ catch(z){ itemSelected = ""; lastDir = ""; var conn = new Ext.data.Connection(); +var showDirs = 'noFolders'; streamFilefromPM=function(fileStream) { Ext.Ajax.request({ @@ -605,6 +606,9 @@ function getRequestParams() { } else { sOptiondir='documents'; + if (selectedRows[0].data.owner == '') { + sOptiondir='directory'; + } selitems = Array(selectedRows.length); if( selectedRows.length > 0 ) { @@ -1128,18 +1132,10 @@ var gridtb = new Ext.Toolbar( handler : function(btn, e) { if (btn.pressed) { datastore.sendWhat = 'both'; - loadDir(); } else { datastore.sendWhat = 'files'; - loadDir(); - } - if (showDirs) { - Ext.getCmp("showOrHiDirs").setText(_('ID_SHOW_DIRS')); - showDirs = false; - } else { - Ext.getCmp("showOrHiDirs").setText(_('ID_HIDE_DIRS')); - showDirs = true; } + loadDir(); } }), '-', new Ext.form.TextField({ name : "filterValue", @@ -1321,11 +1317,15 @@ rowExpander, { header: _("ID_SIZE"), dataIndex: "size", width: 50, + sortable: false, + hideable: false, hidden: true }, { header: _("ID_PERMISSIONS"), dataIndex: "perms", width: 100, + sortable: false, + hideable: false, hidden: true }, { dataIndex: "is_deletable", @@ -1373,28 +1373,34 @@ rowExpander, { cm.defaultSortable = true; function handleRowClick(sm, rowIndex) {//alert(rowIndex); - // console.log("Row Clicked: "+rowIndex); - var selections = sm.getSelections(); - tb = ext_itemgrid.getTopToolbar(); - if (selections.length > 1) { -// tb.items.get('tb_delete').enable(); - tb.items.get('tb_delete')[permitodelete==1 ? 'enable': 'disable'](); - tb.items.get('tb_rename').disable(); - tb.items.get('tb_download').hide(); - //tb.items.get('tb_download').disable(); - } else if (selections.length == 1) { - -// tb.items.get('tb_delete')[selections[0].get('is_deletable') ? 'enable': 'disable'](); - tb.items.get('tb_delete')[permitodelete==1 ? 'enable': 'disable'](); - tb.items.get('tb_rename')[selections[0].get('is_deletable') ? 'disable': 'disable'](); - tb.items.get('tb_download')[selections[0].get('is_readable') - && selections[0].get('is_file') ? 'show' : 'hide'](); - } else { - tb.items.get('tb_delete').disable(); - tb.items.get('tb_rename').disable(); - tb.items.get('tb_download').hide(); - } - return true; + //console.log("Row Clicked: ", rowIndex); + var selections = sm.getSelections(); + tb = ext_itemgrid.getTopToolbar(); + if (selections.length > 1) { + //tb.items.get('tb_delete').enable(); + tb.items.get('tb_delete')[permitodelete==1 ? 'enable': 'disable'](); + tb.items.get('tb_rename').disable(); + tb.items.get('tb_download').hide(); + //tb.items.get('tb_download').disable(); + } else if (selections.length == 1) { + //tb.items.get('tb_delete')[selections[0].get('is_deletable') ? 'enable': 'disable'](); + tb.items.get('tb_delete')[permitodelete==1 ? 'enable': 'disable'](); + tb.items.get('tb_rename')[selections[0].get('is_deletable') ? 'disable': 'disable'](); + tb.items.get('tb_download')[selections[0].get('is_readable') + && selections[0].get('is_file') ? 'show' : 'hide'](); + if (showDirs == 'folders') { + Ext.getCmp("showOrHiDirs").setText(_('ID_SHOW_DIRS')); + showDirs = 'noFolders'; + } else { + Ext.getCmp("showOrHiDirs").setText(_('ID_HIDE_DIRS')); + showDirs = 'folders'; + } + } else { + tb.items.get('tb_delete').disable(); + tb.items.get('tb_rename').disable(); + tb.items.get('tb_download').hide(); + } + return true; } @@ -1402,18 +1408,23 @@ function handleRowClick(sm, rowIndex) {//alert(rowIndex); function loadDir() { // console.info("loadDir"); // console.trace(); - itemSelected = "loadDir"; - datastore.load({ - params : { - start: 0, - limit: 100, - dir : datastore.directory, - node : datastore.directory, - option : 'gridDocuments', - action : 'expandNode', - sendWhat : datastore.sendWhat + itemSelected = "loadDir"; + datastore.load({ + params : { + start: 0, + limit: 100, + dir : datastore.directory, + node : datastore.directory, + option : 'gridDocuments', + action : 'expandNode', + sendWhat : datastore.sendWhat + } + }); + if (datastore.sendWhat == 'files') { + Ext.getCmp("showOrHiDirs").setText(_('ID_SHOW_DIRS')); + } else { + Ext.getCmp("showOrHiDirs").setText(_('ID_HIDE_DIRS')); } - }); } function rowContextMenu(grid, rowIndex, e, f) { @@ -1438,6 +1449,14 @@ function rowContextMenu(grid, rowIndex, e, f) { gridCtxMenu.items.get('gc_rename')[selections[0].get('is_deletable') ? 'disable': 'disable'](); gridCtxMenu.items.get('gc_download')[selections[0].get('is_readable') && selections[0].get('is_file') ? 'enable' : 'disable'](); + if (showDirs == 'folders') { + Ext.getCmp("showOrHiDirs").setText(_('ID_SHOW_DIRS')); + showDirs = 'noFolders'; + } else { + Ext.getCmp("showOrHiDirs").setText(_('ID_HIDE_DIRS')); + showDirs = 'folders'; + } + } gridCtxMenu.show(e.getTarget(), 'tr-br?'); diff --git a/workflow/engine/templates/dashboard/dashletsList.js b/workflow/engine/templates/dashboard/dashletsList.js index 6a2107b51..f4b11e8d2 100644 --- a/workflow/engine/templates/dashboard/dashletsList.js +++ b/workflow/engine/templates/dashboard/dashletsList.js @@ -399,11 +399,9 @@ statusDashletInstance = function(){ var data = { DAS_INS_UID: rows[i].data.DAS_INS_UID, DAS_INS_TITLE: rows[i].data.DAS_INS_TITLE, - DAS_UID: rows[i].data.DAS_INS_UID, - DAS_INS_STATUS: status, - DAS_STATUS: status + DAS_INS_STATUS: status }; - + Ext.Ajax.request({ url: 'saveDashletInstance', method: 'POST', diff --git a/workflow/engine/xmlform/tracker/tracker_Configuration.xml b/workflow/engine/xmlform/tracker/tracker_Configuration.xml index 2df2d08a4..c721b4c93 100755 --- a/workflow/engine/xmlform/tracker/tracker_Configuration.xml +++ b/workflow/engine/xmlform/tracker/tracker_Configuration.xml @@ -64,9 +64,9 @@ var editStagesMap = function(sProcessUID) { oPanel.events = { remove: function() { delete(oPanel); - if(menu_edit.maked === true){ + if(typeof menu_edit != "undefined" && menu_edit.maked === true){ menu_edit.remove(); - } else if (menu_add.maked === true) { + } else if (typeof menu_add != "undefined" && menu_add.maked === true) { menu_add.remove(); } }.extend(this)