From 8967932d9950ccb503a274e8d8235c2958c6bf42 Mon Sep 17 00:00:00 2001 From: erickson Date: Tue, 26 Sep 2006 21:34:51 +0000 Subject: [PATCH] starting work on folder-specific window framework git-svn-id: svn://svn.open-ils.org/ILS/trunk@6226 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/web/reports/oils_rpt.css | 12 ++++++++++- Open-ILS/web/reports/oils_rpt.xhtml | 8 +++++-- Open-ILS/web/reports/oils_rpt_common.xhtml | 1 + Open-ILS/web/reports/oils_rpt_folder_window.js | 30 ++++++++++++++++++++++++++ Open-ILS/web/reports/oils_rpt_folders.js | 21 ++++++++++++------ 5 files changed, 63 insertions(+), 9 deletions(-) create mode 100644 Open-ILS/web/reports/oils_rpt_folder_window.js diff --git a/Open-ILS/web/reports/oils_rpt.css b/Open-ILS/web/reports/oils_rpt.css index a46c901992..483a4e0d75 100644 --- a/Open-ILS/web/reports/oils_rpt.css +++ b/Open-ILS/web/reports/oils_rpt.css @@ -149,6 +149,16 @@ button { padding: 0px; margin: -3px; } -#oils_rpt_main_table { +#oils_rpt_folder_table { margin-top: 15px; + width: 100%; +} + +#oils_rpt_folder_table_left_td { + width: 25%; } + +#oils_rpt_folder_table_right_td { + border-left: 2px solid #E0E0E0; +} + diff --git a/Open-ILS/web/reports/oils_rpt.xhtml b/Open-ILS/web/reports/oils_rpt.xhtml index 3d63b2b7ed..431b5401a5 100644 --- a/Open-ILS/web/reports/oils_rpt.xhtml +++ b/Open-ILS/web/reports/oils_rpt.xhtml @@ -23,13 +23,17 @@ - +
- +
+
+
+
+
diff --git a/Open-ILS/web/reports/oils_rpt_common.xhtml b/Open-ILS/web/reports/oils_rpt_common.xhtml index 72b0f52e02..abb5f554aa 100644 --- a/Open-ILS/web/reports/oils_rpt_common.xhtml +++ b/Open-ILS/web/reports/oils_rpt_common.xhtml @@ -35,6 +35,7 @@ + diff --git a/Open-ILS/web/reports/oils_rpt_folder_window.js b/Open-ILS/web/reports/oils_rpt_folder_window.js new file mode 100644 index 0000000000..e05a0f7503 --- /dev/null +++ b/Open-ILS/web/reports/oils_rpt_folder_window.js @@ -0,0 +1,30 @@ + +function oilsRptDrawFolderWindow( type, folderId ) { + var node = oilsRptCurrentFolderManager.findNode(type, folderId); + _debug('drawing folder window for folder ' + node.folder.name()); + + var div = DOM.oils_rpt_folder_window_div; + + switch(type) { + case 'template': + oilsRptDrawTemplateWindow(node); + break; + case 'report': + oilsRptDrawReportWindow(node); + break; + case 'output': + oilsRptDrawOutputWindow(node); + break; + } +} + + +function oilsRptDrawTemplateWindow(node) { +} + +function oilsRptDrawReportWindow(node) { +} + +function oilsRptDrawOutputWindow(node) { +} + diff --git a/Open-ILS/web/reports/oils_rpt_folders.js b/Open-ILS/web/reports/oils_rpt_folders.js index fcea6f1ce0..3d01007326 100644 --- a/Open-ILS/web/reports/oils_rpt_folders.js +++ b/Open-ILS/web/reports/oils_rpt_folders.js @@ -1,3 +1,5 @@ +var oilsRptFolderNodeCache = {}; + function oilsRptFolderManager(node) { this.node = node; this.folderTree = {}; @@ -60,16 +62,20 @@ oilsRptFolderManager.prototype.makeTree = function(type, folders, node, parentId } else { _debug("making subtree with folder "+node.folder.name()); + var c = oilsRptFolderNodeCache; + if(!c[type]) c[type] = {}; + c[type][node.folder.id()] = node; + id = oilsNextId(); - oilsRptFolderTree.addNode(id, parentId, node.folder.name()); + + var action = 'javascript:oilsRptDrawFolderWindow("'+ + type+'","'+node.folder.id()+'");oilsRptFolderTree.toggle("'+id+'");'; + + oilsRptFolderTree.addNode(id, parentId, node.folder.name(), action); node.treeId = id; node.children = []; childNodes = grep(folders, function(i){return (i.parent() == node.folder.id())}); - - var req = new Request(OILS_RPT_FETCH_FOLDER_DATA,SESSION,type,node.folder.id()); - req.callback - } if(!childNodes) return; @@ -77,7 +83,10 @@ oilsRptFolderManager.prototype.makeTree = function(type, folders, node, parentId this.makeTree( type, folders, { folder : childNodes[i] }, id ); } -//oilsRptFolderManager.prototype.make +oilsRptFolderManager.prototype.findNode = function(type, id) { + return oilsRptFolderNodeCache[type][id]; +} + -- 2.11.0