From 288f42fec62787da9f768ea5f9104cc79a0e2dfd Mon Sep 17 00:00:00 2001 From: Lawrence Carvalho Date: Thu, 3 Sep 2009 09:16:05 +0000 Subject: [PATCH] Add/Manage/Delete record references. Also updates to document picker to show correct icons and filter out specific types. TODO: documentpicker should probably filter out current record and already referenced records to avoid cyclic and duplicate errors when adding new references git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16059 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../repository/forms/pickerchildren.get.js | 127 ++++++++++-------- 1 file changed, 72 insertions(+), 55 deletions(-) diff --git a/config/alfresco/templates/webscripts/org/alfresco/repository/forms/pickerchildren.get.js b/config/alfresco/templates/webscripts/org/alfresco/repository/forms/pickerchildren.get.js index ffc94f975d..a3d9447aa6 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/repository/forms/pickerchildren.get.js +++ b/config/alfresco/templates/webscripts/org/alfresco/repository/forms/pickerchildren.get.js @@ -1,19 +1,19 @@ function main() { - var argsFilterType = args['filterType'], + var argsFilterType = args['filterType'], argsSelectableType = args['selectableType'] parent = null, rootNode = companyhome, - results = [], - categoryResults = null, - resultObj = null; - - if (logger.isLoggingEnabled()) - { - logger.log("children type = " + url.templateArgs.type); - logger.log("argsSelectableType = " + argsSelectableType); + results = [], + categoryResults = null, + resultObj = null; + + if (logger.isLoggingEnabled()) + { + logger.log("children type = " + url.templateArgs.type); + logger.log("argsSelectableType = " + argsSelectableType); logger.log("argsFilterType = " + argsFilterType); - } + } try { @@ -43,41 +43,58 @@ function main() } } - var query = "+PARENT:\"" + parent.nodeRef + "\""; + var query = "+PARENT:\"" + parent.nodeRef + "\""; if (argsFilterType != null) { - query += " +TYPE:\"" + argsFilterType + "\""; - } - - if (logger.isLoggingEnabled()) - logger.log("query = " + query); + //map short name to long name + var types = { + 'rma:dispositionSchedule': '{http://www.alfresco.org/model/recordsmanagement/1.0}dispositionSchedule', + 'rma:dispositionActionDefinition': '{http://www.alfresco.org/model/recordsmanagement/1.0}dispositionActionDefinition', + 'rma:dispositionAction': '{http://www.alfresco.org/model/recordsmanagement/1.0}dispositionAction', + 'rma:hold':'{http://www.alfresco.org/model/recordsmanagement/1.0}hold', + 'rma:transfer':'{http://www.alfresco.org/model/recordsmanagement/1.0}transfer' + }; + + var filterTypes = argsFilterType.split(','); + for (var i=0,len=filterTypes.length; i