SubRightsTree.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /**
  2. *
  3. * @param {}
  4. * divId
  5. * @param {}
  6. * conf
  7. */
  8. var SubRightsTree = function(divId, conf) {
  9. {
  10. this.tree = null;
  11. this.currentNode = null;
  12. this.conf = conf;
  13. this.divId = divId;
  14. var me = this;
  15. };
  16. this.loadTree = function() {
  17. var setting = {
  18. view:{
  19. nameIsHTML:true,
  20. showTitle:false
  21. },
  22. edit : {
  23. enable : true,
  24. showRemoveBtn : false,
  25. showRenameBtn : false
  26. },
  27. data : {
  28. key : {
  29. name : "showName"
  30. }
  31. },
  32. callback : {
  33. onClick: this.onClick,
  34. onDblClick : this.doubleClickHandler
  35. }
  36. };
  37. $.post(conf.url, conf.params, function(result) {
  38. var json = eval('(' + result + ')');
  39. var iconFolder = __ctx + '/styles/tree/';
  40. for ( var i = 0; i < json.length; i++) {
  41. var table = json[i];
  42. table.icon = iconFolder + 'table.png';
  43. for(var j=0;j<table.children.length;j++){
  44. var field = table.children[j];
  45. field.icon = iconFolder + field.fieldType + '.png';
  46. }
  47. }
  48. me.tree = $.fn.zTree.init($("#" + me.divId), setting, json);
  49. me.tree.expandAll(true);
  50. var treeObj = $.fn.zTree.getZTreeObj(me.divId);
  51. var treeNodes = treeObj.getNodes();
  52. me.conf.params.onClick(me.divId,treeNodes[1]);
  53. });
  54. };
  55. this.onClick = function(event, treeId, treeNode) {
  56. me.currentNode = treeNode;
  57. if (me.conf.params.onClick) {
  58. me.conf.params.onClick(treeId,treeNode);
  59. }
  60. };
  61. this.doubleClickHandler = function(event, treeId, treeNode) {
  62. me.currentNode = treeNode;
  63. if (me.conf.params.onDbClick) {
  64. me.conf.params.onDbClick(treeId,treeNode);
  65. }
  66. };
  67. };