소스 검색

Merge remote-tracking branch 'origin/candidate-4.2.0' into closedown-4.2.x

Conflicts:
	version.cmake

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Richard Chapman 11 년 전
부모
커밋
1e1a530a6e

+ 1 - 0
esp/files/scripts/ESPQuery.js

@@ -36,6 +36,7 @@ define([
         service: "WsWorkunits",
         action: "WUListQueries",
         responseQualifier: "WUListQueriesResponse.QuerysetQueries.QuerySetQuery",
+        responseTotalQualifier: "WUListQueriesResponse.NumberOfQueries",
         idProperty: "Id",
         startProperty: "PageStartFrom",
         countProperty: "NumberOfQueries",

+ 17 - 4
esp/files/scripts/GraphWidget.js

@@ -46,9 +46,20 @@ require([
             dot: "",
             svg: "",
 
+            isIE11: false,
+            isIE: false,
+
             //  Known control properties  ---
             DOT_META_ATTR: "DOT_META_ATTR",
 
+            constructor: function() {
+                if (has("ie")) {
+                    this.isIE = true;
+                } else if (window.ActiveXObject !== undefined) {
+                    this.isIE11 = true;
+                }
+            },
+
             _onClickRefresh: function () {
                 this.setMessage("Performing Layout...");
                 this.startLayout("dot");
@@ -288,7 +299,7 @@ require([
             },
 
             isPluginInstalled: function () {
-                if (has("ie")) {
+                if (this.isIE || this.isIE11) {
                     try {
                         var o = new ActiveXObject("HPCCSystems.HPCCSystemsGraphViewControl.1");
                         o = null;
@@ -309,7 +320,7 @@ require([
                 if (this._plugin == null) {
                     if (this._isPluginInstalled) {
                         var pluginID = this.id + "Plugin";
-                        if (has("ie")) {
+                        if (this.isIE || this.isIE11) {
                             this.graphContentPane.domNode.innerHTML = '<object type="application/x-hpccsystemsgraphviewcontrol" '
                                                     + 'id="' + pluginID + '" '
                                                     + 'name="' + pluginID + '" '
@@ -605,8 +616,10 @@ require([
 
             registerEvent: function (evt, func) {
                 if (this._plugin) {
-                    if (this._plugin.attachEvent) {
-                        return this._plugin.attachEvent("on" + evt, func);
+                    if (this.isIE11) {
+                        this._plugin["on" + evt] = func;
+                    } else if (this.isIE) {
+                        return this._plugin.attachEvent("on" + evt, func, false);
                     } else {
                         return this._plugin.addEventListener(evt, func, false);
                     }

+ 12 - 6
esp/files/scripts/QuerySetQueryWidget.js

@@ -121,6 +121,7 @@ define([
             });
             this.initQuerySetGrid();
             this.selectChild(this.queriesTab, true);
+            this.refreshGrid();
         },
 
         initTab: function () {
@@ -228,7 +229,7 @@ define([
                 this.menuFilterCluster.set("disabled", true);
                 this.menuFilterCluster.set("label", "Cluster: " + "N/A");
             }*/
-            
+
             if (item.Suspend == "") {
                 this.menuFilterSuspend.set("disabled", true);
                 this.menuFilterSuspend.set("label", "Suspend: " + "N/A");
@@ -251,10 +252,15 @@ define([
         initQuerySetGrid: function (params) {
             var context = this;
             var store = ESPQuery.CreateQueryStore();
-            this.querySetGrid = declare([OnDemandGrid, Keyboard, Selection, ColumnResizer, DijitRegistry, ESPUtil.GridHelper])({
+            this.querySetGrid = declare([OnDemandGrid, Keyboard, Selection, ColumnResizer, DijitRegistry, ESPUtil.GridHelper, Pagination,])({
                 allowSelectAll: true,
                 deselectOnRefresh: false,
                 store: store,
+                rowsPerPage: 50,
+                pagingLinks: 1,
+                pagingTextBox: true,
+                firstLastArrows: true,
+                pageSizeOptions: [25, 50, 100],
                 columns: {
                     col1: selector({
                         width: 27,
@@ -264,7 +270,7 @@ define([
                         renderHeaderCell: function (node) {
                             node.innerHTML = "<img src='../files/img/suspended.png'>";
                         },
-                        width: 18,
+                        width: 20,
                         sortable: false,
                         formatter: function (suspended) {
                             if (suspended == true) {
@@ -277,7 +283,7 @@ define([
                         renderHeaderCell: function (node) {
                             node.innerHTML = "<img src='../files/img/active.png'>";
                         },
-                        width: 18,
+                        width: 20,
                         sortable: false,
                         formatter: function (activated) {
                             if (activated == true) {
@@ -290,7 +296,7 @@ define([
                         renderHeaderCell: function (node) {
                             node.innerHTML = "<img src='../files/img/error.png'>";
                         },
-                        width: 18,
+                        width: 20,
                         sortable: false,
                         formatter: function (error) {
                             if (error > 0) {
@@ -418,7 +424,7 @@ define([
                 });
             }
         },
-        
+
         refreshGrid: function (args) {
             this.querySetGrid.set("query", this.getFilter());
         },

+ 8 - 2
esp/files/scripts/TimingTreeMapWidget.js

@@ -122,7 +122,10 @@ define([
                             selectedItems.push(item);
                         }
                     }
-                    this.treeMap.set("selectedItems", selectedItems);
+                    try {  //  Throws an exception in IE 8
+                        this.treeMap.set("selectedItems", selectedItems);
+                    } catch (e) {
+                    }
                 }
             },
 
@@ -135,7 +138,10 @@ define([
                             selectedItems.push(item);
                         }
                     }
-                    this.treeMap.set("selectedItems", selectedItems);
+                    try {  //  Throws an exception in IE 8
+                        this.treeMap.set("selectedItems", selectedItems);
+                    } catch (e) {
+                    }
                 }
             },
 

+ 9 - 3
esp/files/scripts/WUDetailsWidget.js

@@ -114,6 +114,7 @@ define([
             this.publishForm = registry.byId(this.id + "PublishForm");
 
             this.infoGridWidget = registry.byId(this.id + "InfoContainer");
+            this.zapDialog = registry.byId(this.id + "ZapDialog");
         },
 
         startup: function (args) {
@@ -135,12 +136,17 @@ define([
             this.variablesGrid.startup();
         },
 
+        destroy: function (args) {
+            this.zapDialog.destroyRecursive();
+            this.inherited(arguments);
+        },
+
         getTitle: function () {
             return "ECL Workunit Details";
         },
 
         _onCancelDialog: function (){
-            registry.byId(this.id + "ZapDialog").hide();
+            this.zapDialog.hide();
         }, 
 
         //  Hitched actions  ---
@@ -188,7 +194,7 @@ define([
                     WUID: this.wu.Wuid
                 }
             }).then(function (response) {
-                registry.byId(context.id + "ZapDialog").show();
+                context.zapDialog.show();
                 if (lang.exists("WUGetZAPInfoResponse", response)) {
                     context.updateInput("ZapWUID", null, response.WUGetZAPInfoResponse.WUID);
                     context.updateInput("BuildVersion", null, response.WUGetZAPInfoResponse.BuildVersion);
@@ -206,7 +212,7 @@ define([
             var frame = iframe.create("ZapDownload" + uniqueID++);
             var url = ESPRequest.getBaseURL("WsWorkunits") + "/WUCreateZAPInfo?WUID=" + this.wu.Wuid + "&ESPIPAddress=" + this.espIPAddress + "&ThorIPAddress=" + this.thorIPAddress + "&BuildVersion=" + encodeURIComponent(this.buildVersion);
             iframe.setSrc(frame, url, true);
-            registry.byId(this.id + "ZapDialog").hide();
+            this.zapDialog.hide();
         },
 
         //  Implementation  ---