Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addBinding.js URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addBinding.js?rev=1741609&r1=1741608&r2=1741609&view=diff ============================================================================== --- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addBinding.js (original) +++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addBinding.js Fri Apr 29 11:04:40 2016 @@ -30,395 +30,490 @@ define(["dojo/_base/connect", "qpid/common/util", "dojo/text!addBinding.html", "dijit/form/NumberSpinner", // required by the form - /* dojox/ validate resources */ - "dojox/validate/us", "dojox/validate/web", - /* basic dijit classes */ + /* dojox/ validate resources */ + "dojox/validate/us", + "dojox/validate/web", + /* basic dijit classes */ "dijit/Dialog", - "dijit/form/CheckBox", "dijit/form/Textarea", - "dijit/form/FilteringSelect", "dijit/form/TextBox", - "dijit/form/ValidationTextBox", "dijit/form/DateTextBox", - "dijit/form/TimeTextBox", "dijit/form/Button", - "dijit/form/RadioButton", "dijit/form/Form", + "dijit/form/CheckBox", + "dijit/form/Textarea", + "dijit/form/FilteringSelect", + "dijit/form/TextBox", + "dijit/form/ValidationTextBox", "dijit/form/DateTextBox", - /* basic dojox classes */ - "dojox/form/BusyButton", "dojox/form/CheckedMultiSelect", + "dijit/form/TimeTextBox", + "dijit/form/Button", + "dijit/form/RadioButton", + "dijit/form/Form", + "dijit/form/DateTextBox", + /* basic dojox classes */ + "dojox/form/BusyButton", + "dojox/form/CheckedMultiSelect", "dojox/grid/EnhancedGrid", "dojo/data/ObjectStore", "dojo/domReady!"], - function (connect, dom, construct, win, registry, parser, array, event, json, lang, declare, Memory, FilteringSelect, util, template) { + function (connect, dom, construct, win, registry, parser, array, event, json, lang, declare, Memory, FilteringSelect, util, template) + { - var noLocalValues = new Memory({ - data: [ - {name:"true", id:true}, - {name:"false", id:false} - ] - }); - - var xMatchValues = new Memory({ - data: [ - {name:"all", id:"all"}, - {name:"any", id:"any"} - ] - }); - - var defaultBindingArguments = [ - {id: 0, name:"x-filter-jms-selector", value: null}, - {id: 1, name:"x-qpid-no-local", value: null} - ]; - - var GridWidgetProxy = declare("qpid.dojox.grid.cells.GridWidgetProxy", dojox.grid.cells._Widget, { - createWidget: function(inNode, inDatum, inRowIndex) - { - var WidgetClass = this.widgetClass; - var widgetProperties = this.getWidgetProps(inDatum); - var getWidgetProperties = widgetProperties.getWidgetProperties; - if (typeof getWidgetProperties == "function") - { - var item = this.grid.getItem(inRowIndex); - if (item) - { - var additionalWidgetProperties = getWidgetProperties(inDatum, inRowIndex, item); - if (additionalWidgetProperties) - { - WidgetClass = additionalWidgetProperties.widgetClass; - for(var prop in additionalWidgetProperties) - { - if(additionalWidgetProperties.hasOwnProperty(prop) && !widgetProperties[prop]) - { - widgetProperties[prop] = additionalWidgetProperties[ prop ]; - } - } - } - } - } - var widget = new WidgetClass(widgetProperties, inNode); - return widget; - }, - getValue: function(inRowIndex) - { - if (this.widget) - { - return this.widget.get('value'); - } - return null; - }, - _finish: function(inRowIndex) - { - if (this.widget) - { - this.inherited(arguments); - this.widget.destroyRecursive(); - this.widget = null; - } - } - }); - - var addBinding = {}; - - var node = construct.create("div", null, win.body(), "last"); - - var convertToBinding = function convertToBinding(formValues) - { - var newBinding = {}; - - newBinding.name = formValues.name; - for(var propName in formValues) - { - if(formValues.hasOwnProperty(propName)) - { - if(propName === "durable") - { - if (formValues.durable[0] && formValues.durable[0] == "durable") { - newBinding.durable = true; - } - } else { - if(formValues[ propName ] !== "") { - newBinding[ propName ] = formValues[propName]; - } - } - - } - } - if(addBinding.queue) { - newBinding.queue = addBinding.queue; - } - if(addBinding.exchange) { - newBinding.exchange = addBinding.exchange; - } - - addBinding.bindingArgumentsGrid.store.fetch({ - onComplete:function(items,request) - { - if(items.length) - { - array.forEach(items, function(item) - { - if (item && item.name && item.value) - { - var bindingArguments = newBinding.arguments; - if (!bindingArguments) + var noLocalValues = new Memory({ + data: [{ + name: "true", + id: true + }, + { + name: "false", + id: false + }] + }); + + var xMatchValues = new Memory({ + data: [{ + name: "all", + id: "all" + }, + { + name: "any", + id: "any" + }] + }); + + var defaultBindingArguments = [{ + id: 0, + name: "x-filter-jms-selector", + value: null + }, + { + id: 1, + name: "x-qpid-no-local", + value: null + }]; + + var GridWidgetProxy = declare("qpid.dojox.grid.cells.GridWidgetProxy", dojox.grid.cells._Widget, { + createWidget: function (inNode, inDatum, inRowIndex) + { + var WidgetClass = this.widgetClass; + var widgetProperties = this.getWidgetProps(inDatum); + var getWidgetProperties = widgetProperties.getWidgetProperties; + if (typeof getWidgetProperties == "function") + { + var item = this.grid.getItem(inRowIndex); + if (item) + { + var additionalWidgetProperties = getWidgetProperties(inDatum, inRowIndex, item); + if (additionalWidgetProperties) + { + WidgetClass = additionalWidgetProperties.widgetClass; + for (var prop in additionalWidgetProperties) + { + if (additionalWidgetProperties.hasOwnProperty(prop) && !widgetProperties[prop]) + { + widgetProperties[prop] = additionalWidgetProperties[prop]; + } + } + } + } + } + var widget = new WidgetClass(widgetProperties, inNode); + return widget; + }, + getValue: function (inRowIndex) + { + if (this.widget) + { + return this.widget.get('value'); + } + return null; + }, + _finish: function (inRowIndex) + { + if (this.widget) + { + this.inherited(arguments); + this.widget.destroyRecursive(); + this.widget = null; + } + } + }); + + var addBinding = {}; + + var node = construct.create("div", null, win.body(), "last"); + + var convertToBinding = function convertToBinding(formValues) + { + var newBinding = {}; + + newBinding.name = formValues.name; + for (var propName in formValues) + { + if (formValues.hasOwnProperty(propName)) + { + if (propName === "durable") + { + if (formValues.durable[0] && formValues.durable[0] == "durable") + { + newBinding.durable = true; + } + } + else + { + if (formValues[propName] !== "") + { + newBinding[propName] = formValues[propName]; + } + } + + } + } + if (addBinding.queue) + { + newBinding.queue = addBinding.queue; + } + if (addBinding.exchange) + { + newBinding.exchange = addBinding.exchange; + } + + addBinding.bindingArgumentsGrid.store.fetch({ + onComplete: function (items, request) + { + if (items.length) + { + array.forEach(items, function (item) + { + if (item && item.name && item.value) + { + var bindingArguments = newBinding.arguments; + if (!bindingArguments) + { + bindingArguments = {}; + newBinding.arguments = + bindingArguments; + } + bindingArguments[item.name] = item.value; + } + }); + } + } + }); + return newBinding; + }; + + var theForm; + node.innerHTML = template; + addBinding.dialogNode = dom.byId("addBinding"); + parser.instantiate([addBinding.dialogNode]); + + theForm = registry.byId("formAddBinding"); + array.forEach(theForm.getDescendants(), function (widget) + { + if (widget.name === "type") + { + widget.on("change", function (isChecked) + { + + var obj = registry.byId(widget.id + ":fields"); + if (obj) + { + if (isChecked) + { + obj.domNode.style.display = "block"; + obj.resize(); + } + else + { + obj.domNode.style.display = "none"; + obj.resize(); + } + } + }) + } + + }); + + var argumentsGridNode = dom.byId("formAddbinding.bindingArguments"); + var objectStore = new dojo.data.ObjectStore({ + objectStore: new Memory({ + data: lang.clone(defaultBindingArguments), + idProperty: "id" + }) + }); + + var layout = [[{ + name: "Argument Name", + field: "name", + width: "50%", + editable: true + }, { + name: 'Argument Value', + field: 'value', + width: '50%', + editable: true, + type: GridWidgetProxy, + widgetProps: { + getWidgetProperties: function (inDatum, inRowIndex, item) + { + if (item.name == "x-qpid-no-local") + { + return { + labelAttr: "name", + searchAttr: "id", + selectOnClick: false, + query: {id: "*"}, + required: false, + store: noLocalValues, + widgetClass: dijit.form.FilteringSelect + }; + } + else if (item.name && item.name.toLowerCase() == "x-match") + { + return { + labelAttr: "name", + searchAttr: "id", + selectOnClick: false, + query: {id: "*"}, + required: false, + store: xMatchValues, + widgetClass: dijit.form.FilteringSelect + }; + } + return {widgetClass: dijit.form.TextBox}; + } + } + }]]; + + var grid = new dojox.grid.EnhancedGrid({ + selectionMode: "multiple", + store: objectStore, + singleClickEdit: true, + structure: layout, + autoHeight: true, + plugins: {indirectSelection: true} + }, argumentsGridNode); + grid.startup(); + + addBinding.bindingArgumentsGrid = grid; + addBinding.idGenerator = 1; + var addArgumentButton = registry.byId("formAddbinding.addArgumentButton"); + var deleteArgumentButton = registry.byId("formAddbinding.deleteArgumentButton"); + + var toggleGridButtons = function (index) + { + var data = grid.selection.getSelected(); + deleteArgumentButton.set("disabled", !data || data.length == 0); + }; + connect.connect(grid.selection, 'onSelected', toggleGridButtons); + connect.connect(grid.selection, 'onDeselected', toggleGridButtons); + deleteArgumentButton.set("disabled", true); + + addArgumentButton.on("click", function (event) + { + addBinding.idGenerator = addBinding.idGenerator + 1; + var newItem = { + id: addBinding.idGenerator, + name: "", + value: "" + }; + grid.store.newItem(newItem); + grid.store.save(); + grid.store.fetch({ + onComplete: function (items, request) { - bindingArguments = {}; - newBinding.arguments = bindingArguments; - } - bindingArguments[item.name]=item.value; - } - }); - } - } - }); - return newBinding; - }; - - - var theForm; - node.innerHTML = template; - addBinding.dialogNode = dom.byId("addBinding"); - parser.instantiate([addBinding.dialogNode]); - - theForm = registry.byId("formAddBinding"); - array.forEach(theForm.getDescendants(), function(widget) - { - if(widget.name === "type") { - widget.on("change", function(isChecked) { - - var obj = registry.byId(widget.id + ":fields"); - if(obj) { - if(isChecked) { - obj.domNode.style.display = "block"; - obj.resize(); - } else { - obj.domNode.style.display = "none"; - obj.resize(); - } - } - }) + var rowIndex = items.length - 1; + window.setTimeout(function () + { + grid.focus.setFocusIndex(rowIndex, 1); + }, 10); } - }); + }); - var argumentsGridNode = dom.byId("formAddbinding.bindingArguments"); - var objectStore = new dojo.data.ObjectStore({objectStore: new Memory({data:lang.clone(defaultBindingArguments), idProperty: "id"})}); - - var layout = [[ - { name: "Argument Name", field: "name", width: "50%", editable: true }, - { name: 'Argument Value', field: 'value', width: '50%', editable: true, type: GridWidgetProxy, - widgetProps: { - getWidgetProperties: function(inDatum, inRowIndex, item) - { - if (item.name == "x-qpid-no-local") - { - return { - labelAttr: "name", - searchAttr: "id", - selectOnClick: false, - query: { id: "*"}, - required: false, - store: noLocalValues, - widgetClass: dijit.form.FilteringSelect - }; - } - else if (item.name && item.name.toLowerCase() == "x-match") - { - return { - labelAttr: "name", - searchAttr: "id", - selectOnClick: false, - query: { id: "*"}, - required: false, - store: xMatchValues, - widgetClass: dijit.form.FilteringSelect - }; - } - return {widgetClass: dijit.form.TextBox }; - } - } - } - ]]; - - var grid = new dojox.grid.EnhancedGrid({ - selectionMode: "multiple", - store: objectStore, - singleClickEdit: true, - structure: layout, - autoHeight: true, - plugins: {indirectSelection: true} - }, argumentsGridNode); - grid.startup(); - - addBinding.bindingArgumentsGrid = grid; - addBinding.idGenerator = 1; - var addArgumentButton = registry.byId("formAddbinding.addArgumentButton"); - var deleteArgumentButton = registry.byId("formAddbinding.deleteArgumentButton"); - - var toggleGridButtons = function(index) - { - var data = grid.selection.getSelected(); - deleteArgumentButton.set("disabled", !data || data.length==0); - }; - connect.connect(grid.selection, 'onSelected', toggleGridButtons); - connect.connect(grid.selection, 'onDeselected', toggleGridButtons); - deleteArgumentButton.set("disabled", true); - - addArgumentButton.on("click", - function(event) - { - addBinding.idGenerator = addBinding.idGenerator + 1; - var newItem = {id:addBinding.idGenerator, name: "", value: ""}; - grid.store.newItem(newItem); - grid.store.save(); - grid.store.fetch( + deleteArgumentButton.on("click", function (event) + { + var data = grid.selection.getSelected(); + if (data.length) + { + array.forEach(data, function (selectedItem) + { + if (selectedItem !== null) + { + grid.store.deleteItem(selectedItem); + } + }); + grid.store.save(); + } + }); + + theForm.on("submit", function (e) + { + + event.stop(e); + if (theForm.validate()) + { + + var newBinding = convertToBinding(util.getFormWidgetValues(registry.byId("formAddBinding"))); + var that = this; + var model = null; + if (addBinding.modelObj.type == "exchange") + { + model = { + name: newBinding.queue, + type: "queue", + parent: addBinding.modelObj + }; + } + else + { + model = { + name: newBinding.queue, + type: "queue", + parent: { + name: newBinding.exchange, + type: "exchange", + parent: addBinding.modelObj.parent + } + }; + } + addBinding.management.create("binding", model, newBinding).then(function (x) + { + registry.byId("addBinding") + .hide(); + }); + return false; + } + else + { + alert('Form contains invalid data. Please correct first'); + return false; + } + + }); + + addBinding.show = function (management, obj) + { + var that = this; + addBinding.management = management; + addBinding.modelObj = obj; + registry.byId("formAddBinding").reset(); + + var grid = addBinding.bindingArgumentsGrid; + grid.store.fetch({ + onComplete: function (items, request) { - onComplete:function(items,request) - { - var rowIndex = items.length - 1; - window.setTimeout(function() - { - grid.focus.setFocusIndex(rowIndex, 1 ); - },10); - } - }); - } - ); - - deleteArgumentButton.on("click", - function(event) - { - var data = grid.selection.getSelected(); - if(data.length) - { - array.forEach(data, function(selectedItem) { - if (selectedItem !== null) + if (items.length) + { + array.forEach(items, function (item) { - grid.store.deleteItem(selectedItem); - } - }); - grid.store.save(); - } - } - ); - - theForm.on("submit", function(e) { - - event.stop(e); - if(theForm.validate()){ - - var newBinding = convertToBinding(util.getFormWidgetValues(registry.byId("formAddBinding"))); - var that = this; - var model = null; - if (addBinding.modelObj.type == "exchange") - { - model = {name: newBinding.queue, type: "queue", parent: addBinding.modelObj}; - } - else - { - model = {name: newBinding.queue, - type: "queue", - parent: { name: newBinding.exchange, - type: "exchange", - parent: addBinding.modelObj.parent - } - }; + if (item !== null) + { + grid.store.deleteItem(item); + } + }); + } } - addBinding.management.create("binding", model, newBinding).then(function(x){registry.byId("addBinding").hide();}); - return false; - }else{ - alert('Form contains invalid data. Please correct first'); - return false; - } - - }); - - addBinding.show = function(management, obj) { - var that = this; - addBinding.management = management; - addBinding.modelObj = obj; - registry.byId("formAddBinding").reset(); - - var grid = addBinding.bindingArgumentsGrid; - grid.store.fetch({ - onComplete:function(items,request) - { - if(items.length) - { - array.forEach(items, function(item) - { - if (item !== null) - { - grid.store.deleteItem(item); - } - }); - } - } - }); - array.forEach(lang.clone(defaultBindingArguments), function(item) {grid.store.newItem(item); }); - grid.store.save(); - - management.load({type: "queue", parent: obj.parent }, {depth: 0}).then( - function(data) { - var queues = []; - for(var i=0; i < data.length; i++) { - queues[i] = {id: data[i].name, name: data[i].name}; - } - var queueStore = new Memory({ data: queues }); - - - if(that.queueChooser) { - that.queueChooser.destroy( false ); - } - var queueDiv = dom.byId("addBinding.selectQueueDiv"); - var input = construct.create("input", {id: "addBindingSelectQueue"}, queueDiv); - - that.queueChooser = new FilteringSelect({ id: "addBindingSelectQueue", - name: "queue", - store: queueStore, - searchAttr: "name", - promptMessage: "Name of the queue", - title: "Select the name of the queue"}, input); - - if(obj.type == "queue") - { - that.queueChooser.set("value", obj.name); - that.queueChooser.set("disabled", true); - } - management.load({type: "exchange", parent: obj.parent }, {depth: 0}).then( - function(data) { - - var exchanges = []; - for(var i=0; i < data.length; i++) { - exchanges[i] = {id: data[i].name, name: data[i].name}; - } - var exchangeStore = new Memory({ data: exchanges }); - - - if(that.exchangeChooser) { - that.exchangeChooser.destroy( false ); - } - var exchangeDiv = dom.byId("addBinding.selectExchangeDiv"); - var input = construct.create("input", {id: "addBindingSelectExchange"}, exchangeDiv); - - that.exchangeChooser = new FilteringSelect({ id: "addBindingSelectExchange", - name: "exchange", - store: exchangeStore, - searchAttr: "name", - promptMessage: "Name of the exchange", - title: "Select the name of the exchange"}, input); - - if(obj.type == "exchange") - { - that.exchangeChooser.set("value", obj.name); - that.exchangeChooser.set("disabled", true); - } - - - registry.byId("addBinding").show(); - }, util.xhrErrorHandler); - - - }, util.xhrErrorHandler); + }); + array.forEach(lang.clone(defaultBindingArguments), function (item) + { + grid.store.newItem(item); + }); + grid.store.save(); + + management.load({ + type: "queue", + parent: obj.parent + }, {depth: 0}).then(function (data) + { + var queues = []; + for (var i = 0; i < data.length; i++) + { + queues[i] = { + id: data[i].name, + name: data[i].name + }; + } + var queueStore = new Memory({data: queues}); + + if (that.queueChooser) + { + that.queueChooser.destroy(false); + } + var queueDiv = dom.byId("addBinding.selectQueueDiv"); + var input = construct.create("input", + {id: "addBindingSelectQueue"}, + queueDiv); + + that.queueChooser = new FilteringSelect({ + id: "addBindingSelectQueue", + name: "queue", + store: queueStore, + searchAttr: "name", + promptMessage: "Name of the queue", + title: "Select the name of the queue" + }, input); + + if (obj.type == "queue") + { + that.queueChooser.set("value", obj.name); + that.queueChooser.set("disabled", true); + } + management.load({ + type: "exchange", + parent: obj.parent + }, {depth: 0}).then(function (data) + { + + var exchanges = []; + for (var i = 0; + i < data.length; + i++) + { + exchanges[i] = { + id: data[i].name, + name: data[i].name + }; + } + var exchangeStore = new Memory({data: exchanges}); + + if (that.exchangeChooser) + { + that.exchangeChooser.destroy( + false); + } + var exchangeDiv = dom.byId( + "addBinding.selectExchangeDiv"); + var input = construct.create( + "input", + {id: "addBindingSelectExchange"}, + exchangeDiv); + + that.exchangeChooser = + new FilteringSelect({ + id: "addBindingSelectExchange", + name: "exchange", + store: exchangeStore, + searchAttr: "name", + promptMessage: "Name of the exchange", + title: "Select the name of the exchange" + }, input); + + if (obj.type + == "exchange") + { + that.exchangeChooser.set( + "value", + obj.name); + that.exchangeChooser.set( + "disabled", + true); + } + + registry.byId( + "addBinding").show(); + }, util.xhrErrorHandler); + }, util.xhrErrorHandler); - }; + }; - return addBinding; - }); + return addBinding; + });
Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addExchange.js URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addExchange.js?rev=1741609&r1=1741608&r2=1741609&view=diff ============================================================================== --- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addExchange.js (original) +++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addExchange.js Fri Apr 29 11:04:40 2016 @@ -29,76 +29,96 @@ define(["dojo/dom", "qpid/common/util", "dojo/text!addExchange.html", "dijit/form/NumberSpinner", // required by the form - /* dojox/ validate resources */ - "dojox/validate/us", "dojox/validate/web", - /* basic dijit classes */ + /* dojox/ validate resources */ + "dojox/validate/us", + "dojox/validate/web", + /* basic dijit classes */ "dijit/Dialog", - "dijit/form/CheckBox", "dijit/form/Textarea", - "dijit/form/FilteringSelect", "dijit/form/TextBox", - "dijit/form/ValidationTextBox", "dijit/form/DateTextBox", - "dijit/form/TimeTextBox", "dijit/form/Button", - "dijit/form/RadioButton", "dijit/form/Form", + "dijit/form/CheckBox", + "dijit/form/Textarea", + "dijit/form/FilteringSelect", + "dijit/form/TextBox", + "dijit/form/ValidationTextBox", "dijit/form/DateTextBox", - /* basic dojox classes */ - "dojox/form/BusyButton", "dojox/form/CheckedMultiSelect", - "dojo/domReady!"], - function (dom, construct, win, registry, parser, array, event, json, util, template) { - - var addExchange = {}; - - var node = construct.create("div", null, win.body(), "last"); - - var theForm; - node.innerHTML = template; - addExchange.dialogNode = dom.byId("addExchange"); - parser.instantiate([addExchange.dialogNode]); - - theForm = registry.byId("formAddExchange"); - array.forEach(theForm.getDescendants(), function(widget) - { - if(widget.name === "type") { - widget.on("change", function(isChecked) { - - var obj = registry.byId(widget.id + ":fields"); - if(obj) { - if(isChecked) { - obj.domNode.style.display = "block"; - obj.resize(); - } else { - obj.domNode.style.display = "none"; - obj.resize(); - } - } - }) - } - - }); - - theForm.on("submit", function(e) { - - event.stop(e); - if(theForm.validate()) - { - var newExchange = util.getFormWidgetValues(theForm, null); - var that = this; - addExchange.management.create("exchange", addExchange.modelObj, - newExchange).then(function(x){ registry.byId("addExchange").hide(); }); - return false; - - - }else{ - alert('Form contains invalid data. Please correct first'); - return false; - } - - }); - - addExchange.show = function(management, modelObj) { - addExchange.management = management - addExchange.modelObj = modelObj; - registry.byId("formAddExchange").reset(); - registry.byId("addExchange").show(); - }; + "dijit/form/TimeTextBox", + "dijit/form/Button", + "dijit/form/RadioButton", + "dijit/form/Form", + "dijit/form/DateTextBox", + /* basic dojox classes */ + "dojox/form/BusyButton", + "dojox/form/CheckedMultiSelect", + "dojo/domReady!"], function (dom, construct, win, registry, parser, array, event, json, util, template) + { + + var addExchange = {}; + + var node = construct.create("div", null, win.body(), "last"); + + var theForm; + node.innerHTML = template; + addExchange.dialogNode = dom.byId("addExchange"); + parser.instantiate([addExchange.dialogNode]); + + theForm = registry.byId("formAddExchange"); + array.forEach(theForm.getDescendants(), function (widget) + { + if (widget.name === "type") + { + widget.on("change", function (isChecked) + { + + var obj = registry.byId(widget.id + ":fields"); + if (obj) + { + if (isChecked) + { + obj.domNode.style.display = "block"; + obj.resize(); + } + else + { + obj.domNode.style.display = "none"; + obj.resize(); + } + } + }) + } + + }); + + theForm.on("submit", function (e) + { + + event.stop(e); + if (theForm.validate()) + { + var newExchange = util.getFormWidgetValues(theForm, null); + var that = this; + addExchange.management.create("exchange", addExchange.modelObj, newExchange).then(function (x) + { + registry.byId( + "addExchange") + .hide(); + }); + return false; + + } + else + { + alert('Form contains invalid data. Please correct first'); + return false; + } + + }); + + addExchange.show = function (management, modelObj) + { + addExchange.management = management + addExchange.modelObj = modelObj; + registry.byId("formAddExchange").reset(); + registry.byId("addExchange").show(); + }; - return addExchange; - }); \ No newline at end of file + return addExchange; + }); \ No newline at end of file Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addGroupProvider.js URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addGroupProvider.js?rev=1741609&r1=1741608&r2=1741609&view=diff ============================================================================== --- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addGroupProvider.js (original) +++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addGroupProvider.js Fri Apr 29 11:04:40 2016 @@ -18,8 +18,7 @@ * under the License. * */ -define([ - "dojo/dom", +define(["dojo/dom", "dojo/dom-construct", "dijit/registry", "dojo/parser", @@ -42,169 +41,202 @@ define([ "dijit/form/Form", "dijit/layout/ContentPane", "dojox/layout/TableContainer", - "dojo/domReady!"], - function (dom, construct, registry, parser, array, event, lang, json, util, template) - { - - var addGroupProvider = - { - init: function() - { - var that=this; - this.containerNode = construct.create("div", {innerHTML: template}); - parser.parse(this.containerNode).then(function(instances) { that._postParse(); }); - }, - _postParse: function() - { - var that=this; - this.groupProviderName = registry.byId("addGroupProvider.name"); - this.groupProviderName.set("regExpGen", util.nameOrContextVarRegexp); - - this.dialog = registry.byId("addGroupProvider"); - this.addButton = registry.byId("addGroupProvider.addButton"); - this.cancelButton = registry.byId("addGroupProvider.cancelButton"); - this.cancelButton.on("click", function(e){that._cancel(e);}); - this.addButton.on("click", function(e){that._add(e);}); - - this.groupProviderTypeFieldsContainer = dom.byId("addGroupProvider.typeFields"); - this.groupProviderForm = registry.byId("addGroupProvider.form"); - - this.groupProviderType = registry.byId("addGroupProvider.type"); - this.groupProviderType.on("change", function(type){that._groupProviderTypeChanged(type);}); - this.context = registry.byId("addGroupProvider.context"); - }, - show: function(management, modelObj, effectiveData) - { - this.management = management; - this.modelObj = modelObj; - this.groupProviderForm.reset(); - - var supportedTypes = management.metadata.getTypesForCategory("GroupProvider"); - supportedTypes.sort(); - var supportedTypesStore = util.makeTypeStore(supportedTypes); - this.groupProviderType.set("store", supportedTypesStore); - - if (effectiveData) - { - this._destroyTypeFields(this.containerNode); - var that = this; - management.load(modelObj, - {actuals: true, depth:0}).then(function(data) - { - var actualData = data[0]; - that.initialData = lang.clone(actualData); - that._initFields(actualData); - - that.groupProviderName.set("disabled", true); - that.groupProviderType.set("disabled", true); - that.dialog.set("title", "Edit Group Provider - " + effectiveData.name); - - util.setContextData(that.context, - management, - modelObj, - actualData, - effectiveData, - function(){that.dialog.show();}); - }); - } - else - { - this.initialData = null; - this.groupProviderName.set("disabled", false ); - this.groupProviderType.set("disabled", false ); - this.dialog.set("title", "Add Group Provider" ); - util.setToBrokerEffectiveContext(this.context, - management, - lang.hitch(this.dialog, this.dialog.show)); - } - - }, - _initFields:function(data) - { - var type = data["type"]; - var attributes = this.management.metadata.getMetaData("GroupProvider", type).attributes; - for(var name in attributes) - { - var widget = registry.byId("addGroupProvider."+name); - if (widget) - { - widget.set("value", data[name]); - } - } - }, - _cancel: function(e) - { - event.stop(e); - this.dialog.hide(); - }, - _add: function(e) - { - event.stop(e); - this._submit(); - }, - _submit: function() - { - if (this.groupProviderForm.validate()) - { - var groupProviderData = util.getFormWidgetValues(this.groupProviderForm, this.initialData); - var context = this.context.get("value"); - if (context && (!this.initialData || !util.equals(context, this.initialData.context))) - { - groupProviderData["context"] = context; - } - var that = this; - - if (this.initialData) - { - // update request - this.management.update(this.modelObj, groupProviderData).then(function(x){that.dialog.hide();}); - } - else - { - this.management.create("groupprovider", this.modelObj, groupProviderData).then( function(x){that.dialog.hide();}); - } - } - else - { - alert('Form contains invalid data. Please correct first'); - } - }, - _groupProviderTypeChanged: function(type) - { - this._destroyTypeFields(this.groupProviderTypeFieldsContainer); - if (type) - { - var that = this; - require([ "qpid/management/groupprovider/" + type.toLowerCase() + "/add"], function(typeUI) - { - try - { - typeUI.show({containerNode: that.groupProviderTypeFieldsContainer, parent: that, data: that.initialData}); - util.applyMetadataToWidgets(that.groupProviderTypeFieldsContainer, "GroupProvider", type, that.management.metadata); - } - catch(e) - { - console.warn(e); - } - }); - } - }, - _destroyTypeFields: function(typeFieldsContainer) - { - var widgets = registry.findWidgets(typeFieldsContainer); - array.forEach(widgets, function(item) { item.destroyRecursive();}); - construct.empty(typeFieldsContainer); - } - }; - - try - { - addGroupProvider.init(); - } - catch(e) - { - console.warn(e); - } - return addGroupProvider; + "dojo/domReady!"], function (dom, construct, registry, parser, array, event, lang, json, util, template) + { - }); \ No newline at end of file + var addGroupProvider = { + init: function () + { + var that = this; + this.containerNode = construct.create("div", {innerHTML: template}); + parser.parse(this.containerNode).then(function (instances) + { + that._postParse(); + }); + }, + _postParse: function () + { + var that = this; + this.groupProviderName = registry.byId("addGroupProvider.name"); + this.groupProviderName.set("regExpGen", util.nameOrContextVarRegexp); + + this.dialog = registry.byId("addGroupProvider"); + this.addButton = registry.byId("addGroupProvider.addButton"); + this.cancelButton = registry.byId("addGroupProvider.cancelButton"); + this.cancelButton.on("click", function (e) + { + that._cancel(e); + }); + this.addButton.on("click", function (e) + { + that._add(e); + }); + + this.groupProviderTypeFieldsContainer = dom.byId("addGroupProvider.typeFields"); + this.groupProviderForm = registry.byId("addGroupProvider.form"); + + this.groupProviderType = registry.byId("addGroupProvider.type"); + this.groupProviderType.on("change", function (type) + { + that._groupProviderTypeChanged(type); + }); + this.context = registry.byId("addGroupProvider.context"); + }, + show: function (management, modelObj, effectiveData) + { + this.management = management; + this.modelObj = modelObj; + this.groupProviderForm.reset(); + + var supportedTypes = management.metadata.getTypesForCategory("GroupProvider"); + supportedTypes.sort(); + var supportedTypesStore = util.makeTypeStore(supportedTypes); + this.groupProviderType.set("store", supportedTypesStore); + + if (effectiveData) + { + this._destroyTypeFields(this.containerNode); + var that = this; + management.load(modelObj, + { + actuals: true, + depth: 0 + }).then(function (data) + { + var actualData = data[0]; + that.initialData = lang.clone(actualData); + that._initFields(actualData); + + that.groupProviderName.set("disabled", true); + that.groupProviderType.set("disabled", true); + that.dialog.set("title", + "Edit Group Provider - " + effectiveData.name); + + util.setContextData(that.context, + management, + modelObj, + actualData, + effectiveData, + function () + { + that.dialog.show(); + }); + }); + } + else + { + this.initialData = null; + this.groupProviderName.set("disabled", false); + this.groupProviderType.set("disabled", false); + this.dialog.set("title", "Add Group Provider"); + util.setToBrokerEffectiveContext(this.context, + management, + lang.hitch(this.dialog, this.dialog.show)); + } + + }, + _initFields: function (data) + { + var type = data["type"]; + var attributes = this.management.metadata.getMetaData("GroupProvider", type).attributes; + for (var name in attributes) + { + var widget = registry.byId("addGroupProvider." + name); + if (widget) + { + widget.set("value", data[name]); + } + } + }, + _cancel: function (e) + { + event.stop(e); + this.dialog.hide(); + }, + _add: function (e) + { + event.stop(e); + this._submit(); + }, + _submit: function () + { + if (this.groupProviderForm.validate()) + { + var groupProviderData = util.getFormWidgetValues(this.groupProviderForm, this.initialData); + var context = this.context.get("value"); + if (context && (!this.initialData || !util.equals(context, this.initialData.context))) + { + groupProviderData["context"] = context; + } + var that = this; + + if (this.initialData) + { + // update request + this.management.update(this.modelObj, groupProviderData).then(function (x) + { + that.dialog.hide(); + }); + } + else + { + this.management.create("groupprovider", this.modelObj, groupProviderData).then(function (x) + { + that.dialog.hide(); + }); + } + } + else + { + alert('Form contains invalid data. Please correct first'); + } + }, + _groupProviderTypeChanged: function (type) + { + this._destroyTypeFields(this.groupProviderTypeFieldsContainer); + if (type) + { + var that = this; + require(["qpid/management/groupprovider/" + type.toLowerCase() + "/add"], function (typeUI) + { + try + { + typeUI.show({ + containerNode: that.groupProviderTypeFieldsContainer, + parent: that, + data: that.initialData + }); + util.applyMetadataToWidgets(that.groupProviderTypeFieldsContainer, + "GroupProvider", + type, + that.management.metadata); + } + catch (e) + { + console.warn(e); + } + }); + } + }, + _destroyTypeFields: function (typeFieldsContainer) + { + var widgets = registry.findWidgets(typeFieldsContainer); + array.forEach(widgets, function (item) + { + item.destroyRecursive(); + }); + construct.empty(typeFieldsContainer); + } + }; + + try + { + addGroupProvider.init(); + } + catch (e) + { + console.warn(e); + } + return addGroupProvider; + + }); \ No newline at end of file Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addLogInclusionRule.js URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addLogInclusionRule.js?rev=1741609&r1=1741608&r2=1741609&view=diff ============================================================================== --- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addLogInclusionRule.js (original) +++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addLogInclusionRule.js Fri Apr 29 11:04:40 2016 @@ -42,155 +42,194 @@ define(["dojo/_base/lang", "dijit/form/Form", "dijit/layout/ContentPane", "dojox/layout/TableContainer", - "dojo/domReady!"], - function (lang, dom, construct, registry, parser, memory, array, event, json, util, template) - { - var addLogInclusionRule = - { - init: function() - { - var that=this; - this.containerNode = construct.create("div", {innerHTML: template}); - parser.parse(this.containerNode).then(function(instances) { that._postParse(); }); - }, - _postParse: function() - { - var that=this; - this.name = registry.byId("addLogInclusionRule.name"); - this.name.set("regExpGen", util.nameOrContextVarRegexp); - - this.dialog = registry.byId("addLogInclusionRule"); - this.addButton = registry.byId("addLogInclusionRule.addButton"); - this.cancelButton = registry.byId("addLogInclusionRule.cancelButton"); - this.cancelButton.on("click", function(e){that._cancel(e);}); - this.addButton.on("click", function(e){that._add(e);}); - - this.typeFieldsContainer = dom.byId("addLogInclusionRule.typeFields"); - this.form = registry.byId("addLogInclusionRule.form"); - this.form.on("submit", function(){return false;}); - - this.logInclusionRuleType = registry.byId("addLogInclusionRule.type"); - this.logInclusionRuleType.on("change", function(type){that._typeChanged(type);}); - - this.durable = registry.byId("addLogInclusionRule.durable"); - this.allFieldsContainer = dom.byId("addLogInclusionRule.contentPane"); - }, - show: function(management, modelObj, category, actualData) - { - this.management = management; - this.modelObj = modelObj; - var metadata = management.metadata; - this.category = category; - this.configured = false; - this._destroyTypeFields(this.typeFieldsContainer); - this.logInclusionRuleType.set("store", util.makeTypeStoreFromMetadataByCategory(management.metadata, category)); - this.form.reset(); - - this.initialData = actualData; - this.isNew = !actualData; - - this.name.set("disabled", !this.isNew); - this.logInclusionRuleType.set("disabled", !this.isNew); - this.durable.set("disabled", !this.isNew); - this.dialog.set("title", this.isNew ? "Add Log Inclusion Rule" : "Edit Log Inclusion Rule - " + actualData.name); - - if (actualData) - { - this._configure(actualData.type); - } - - this.dialog.show(); - }, - _cancel: function(e) - { - event.stop(e); - this._destroyTypeFields(this.typeFieldsContainer); - this.dialog.hide(); - }, - _add: function(e) - { - event.stop(e); - this._submit(); - }, - _submit: function() - { - if (this.form.validate()) - { - var that = this; - var formData = util.getFormWidgetValues(this.form, this.initialData); - - if (this.isNew) - { - this.management.create(this.category, this.modelObj, formData).then(function(x){that.dialog.hide();}); - } - else - { - this.management.update(this.modelObj, formData).then(function(x){that.dialog.hide();}); - } - } - else - { - alert('Form contains invalid data. Please correct first'); - } - }, - _destroyTypeFields: function(typeFieldsContainer) - { - var widgets = registry.findWidgets(typeFieldsContainer); - array.forEach(widgets, function(item) { item.destroyRecursive();}); - construct.empty(typeFieldsContainer); - }, - _typeChanged: function(type) - { - this._destroyTypeFields(this.typeFieldsContainer); - - if (type) - { - this._configure(type); - var that = this; - require(["qpid/management/loginclusionrule/" + this.category.toLowerCase() + "/" + type.toLowerCase() + "/add"], function(typeUI) - { - try - { - var metadata = that.management.metadata; - var promise = typeUI.show({containerNode:that.typeFieldsContainer, data: that.initialData, metadata: metadata, category: that.category, type: type}); - if (promise) - { - promise.then( - function(instances) - { - util.applyToWidgets(that.typeFieldsContainer, that.category, type, that.initialData, metadata); - if (!that.isNew) - { - util.disableWidgetsForImmutableFields(that.allFieldsContainer, that.category, type, metadata); - } - }); - } - } - catch(e) - { - console.warn(e); - } - }); - } - }, - _configure: function(type) - { - if (!this.configured) - { - var metadata = this.management.metadata; - util.applyToWidgets(this.allFieldsContainer, this.category, type, this.initialData, metadata); - this.configured = true; - } - } - }; - - try - { - addLogInclusionRule.init(); - } - catch(e) - { - console.warn(e); - } - return addLogInclusionRule; - }); + "dojo/domReady!"], function (lang, dom, construct, registry, parser, memory, array, event, json, util, template) + { + var addLogInclusionRule = { + init: function () + { + var that = this; + this.containerNode = construct.create("div", {innerHTML: template}); + parser.parse(this.containerNode).then(function (instances) + { + that._postParse(); + }); + }, + _postParse: function () + { + var that = this; + this.name = registry.byId("addLogInclusionRule.name"); + this.name.set("regExpGen", util.nameOrContextVarRegexp); + + this.dialog = registry.byId("addLogInclusionRule"); + this.addButton = registry.byId("addLogInclusionRule.addButton"); + this.cancelButton = registry.byId("addLogInclusionRule.cancelButton"); + this.cancelButton.on("click", function (e) + { + that._cancel(e); + }); + this.addButton.on("click", function (e) + { + that._add(e); + }); + + this.typeFieldsContainer = dom.byId("addLogInclusionRule.typeFields"); + this.form = registry.byId("addLogInclusionRule.form"); + this.form.on("submit", function () + { + return false; + }); + + this.logInclusionRuleType = registry.byId("addLogInclusionRule.type"); + this.logInclusionRuleType.on("change", function (type) + { + that._typeChanged(type); + }); + + this.durable = registry.byId("addLogInclusionRule.durable"); + this.allFieldsContainer = dom.byId("addLogInclusionRule.contentPane"); + }, + show: function (management, modelObj, category, actualData) + { + this.management = management; + this.modelObj = modelObj; + var metadata = management.metadata; + this.category = category; + this.configured = false; + this._destroyTypeFields(this.typeFieldsContainer); + this.logInclusionRuleType.set("store", + util.makeTypeStoreFromMetadataByCategory(management.metadata, + category)); + this.form.reset(); + + this.initialData = actualData; + this.isNew = !actualData; + + this.name.set("disabled", !this.isNew); + this.logInclusionRuleType.set("disabled", !this.isNew); + this.durable.set("disabled", !this.isNew); + this.dialog.set("title", + this.isNew ? "Add Log Inclusion Rule" : "Edit Log Inclusion Rule - " + + actualData.name); + + if (actualData) + { + this._configure(actualData.type); + } + + this.dialog.show(); + }, + _cancel: function (e) + { + event.stop(e); + this._destroyTypeFields(this.typeFieldsContainer); + this.dialog.hide(); + }, + _add: function (e) + { + event.stop(e); + this._submit(); + }, + _submit: function () + { + if (this.form.validate()) + { + var that = this; + var formData = util.getFormWidgetValues(this.form, this.initialData); + + if (this.isNew) + { + this.management.create(this.category, this.modelObj, formData).then(function (x) + { + that.dialog.hide(); + }); + } + else + { + this.management.update(this.modelObj, formData).then(function (x) + { + that.dialog.hide(); + }); + } + } + else + { + alert('Form contains invalid data. Please correct first'); + } + }, + _destroyTypeFields: function (typeFieldsContainer) + { + var widgets = registry.findWidgets(typeFieldsContainer); + array.forEach(widgets, function (item) + { + item.destroyRecursive(); + }); + construct.empty(typeFieldsContainer); + }, + _typeChanged: function (type) + { + this._destroyTypeFields(this.typeFieldsContainer); + + if (type) + { + this._configure(type); + var that = this; + require(["qpid/management/loginclusionrule/" + this.category.toLowerCase() + "/" + + type.toLowerCase() + "/add"], function (typeUI) + { + try + { + var metadata = that.management.metadata; + var promise = typeUI.show({ + containerNode: that.typeFieldsContainer, + data: that.initialData, + metadata: metadata, + category: that.category, + type: type + }); + if (promise) + { + promise.then(function (instances) + { + util.applyToWidgets(that.typeFieldsContainer, + that.category, + type, + that.initialData, + metadata); + if (!that.isNew) + { + util.disableWidgetsForImmutableFields(that.allFieldsContainer, + that.category, + type, + metadata); + } + }); + } + } + catch (e) + { + console.warn(e); + } + }); + } + }, + _configure: function (type) + { + if (!this.configured) + { + var metadata = this.management.metadata; + util.applyToWidgets(this.allFieldsContainer, this.category, type, this.initialData, metadata); + this.configured = true; + } + } + }; + + try + { + addLogInclusionRule.init(); + } + catch (e) + { + console.warn(e); + } + return addLogInclusionRule; + }); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
