From eed775856b6535d2435e6b79db506c9a24cebb97 Mon Sep 17 00:00:00 2001 From: Hugo Loza Date: Tue, 8 Feb 2011 12:47:09 +0000 Subject: [PATCH] Move action for documents --- .../methods/appFolder/appFolderAjax.php | 32 ++++++++++++++++--- .../engine/templates/cases/casesDocuments.js | 25 +++++++++------ 2 files changed, 43 insertions(+), 14 deletions(-) diff --git a/workflow/engine/methods/appFolder/appFolderAjax.php b/workflow/engine/methods/appFolder/appFolderAjax.php index 402636875..44eb45c44 100755 --- a/workflow/engine/methods/appFolder/appFolderAjax.php +++ b/workflow/engine/methods/appFolder/appFolderAjax.php @@ -583,15 +583,25 @@ function uploadDocument(){ G::RenderPage ( 'publish', 'raw' ); */ } - function copyAction(){ + copyMoveAction("copy"); +} +function moveAction(){ + copyMoveAction("move"); +} +function copyMoveAction($type){ $dir=$_REQUEST['dir']; $copyDialog["xtype"]="form"; $copyDialog["id"]="simpleform"; $copyDialog["labelWidth"]=125; $copyDialog["width"]=340; $copyDialog["url"]="URL_SCRIPT"; - $copyDialog["dialogtitle"]= "Copy/Move"; + if($type=="copy"){ + $copyDialog["dialogtitle"]= "Copy"; + }else{ + $copyDialog["dialogtitle"]= "Move"; + } + $copyDialog["frame"]= true; $copyDialog["items"]=array(); @@ -609,24 +619,38 @@ function copyAction(){ $copyDialog["buttons"]=array(); $itemButton=array(); - $itemButton["text"]= "Create"; + if($type=="copy"){ + $itemButton["text"]= "Copy"; + }else{ + $itemButton["text"]= "Move"; + } $itemButton["handler"]="copyDialogCreateButtonFunction"; $functionsToReplace["copyDialogCreateButtonFunction"]="function() { form = Ext.getCmp('simpleform').getForm(); statusBarMessage( 'Please wait...', true ); var requestParams = getRequestParams(); requestParams.confirm = 'true'; - requestParams.action = 'copyExecute'; + requestParams.action = '".$type."Execute'; form.submit({ //reset: true, reset: false, success: function(form, action) { + if(action.result.success){ + if(action.result.success=='success'){ statusBarMessage( action.result.message, false, true ); try{ dirTree.getSelectionModel().getSelectedNode().reload(); } catch(e) {} datastore.reload(); Ext.getCmp('dialog').destroy(); + }else{ + statusBarMessage( action.result.message, false, false ); + } + }else{ + if( !action.result ) return; + Ext.MessageBox.alert('Error!', action.result.error); + statusBarMessage( action.result.error, false, false ); + } }, failure: function(form, action) { if( !action.result ) return; diff --git a/workflow/engine/templates/cases/casesDocuments.js b/workflow/engine/templates/cases/casesDocuments.js index 9d8534677..e70d3e200 100644 --- a/workflow/engine/templates/cases/casesDocuments.js +++ b/workflow/engine/templates/cases/casesDocuments.js @@ -150,11 +150,10 @@ function openActionDialog( caller, action ) { case 'copyAction': case 'edit': case 'newFolder': - case 'move': + case 'moveAction': case 'rename': case 'search': case 'uploadDocument': - case 'move': requestParams = getRequestParams(); requestParams.action = action; if( action != "edit" ) { @@ -316,6 +315,7 @@ function handleCallback(requestParams, node) { if( success ) { json = Ext.decode( response.responseText ); if( json.success ) { + if( json.success == "success"){ statusBarMessage( json.message, false, true ); try { if( dropEvent) { @@ -331,6 +331,9 @@ function handleCallback(requestParams, node) { datastore.reload(); } } catch(e) { datastore.reload(); } + }else{ + statusBarMessage( json.message, false, false ); + } } else { Ext.Msg.alert( 'Failure', json.error ); } @@ -444,6 +447,7 @@ function handleCallback(requestParams, node) { function statusBarMessage( msg, isLoading, success ) { // console.log("Status Bar needed"); + console.log(msg); var statusBar = Ext.getCmp('statusPanel'); if( !statusBar ) return; // console.log("Status bar acceced: "+msg); @@ -460,12 +464,13 @@ function handleCallback(requestParams, node) { clear: true }); Ext.msgBoxSlider.msg('success', msg ); - } else if( success != null ) { + } else { statusBar.setStatus({ text: 'error: ' + msg, iconCls: 'error', clear: true }); + Ext.msgBoxSlider.msg('error', msg ); } @@ -685,9 +690,9 @@ var gridtb = new Ext.Toolbar( icon : '/images/documents/_move.png', tooltip : 'Move', cls : 'x-btn-icon', - disabled : true, + disabled : false, handler : function() { - openActionDialog(this, 'move'); + openActionDialog(this, 'moveAction'); } }, { @@ -1006,7 +1011,7 @@ gridCtxMenu = new Ext.menu.Menu({ icon : '/images/documents/_move.png', text : 'movelink', handler : function() { - openActionDialog(this, 'move'); + openActionDialog(this, 'moveAction'); } }, { id : 'gc_delete', @@ -1115,7 +1120,7 @@ var dirCtxMenu = new Ext.menu.Menu( text : 'Move', handler : function() { dirCtxMenu.hide(); - openActionDialog(this, 'move'); + openActionDialog(this, 'moveAction'); } }, { @@ -1161,7 +1166,7 @@ var copymoveCtxMenu = new Ext.menu.Menu({ text : 'copylink', handler : function() { copymoveCtxMenu.hide(); - copymove('copyAction'); + copymove('copyExecute'); } }, { id : 'copymoveCtxMenu_move', @@ -1169,7 +1174,7 @@ var copymoveCtxMenu = new Ext.menu.Menu({ text : 'movelink', handler : function() { copymoveCtxMenu.hide(); - copymove('move'); + copymove('moveExecute'); } }, '-', { id : 'copymoveCtxMenu_cancel', @@ -1335,7 +1340,7 @@ var documentsTab = { stopEvent : true, handler : function() { openActionDialog(this, - 'move'); + 'moveAction'); } },