var UITree = function () { return { //main function to initiate the module init: function () { var DataSourceTree = function (options) { this._data = options.data; this._delay = options.delay; }; DataSourceTree.prototype = { data: function (options, callback) { var self = this; setTimeout(function () { var data = $.extend(true, [], self._data); callback({ data: data }); }, this._delay) } }; // INITIALIZING TREE var treeDataSource = new DataSourceTree({ data: [ { name: 'Sales', type: 'folder', additionalParameters: { id: 'F1' } }, { name: 'Projects', type: 'folder', additionalParameters: { id: 'F2' } }, { name: 'Reports', type: 'item', additionalParameters: { id: 'I1' } }, { name: 'Finance', type: 'item', additionalParameters: { id: 'I2' } } ], delay: 400 }); var treeDataSource2 = new DataSourceTree({ data: [ { name: 'System Logs
', type: 'folder', additionalParameters: { id: 'F11' } }, { name: 'Notifications
', type: 'folder', additionalParameters: { id: 'F12' } }, { name: ' Alerts', type: 'item', additionalParameters: { id: 'I11' } }, { name: ' Tasks', type: 'item', additionalParameters: { id: 'I12' } } ], delay: 400 }); var treeDataSource3 = new DataSourceTree({ data: [ { name: 'Resources
', type: 'folder', additionalParameters: { id: 'F11' } }, { name: 'Projects
', type: 'folder', additionalParameters: { id: 'F12' } }, { name: 'Nike Promo 2013', type: 'item', additionalParameters: { id: 'I11' } }, { name: 'IPO Reports', type: 'item', additionalParameters: { id: 'I12' } } ], delay: 400 }); var treeDataSource4 = new DataSourceTree({ data: [ { name: 'Projects
', type: 'folder', additionalParameters: { id: 'F11' } }, { name: 'Reports
', type: 'folder', additionalParameters: { id: 'F12' } }, { name: ' Member
', type: 'item', additionalParameters: { id: 'I11' } }, { name: ' Events
', type: 'item', additionalParameters: { id: 'I12' } }, { name: ' Portfolio
', type: 'item', additionalParameters: { id: 'I12' } } ], delay: 400 }); var treeDataSource5 = new DataSourceTree({ data: [ { name: 'Projects
', type: 'folder', additionalParameters: { id: 'F11' } }, { name: 'Reports
', type: 'folder', additionalParameters: { id: 'F12' } }, { name: ' Member
', type: 'item', additionalParameters: { id: 'I11' } }, { name: ' Events
', type: 'item', additionalParameters: { id: 'I12' } }, { name: ' Portfolio
', type: 'item', additionalParameters: { id: 'I12' } } ], delay: 400 }); var treeDataSource6 = new DataSourceTree({ data: [ { name: 'Projects
', type: 'folder', additionalParameters: { id: 'F11' } }, { name: 'Reports
', type: 'folder', additionalParameters: { id: 'F12' } }, { name: ' Member
', type: 'item', additionalParameters: { id: 'I11' } }, { name: ' Events
', type: 'item', additionalParameters: { id: 'I12' } }, { name: ' Portfolio
', type: 'item', additionalParameters: { id: 'I12' } } ], delay: 400 }); $('#MyTree').tree({ dataSource: treeDataSource, loadingHTML: '', }); $('#MyTree2').tree({ dataSource: treeDataSource2, loadingHTML: '', }); $('#MyTree3').tree({ dataSource: treeDataSource3, loadingHTML: '', }); $('#MyTree4').tree({ selectable: false, dataSource: treeDataSource4, loadingHTML: '', }); $('#MyTree5').tree({ selectable: false, dataSource: treeDataSource5, loadingHTML: '', }); $('#MyTree6').tree({ selectable: false, dataSource: treeDataSource6, loadingHTML: '', }); } }; }();