change 'name' to 'site', make label cells same width
[plstackapi.git] / planetstack / core / xoslib / static / js / xoslib / xosHelper.js
index e8c1b10..a46fa40 100644 (file)
@@ -20,6 +20,7 @@ SliceSelectorView = Marionette.CompositeView.extend({
     template: "#xos-sliceselector-select",
     childViewContainer: "select",
     childView: SliceSelectorOption,
+    caption: "Slice",
 
     events: {"change select": "onSliceChanged"},
 
@@ -34,6 +35,8 @@ SliceSelectorView = Marionette.CompositeView.extend({
     sliceChanged: function(id) {
         console.log("sliceChanged " + id);
     },
+
+    templateHelpers: function() { return {caption: this.options.caption || this.caption }; },
 });
 
 FilteredCompositeView = Marionette.CompositeView.extend( {
@@ -872,6 +875,7 @@ XOSDataTableView = Marionette.View.extend( {
 
     render: function() {
         var view = this;
+        var fieldDisplayNames = view.options.fieldDisplayNames || view.fieldDisplayNames || {};
 
         view.columnsByIndex = [];
         view.columnsByFieldName = {};
@@ -879,7 +883,7 @@ XOSDataTableView = Marionette.View.extend( {
             inputType = view.options.inputType || view.inputType || {};
             mRender = undefined;
             mSearchText = undefined;
-            sTitle = fieldNameToHumanReadable(fieldName);
+            sTitle = fieldName in fieldDisplayNames ? fieldDisplayNames[fieldName] : fieldNameToHumanReadable(fieldName);
             bSortable = true;
             if (fieldName=="backend_status") {
                 mRender = function(x,y,z) { return xosBackendStatusIconTemplate(z); };
@@ -910,6 +914,8 @@ XOSDataTableView = Marionette.View.extend( {
             "bJQueryUI": true,
             "bStateSave": true,
             "bServerSide": true,
+            "bFilter": ! (view.options.disableFilter || view.disableFilter),
+            "bPaginate": ! (view.options.disablePaginate || view.disablePaginate),
             "aoColumns": view.columnsByIndex,
 
             fnServerData: function(sSource, aoData, fnCallback, settings) {
@@ -1002,7 +1008,9 @@ XOSDataTableView = Marionette.View.extend( {
                   aaData.sort(function(a,b) { return compareColumns(sortCols, sortDirs, a, b); });\r
 \r
                   // slice it for pagination\r
-                  aaData = aaData.slice(iDisplayStart, iDisplayStart+iDisplayLength);\r
+                  if (iDisplayLength >= 0) {\r
+                      aaData = aaData.slice(iDisplayStart, iDisplayStart+iDisplayLength);\r
+                  }\r
 \r
                   return fnCallback({iTotalRecords: totalSize,\r
                          iTotalDisplayRecords: filteredSize,\r