added min-width to folder tree div, making sure non-agg display tforms come before...
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 2 Oct 2006 23:35:50 +0000 (23:35 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 2 Oct 2006 23:35:50 +0000 (23:35 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@6366 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/reports/oils_rpt.css
Open-ILS/web/reports/oils_rpt_builder.js

index 3d860da..7374c97 100644 (file)
@@ -245,6 +245,7 @@ button {
 .oils_rpt_folder_tree_div {
        border: 1px solid #808080;
        margin: 10px;
+       min-width: 170px;
 }
 
 .oils_rpt_folder_contents {
index 47ed45a..2f837b7 100644 (file)
@@ -71,6 +71,8 @@ function oilsAddRptDisplayItem(path, name, tform, params) {
        name = (name) ? name : oilsRptPathCol(path);
        if( !tform ) tform = 'Bare';
 
+       var aggregate = oilsRptGetIsAgg(tform);
+
        /* add this item to the select blob */
        var sel = {
                relation: hex_md5(oilsRptPathRel(path)), 
@@ -81,12 +83,38 @@ function oilsAddRptDisplayItem(path, name, tform, params) {
        };
 
        if( params ) sel.column.params = params;
-       oilsRpt.def.select.push(sel);
+
+       if(!oilsRptGetIsAgg(tform)) {
+               var select = [];
+               var added = false;
+               for( var i = 0; i < oilsRpt.def.select.length; i++ ) {
+                       var item = oilsRpt.def.select[i];
+                       if( !added && oilsRptGetIsAgg( item.column.transform ) ) {
+                               select.push(sel);
+                               added = true;
+                       }
+                       select.push(item);
+               }
+               if(!added) select.push(sel);
+               oilsRpt.def.select = select;
+       } else {
+               oilsRpt.def.select.push(sel);
+       }
+
 
        mergeObjects( oilsRpt.def.from, oilsRptBuildFromClause(path));
        oilsRptDebug();
 }
 
+function oilsRptGetIsAgg(tform) {
+       var sel = $n(DOM.oils_rpt_tform_table,'selector');
+       for( var i = 0; i < sel.options.length; i++ ) {
+               var opt = sel.options[i];
+               if( opt.getAttribute('value') == tform )
+                       return opt.getAttribute('aggregate');
+       }
+}
+
 /* takes a column path and builds a from-clause object for the path */
 function oilsRptBuildFromClause(path) {