Tuesday, July 24, 2018

AEM 6 SP2 Classic UI Task Management Sort Task Projects Tree Nodes

AEM 6 SP2 Classic UI Task Management Sort Task Projects Tree Nodes


Goal


Alphabetically sort the Task Projects tree in Task Management console http://localhost:4502/libs/cq/taskmanagement/content/taskmanager.html#/tasks

Demo | Package Install


Product



Extension



Solution


1) Login to CRXDE Lite, create folder (nt:folder) /apps/classicui-sort-task-projects

2) Create clientlib (type cq:ClientLibraryFolder/apps/classicui-sort-task-projects/clientlib and set a property categories of String type to cq.taskmanagement

3) Create file ( type nt:file ) /apps/classicui-sort-task-projects/clientlib/js.txt, add the following

                         sort.js

4) Create file ( type nt:file ) /apps/classicui-sort-task-projects/clientlib/sort.js, add the following code

(function(){
var pathName = window.location.pathname;

if( pathName.indexOf("/libs/cq/taskmanagement/content/taskmanager.htm") != 0 ){
return;
}

var TREE_ID = "cq-taskmanager-tree";

function sort(treePanel, asc){
treePanel.on(load, function(node){
node.childNodes.sort(function(a,b){
a = a["text"].toLowerCase();
b = b["text"].toLowerCase();
return asc ? ( a > b ? 1 : (a < b ? -1 : 0) ) : ( a > b ? -1 : (a < b ? 1 : 0) ) ;
});
})
}

var INTERVAL = setInterval(function(){
var tree = CQ.Ext.getCmp(TREE_ID);

if(tree){
clearInterval(INTERVAL);
sort(tree, true);
}
}, 250);
}());




visit link download