added an "add" method to the fm_table for inserting rows in the fly, taking advantage...
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 9 Oct 2006 00:42:24 +0000 (00:42 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 9 Oct 2006 00:42:24 +0000 (00:42 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@6407 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/opac/common/js/fm_table.js
Open-ILS/web/reports/oils_rpt_folder_window.js

index 5bfa913..e0d9b47 100644 (file)
@@ -129,6 +129,10 @@ FMObjectBuilder.prototype.setKeys = function(o) {
        if(sortme) this.keys = this.keys.sort();
 }
 
+FMObjectBuilder.prototype.add = function(obj) {
+       this.buildObjectRow(obj);
+}
+
 /* Inserts one row into the table to represent a single object */
 FMObjectBuilder.prototype.buildObjectRow = function(obj) {
        var row = elem('tr');
index b47caac..de4bd7a 100644 (file)
@@ -379,29 +379,35 @@ oilsRptFolderWindow.prototype.fetchFolderData = function(callback) {
 }
 
 
-oilsRptFolderWindow.prototype.fleshSchedules = function(list, idx) {
-       if( idx >= list.length ) {
-               this.fmTable = drawFMObjectTable( 
-                       { 
-                               dest : this.selector, 
-                               obj : list,
-                               selectCol : true,
-                               selectColName : 'Select',
-                               selectAllName : 'All',
-                               selectNoneName : 'None'
-                       }
-               );
-               return;
-       }
+oilsRptFolderWindow.prototype.fleshSchedules = function(list, idx, table) {
+
+       if( idx >= list.length ) return;
 
        var sched = list[idx];
        var obj = this;
+
        oilsRptFetchUser(sched.runner(),
+
                function(user) {
                        sched.runner(user);
                        oilsRptFetchTemplate(sched.report().template(),
+
                                function(template) {
                                        sched.report().template(template);
+                                       if( idx == 0 ) {
+                                               obj.fmTable = drawFMObjectTable( 
+                                                       { 
+                                                               dest : obj.selector, 
+                                                               obj : [sched],
+                                                               selectCol : true,
+                                                               selectColName : 'Select',
+                                                               selectAllName : 'All',
+                                                               selectNoneName : 'None'
+                                                       }
+                                               );
+                                       } else {
+                                               obj.fmTable.add(sched);
+                                       }
                                        obj.fleshSchedules(list, ++idx);
                                }
                        );