mirror of
https://github.com/apache/cloudstack.git
synced 2025-11-03 04:12:31 +01:00
bug 12534: Add Guest network - remove isTagged dropdown.
This commit is contained in:
parent
ad6c2bcc89
commit
8f15c07ebf
@ -518,8 +518,7 @@
|
||||
createForm: {
|
||||
title: 'Create network',
|
||||
preFilter: function(args) {
|
||||
if(selectedZoneObj.networktype == "Basic") {
|
||||
args.$form.find('.form-item[rel=vlanTagged]').hide();
|
||||
if(selectedZoneObj.networktype == "Basic") {
|
||||
args.$form.find('.form-item[rel=vlanId]').hide();
|
||||
args.$form.find('.form-item[rel=scope]').hide();
|
||||
args.$form.find('.form-item[rel=domainId]').hide();
|
||||
@ -529,7 +528,6 @@
|
||||
args.$form.find('.form-item[rel=podId]').css('display', 'inline-block');
|
||||
}
|
||||
else { //"Advanced"
|
||||
args.$form.find('.form-item[rel=vlanTagged]').css('display', 'inline-block');
|
||||
args.$form.find('.form-item[rel=vlanId]').css('display', 'inline-block');
|
||||
args.$form.find('.form-item[rel=scope]').css('display', 'inline-block');
|
||||
//args.$form.find('.form-item[rel=domainId]').css('display', 'inline-block'); //depends on scope field
|
||||
@ -547,13 +545,7 @@
|
||||
description: {
|
||||
label: 'Description',
|
||||
validation: { required: true }
|
||||
},
|
||||
vlanTagged: {
|
||||
label: 'VLAN',
|
||||
select: function(args) {
|
||||
args.response.success({data: {id: "tagged", description: "tagged"}});
|
||||
}
|
||||
},
|
||||
},
|
||||
vlanId: { label: "VLAN ID" },
|
||||
scope: {
|
||||
label: 'Scope',
|
||||
@ -760,13 +752,9 @@
|
||||
array1.push("&vlan=untagged");
|
||||
}
|
||||
else { //"Advanced"
|
||||
if (args.data.vlanTagged == "tagged")
|
||||
array1.push("&vlan=" + todb(args.data.vlanId));
|
||||
else
|
||||
array1.push("&vlan=untagged");
|
||||
array1.push("&vlan=" + todb(args.data.vlanId));
|
||||
|
||||
var $form = args.$form;
|
||||
|
||||
if($form.find('.form-item[rel=domainId]').css("display") != "none") {
|
||||
if($form.find('.form-item[rel=account]').css("display") != "none") { //account-specific
|
||||
array1.push("&acltype=account");
|
||||
@ -4597,625 +4585,7 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
/*
|
||||
networks: {
|
||||
sectionSelect: { label: 'Network type' },
|
||||
sections: {
|
||||
publicNetworks: {
|
||||
type: 'select',
|
||||
title: 'Public network',
|
||||
listView: {
|
||||
section: 'networks',
|
||||
id: 'networks',
|
||||
fields: {
|
||||
//id: { label: "ID" },
|
||||
traffictype: { label: "Traffic type" },
|
||||
broadcastdomaintype: { label: "Broadcast domain type" }
|
||||
},
|
||||
|
||||
dataProvider: function(args) { //public network
|
||||
var showPublicNetwork = true;
|
||||
|
||||
if(selectedZoneObj.networktype == "Basic") {
|
||||
//$("#add_network_button").hide();
|
||||
$.ajax({
|
||||
url: createURL("listExternalFirewalls&zoneid=" + selectedZoneObj.id),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var items = json.listexternalfirewallsresponse.externalfirewall;
|
||||
if(items != null && items.length > 0) {
|
||||
showPublicNetwork = true;
|
||||
//$("#add_iprange_button,#tab_ipallocation").show();
|
||||
}
|
||||
else {
|
||||
showPublicNetwork = false;
|
||||
//$("#add_iprange_button,#tab_ipallocation").hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
else { // Advanced zone
|
||||
showPublicNetwork = true;
|
||||
//$("#add_network_button,#add_iprange_button,#tab_ipallocation").show();
|
||||
//listMidMenuItems2(("listNetworks&type=Direct&zoneId="+selectedZoneObj.id), networkGetSearchParams, "listnetworksresponse", "network", directNetworkToMidmenu, directNetworkToRightPanel, directNetworkGetMidmenuId, false, 1);
|
||||
}
|
||||
|
||||
if(showPublicNetwork == true && selectedZoneObj.securitygroupsenabled == false) { //public network
|
||||
$.ajax({
|
||||
url: createURL("listNetworks&trafficType=Public&isSystem=true&zoneId="+selectedZoneObj.id),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var items = json.listnetworksresponse.network;
|
||||
args.response.success({data: items});
|
||||
}
|
||||
});
|
||||
}
|
||||
else if (showPublicNetwork == true && selectedZoneObj.securitygroupsenabled == true){
|
||||
$.ajax({
|
||||
url: createURL("listNetworks&type=Direct&trafficType=Guest&isSystem=true&zoneId="+selectedZoneObj.id),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var items = json.listnetworksresponse.network;
|
||||
args.response.success({data: items});
|
||||
}
|
||||
});
|
||||
}
|
||||
else {
|
||||
args.response.success({data: null});
|
||||
}
|
||||
} ,
|
||||
|
||||
detailView: {
|
||||
//viewAll: { label: 'Hosts', path: 'instances' },
|
||||
|
||||
actions: {
|
||||
addIpRange: {
|
||||
label: 'Add IP range',
|
||||
messages: {
|
||||
confirm: function(args) {
|
||||
return 'Are you sure you want to add IP range?';
|
||||
},
|
||||
success: function(args) {
|
||||
return 'IP range is being added.';
|
||||
},
|
||||
notification: function(args) {
|
||||
return 'Adding IP range';
|
||||
},
|
||||
complete: function(args) {
|
||||
return 'IP range has been added.';
|
||||
}
|
||||
},
|
||||
createForm: {
|
||||
title: 'Add IP range',
|
||||
fields: {
|
||||
vlanTagged: {
|
||||
label: 'VLAN',
|
||||
dependsOn: 'isBootable',
|
||||
select: function(args) {
|
||||
var items = [];
|
||||
items.push({id: "untagged", description: "untagged"});
|
||||
items.push({id: "tagged", description: "tagged"});
|
||||
args.response.success({data: items});
|
||||
args.$select.change(function() {
|
||||
var $form = $(this).closest('form');
|
||||
if($(this).val() == "tagged")
|
||||
$form.find('.form-item[rel=vlanId]').css('display', 'inline-block');
|
||||
else //"untagged"
|
||||
$form.find('.form-item[rel=vlanId]').hide();
|
||||
});
|
||||
}
|
||||
},
|
||||
vlanId: { label: "VLAN ID" },
|
||||
|
||||
scope: {
|
||||
label: 'Scope',
|
||||
select: function(args) {
|
||||
var array1 = [];
|
||||
if(selectedZoneObj.securitygroupsenabled) {
|
||||
array1.push({id: 'account-specific', description: 'account-specific'});
|
||||
}
|
||||
else {
|
||||
array1.push({id: 'zone-wide', description: 'zone-wide'});
|
||||
array1.push({id: 'domain-specific', description: 'domain-specific'});
|
||||
array1.push({id: 'account-specific', description: 'account-specific'});
|
||||
}
|
||||
args.response.success({data: array1});
|
||||
|
||||
args.$select.change(function() {
|
||||
var $form = $(this).closest('form');
|
||||
if($(this).val() == "zone-wide") {
|
||||
$form.find('.form-item[rel=domainId]').hide();
|
||||
$form.find('.form-item[rel=account]').hide();
|
||||
}
|
||||
else if ($(this).val() == "domain-specific") {
|
||||
$form.find('.form-item[rel=domainId]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=account]').hide();
|
||||
}
|
||||
else if($(this).val() == "account-specific") {
|
||||
$form.find('.form-item[rel=domainId]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=account]').css('display', 'inline-block');
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
domainId: {
|
||||
label: 'Domain',
|
||||
validation: { required: true },
|
||||
select: function(args) {
|
||||
var items = [];
|
||||
if(selectedZoneObj.domainid != null) { //list only domains under selectedZoneObj.domainid
|
||||
$.ajax({
|
||||
url: createURL("listDomainChildren&id=" + selectedZoneObj.domainid + "&isrecursive=true"),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var domainObjs = json.listdomainchildrenresponse.domain;
|
||||
$(domainObjs).each(function() {
|
||||
items.push({id: this.id, description: this.name});
|
||||
});
|
||||
}
|
||||
});
|
||||
$.ajax({
|
||||
url: createURL("listDomains&id=" + selectedZoneObj.domainid),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var domainObjs = json.listdomainsresponse.domain;
|
||||
$(domainObjs).each(function() {
|
||||
items.push({id: this.id, description: this.name});
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
else { //list all domains
|
||||
$.ajax({
|
||||
url: createURL("listDomains"),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var domainObjs = json.listdomainsresponse.domain;
|
||||
$(domainObjs).each(function() {
|
||||
items.push({id: this.id, description: this.name});
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
args.response.success({data: items});
|
||||
}
|
||||
},
|
||||
account: { label: 'Account' },
|
||||
|
||||
gateway: { label: 'Gateway' },
|
||||
netmask: { label: 'Netmask' },
|
||||
startip: { label: 'Start IP' },
|
||||
endip: { label: 'End IP' }
|
||||
}
|
||||
},
|
||||
action: function(args) {
|
||||
var $form = args.$form;
|
||||
var array1 = [];
|
||||
array1.push("&zoneId=" + args.context.zones[0].id);
|
||||
|
||||
if (args.data.vlanTagged == "tagged")
|
||||
array1.push("&vlan=" + todb(args.data.vlanId));
|
||||
else
|
||||
array1.push("&vlan=untagged");
|
||||
|
||||
if($form.find('.form-item[rel=domainId]').css("display") != "none") {
|
||||
if($form.find('.form-item[rel=account]').css("display") != "none") { //account-specific
|
||||
array1.push("&domainId=" + args.data.domainId);
|
||||
array1.push("&account=" + args.data.account);
|
||||
}
|
||||
else { //domain-specific
|
||||
array1.push("&domainId=" + args.data.domainId);
|
||||
array1.push("&isshared=true");
|
||||
}
|
||||
}
|
||||
else { //zone-wide
|
||||
array1.push("&isshared=true");
|
||||
}
|
||||
|
||||
array1.push("&gateway=" + args.data.gateway);
|
||||
array1.push("&netmask=" + args.data.netmask);
|
||||
array1.push("&startip=" + args.data.startip);
|
||||
if(args.data.endip != null && args.data.endip.length > 0)
|
||||
array1.push("&endip=" + args.data.endip);
|
||||
|
||||
if(args.context.zones[0].securitygroupsenabled == false)
|
||||
array1.push("&forVirtualNetwork=true");
|
||||
else
|
||||
array1.push("&forVirtualNetwork=false");
|
||||
|
||||
$.ajax({
|
||||
url: createURL("createVlanIpRange" + array1.join("")),
|
||||
dataType: "json",
|
||||
success: function(json) {
|
||||
var item = json.createvlaniprangeresponse.vlan;
|
||||
args.response.success({data: item});
|
||||
},
|
||||
error: function(XMLHttpResponse) {
|
||||
var errorMsg = parseXMLHttpResponse(XMLHttpResponse);
|
||||
args.response.error(errorMsg);
|
||||
}
|
||||
});
|
||||
},
|
||||
notification: {
|
||||
poll: function(args) {
|
||||
args.complete();
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
tabs: {
|
||||
details: {
|
||||
title: 'Details',
|
||||
fields: [
|
||||
{
|
||||
networkofferingdisplaytext: { label: "Network offering description" }
|
||||
},
|
||||
{
|
||||
id: { label: "ID" },
|
||||
broadcastdomaintype: { label: 'Broadcast domain type' },
|
||||
traffictype: { label: 'Traffic type' },
|
||||
gateway: { label: 'Gateway' },
|
||||
netmask: { label: 'Netmask' },
|
||||
startip: { label: 'Start IP' },
|
||||
endip: { label: 'End IP' },
|
||||
zoneid: { label: 'Zone ID' },
|
||||
networkofferingid: { label: 'Network offering ID' },
|
||||
networkofferingname: { label: 'Network offering name' },
|
||||
networkofferingavailability: { label: 'network offering availability' },
|
||||
isshared: {
|
||||
label: 'Shared',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
issystem: {
|
||||
label: 'System',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
isdefault: {
|
||||
label: 'Default',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
securitygroupenabled: {
|
||||
label: 'Security group enabled',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
state: { label: 'State' },
|
||||
related: { label: 'Related' },
|
||||
dns1: { label: 'DNS 1' },
|
||||
dns2: { label: 'DNS 2' },
|
||||
vlan: { label: 'VLAN' },
|
||||
domainid: { label: 'Domain ID' },
|
||||
account: { label: 'Account' }
|
||||
}
|
||||
],
|
||||
dataProvider: function(args) {
|
||||
args.response.success({data: args.context.publicNetworks[0]});
|
||||
}
|
||||
},
|
||||
ipAllocations: {
|
||||
title: 'IP Allocations',
|
||||
multiple: true,
|
||||
fields: [
|
||||
{
|
||||
id: { label: 'ID' },
|
||||
vlan: { label: 'VLAN' },
|
||||
gateway: { label: 'Gateway' },
|
||||
netmask: { label: 'Netmask' },
|
||||
startip: { label: 'Start IP' },
|
||||
endip: { label: 'End IP' },
|
||||
domain: { label: 'Domain' },
|
||||
account: { label: 'Account' }
|
||||
}
|
||||
],
|
||||
dataProvider: function(args) {
|
||||
$.ajax({
|
||||
url: createURL("listVlanIpRanges&zoneid=" + args.context.zones[0].id + "&networkId=" + args.context.publicNetworks[0].id),
|
||||
dataType: "json",
|
||||
success: function(json) {
|
||||
var items = json.listvlaniprangesresponse.vlaniprange;
|
||||
args.response.success({
|
||||
actionFilter: publicNetworkActionfilter,
|
||||
data: items});
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
directNetworks: {
|
||||
title: 'Direct network',
|
||||
type: 'select',
|
||||
listView: {
|
||||
section: 'networks',
|
||||
id: 'networks',
|
||||
fields: {
|
||||
//id: { label: "ID" },
|
||||
vlan: { label: "VLAN ID" },
|
||||
traffictype: { label: "Traffic type" }
|
||||
},
|
||||
actions: {
|
||||
//create direct network action has moved to Guest network
|
||||
},
|
||||
dataProvider: function(args) { //direct netwoerk
|
||||
if(selectedZoneObj.networktype == "Basic") {
|
||||
args.response.success({data: null});
|
||||
}
|
||||
else { // Advanced zone
|
||||
//$("#add_network_button,#add_iprange_button,#tab_ipallocation").show();
|
||||
$.ajax({
|
||||
url: createURL("listNetworks&type=Direct&zoneId="+selectedZoneObj.id),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var items = json.listnetworksresponse.network;
|
||||
args.response.success({
|
||||
actionFilter: directNetworkActionfilter,
|
||||
data: items});
|
||||
}
|
||||
});
|
||||
}
|
||||
} ,
|
||||
|
||||
detailView: {
|
||||
//viewAll: { label: 'Hosts', path: 'instances' },
|
||||
actions: {
|
||||
addIpRange: {
|
||||
label: 'Add IP range',
|
||||
messages: {
|
||||
confirm: function(args) {
|
||||
return 'Are you sure you want to add IP range?';
|
||||
},
|
||||
success: function(args) {
|
||||
return 'IP range is being added.';
|
||||
},
|
||||
notification: function(args) {
|
||||
return 'Adding IP range';
|
||||
},
|
||||
complete: function(args) {
|
||||
return 'IP range has been added.';
|
||||
}
|
||||
},
|
||||
createForm: {
|
||||
title: 'Add IP range',
|
||||
preFilter: function(args) {
|
||||
if(args.context.zones[0].securitygroupsenabled) {
|
||||
args.$form.find('.form-item[rel=vlanId]').css('display', 'inline-block');
|
||||
args.$form.find('.form-item[rel=gateway]').css('display', 'inline-block');
|
||||
args.$form.find('.form-item[rel=netmask]').css('display', 'inline-block');
|
||||
}
|
||||
else {
|
||||
args.$form.find('.form-item[rel=vlanId]').hide();
|
||||
args.$form.find('.form-item[rel=gateway]').hide();
|
||||
args.$form.find('.form-item[rel=netmask]').hide();
|
||||
}
|
||||
},
|
||||
fields: {
|
||||
vlanId: { label: 'VLAN ID' },
|
||||
gateway: { label: 'Gateway' },
|
||||
netmask: { label: 'Netmask' },
|
||||
startip: { label: 'Start IP' },
|
||||
endip: { label: 'End IP' }
|
||||
}
|
||||
},
|
||||
action: function(args) {
|
||||
var $form = args.$form;
|
||||
var array1 = [];
|
||||
if($form.find('.form-item[rel=vlanId]').css("display") != "none") {
|
||||
array1.push("&vlan="+todb(args.data.vlanId));
|
||||
}
|
||||
//else { //Bug 8950 (don't specify "vlan=untagged" if vlanId is not available when Adding Ip Range to Direct Network)
|
||||
// array1.push("&vlan=untagged");
|
||||
//}
|
||||
|
||||
if($form.find('.form-item[rel=gateway]').css("display") != "none") {
|
||||
array1.push("&gateway=" + todb(args.data.gateway));
|
||||
}
|
||||
|
||||
if($form.find('.form-item[rel=netmask]').css("display") != "none") {
|
||||
array1.push("&netmask=" + todb(args.data.netmask));
|
||||
}
|
||||
|
||||
array1.push("&startip=" + todb(args.data.startip));
|
||||
|
||||
if(args.data.endip != null && args.data.endip.length > 0)
|
||||
array1.push("&endip=" + todb(args.data.endip));
|
||||
|
||||
|
||||
$.ajax({
|
||||
url: createURL("createVlanIpRange&forVirtualNetwork=false&networkid=" + args.context.directNetworks[0].id + array1.join("")),
|
||||
dataType: "json",
|
||||
success: function(json) {
|
||||
var item = json.createvlaniprangeresponse.vlan;
|
||||
args.response.success({data: item});
|
||||
},
|
||||
error: function(XMLHttpResponse) {
|
||||
var errorMsg = parseXMLHttpResponse(XMLHttpResponse);
|
||||
args.response.error(errorMsg);
|
||||
}
|
||||
});
|
||||
},
|
||||
notification: {
|
||||
poll: function(args) {
|
||||
args.complete();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
edit: {
|
||||
label: 'Edit',
|
||||
|
||||
messages: {
|
||||
confirm: function(args) {
|
||||
return 'Are you sure you want to edit network?';
|
||||
},
|
||||
success: function(args) {
|
||||
return 'Network is being edited.';
|
||||
},
|
||||
notification: function(args) {
|
||||
return 'Editing network';
|
||||
},
|
||||
complete: function(args) {
|
||||
return 'Network has been edited.';
|
||||
}
|
||||
},
|
||||
|
||||
action: function(args) {
|
||||
var array1 = [];
|
||||
array1.push("&name=" + todb(args.data.name));
|
||||
array1.push("&displayText=" + todb(args.data.displaytext));
|
||||
array1.push("&networkdomain=" + todb(args.data.networkdomain));
|
||||
array1.push("&tags=" + todb(args.data.tags));
|
||||
|
||||
$.ajax({
|
||||
url: createURL("updateNetwork&id=" + args.context.directNetworks[0].id + array1.join("")),
|
||||
dataType: "json",
|
||||
success: function(json) {
|
||||
var jid = json.updatenetworkresponse.jobid;
|
||||
args.response.success(
|
||||
{_custom:
|
||||
{jobId: jid,
|
||||
getUpdatedItem: function(json) {
|
||||
var item = json.queryasyncjobresultresponse.jobresult.network;
|
||||
return {data: item};
|
||||
},
|
||||
getActionFilter: function() {
|
||||
return directNetworkActionfilter;
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
});
|
||||
},
|
||||
notification: {
|
||||
poll: pollAsyncJobResult
|
||||
}
|
||||
},
|
||||
|
||||
'delete': {
|
||||
label: 'Delete network',
|
||||
messages: {
|
||||
confirm: function(args) {
|
||||
return 'Are you sure you want to delete network ?';
|
||||
},
|
||||
success: function(args) {
|
||||
return 'Network is being deleted.';
|
||||
},
|
||||
notification: function(args) {
|
||||
return 'Deleting network';
|
||||
},
|
||||
complete: function(args) {
|
||||
return 'Network has been deleted.';
|
||||
}
|
||||
},
|
||||
action: function(args) {
|
||||
$.ajax({
|
||||
url: createURL("deleteNetwork&id=" + args.context.directNetworks[0].id),
|
||||
dataType: "json",
|
||||
async: true,
|
||||
success: function(json) {
|
||||
var jid = json.deletenetworkresponse.jobid;
|
||||
args.response.success(
|
||||
{_custom:
|
||||
{jobId: jid,
|
||||
getUpdatedItem: function(json) {
|
||||
return {}; //nothing in this template needs to be updated, in fact, this whole template has being deleted
|
||||
},
|
||||
getActionFilter: function() {
|
||||
return directNetworkActionfilter;
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
});
|
||||
},
|
||||
notification: {
|
||||
poll: pollAsyncJobResult
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
tabs: {
|
||||
details: {
|
||||
title: 'Details', //direct network details
|
||||
fields: [
|
||||
{
|
||||
name: {
|
||||
label: 'Name',
|
||||
isEditable: true
|
||||
}
|
||||
},
|
||||
{
|
||||
id: { label: "ID" },
|
||||
displaytext: {
|
||||
label: 'Description',
|
||||
isEditable: true
|
||||
},
|
||||
isdefault: {
|
||||
label: 'Default',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
vlan: { label: 'VLAN ID' },
|
||||
domain: { label: 'Domain' },
|
||||
account: { label: 'Account' },
|
||||
gateway: { label: 'Gateway' },
|
||||
netmask: { label: 'Netmask' },
|
||||
startip: { label: 'Start IP' },
|
||||
endip: { label: 'End IP' },
|
||||
networkdomain: {
|
||||
label: 'Network domain',
|
||||
isEditable: true
|
||||
},
|
||||
tags: {
|
||||
label: 'Tags',
|
||||
isEditable: true
|
||||
}
|
||||
}
|
||||
],
|
||||
dataProvider: function(args) {
|
||||
args.response.success({data: args.context.directNetworks[0]});
|
||||
}
|
||||
},
|
||||
ipAllocations: {
|
||||
title: 'IP Allocations',
|
||||
multiple: true,
|
||||
fields: [
|
||||
{
|
||||
id: { label: 'ID' },
|
||||
vlan: { label: 'VLAN' },
|
||||
startip: { label: 'Start IP' },
|
||||
endip: { label: 'End IP' }
|
||||
}
|
||||
],
|
||||
dataProvider: function(args) {
|
||||
$.ajax({
|
||||
url: createURL("listVlanIpRanges&zoneid="+ args.context.zones[0].id + "&networkid="+ args.context.directNetworks[0].id),
|
||||
dataType: "json",
|
||||
success: function(json) {
|
||||
var items = json.listvlaniprangesresponse.vlaniprange;
|
||||
args.response.success({data: items});
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
*/
|
||||
},
|
||||
|
||||
pods: {
|
||||
title: 'Pods',
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user