Skip to content

Commit

Permalink
UUID of the subnet is getting sent from UI in Virtual network page.
Browse files Browse the repository at this point in the history
Change-Id: I4e7a9a11065a557804ac35d3e48e2d0ddfc4b957
Closes-Bug: #1436688
  • Loading branch information
balamurugang committed Apr 7, 2015
1 parent f53f7a0 commit b534567
Showing 1 changed file with 24 additions and 7 deletions.
31 changes: 24 additions & 7 deletions webroot/config/vn/ui/js/vn_config.js
Expand Up @@ -484,6 +484,7 @@ function initActions() {
for (var i = 0; i < ipamTuples.length; i++) {
var id = getID(String($("#ipamTuples").children()[i].id));
var cidr = $("#ipamTuples_"+id+"_txtCIDR").val().trim();
var subnetuuidval = $("#ipamTuples_"+id+"_hiddenSubnetUUID").val().trim();
var currentIpam = $("#ipamTuples_"+id+"_ddSelIpam").data("contrailDropdown").value().trim();
var allocPoolVal = $("#ipamTuples_"+id+"_txtAllocPool").val().trim();
var enableDHCP = $("#ipamTuples_"+id+"_chkDHCP")[0].checked;
Expand Down Expand Up @@ -523,11 +524,11 @@ function initActions() {
}
}
if(ipamList.lastIndexOf(currentIpam) === -1) {
mgmtOptions.splice(i, 0, {IPAM: currentIpam, CIDR:cidr, Gateway:currentGateway,EnableDHCP : enableDHCP,AllocPool:allocation_pools,addrStart : addrFromStart , hostRoute:finalHR,dNSServert:finalDNSServer});
mgmtOptions.splice(i, 0, {IPAM: currentIpam, CIDR:cidr, Gateway:currentGateway,EnableDHCP : enableDHCP,AllocPool:allocation_pools,addrStart : addrFromStart , hostRoute:finalHR,dNSServert:finalDNSServer, subnetuuid:subnetuuidval});
ipamList.splice(i, 0, currentIpam);
} else {
var lastPos = ipamList.lastIndexOf(currentIpam);
mgmtOptions.splice(lastPos+1, 0, {IPAM: "", CIDR:cidr, Gateway:currentGateway,EnableDHCP : enableDHCP , AllocPool:allocation_pools,addrStart : addrFromStart ,hostRoute:finalHR,dNSServert:finalDNSServer});
mgmtOptions.splice(lastPos+1, 0, {IPAM: "", CIDR:cidr, Gateway:currentGateway,EnableDHCP : enableDHCP , AllocPool:allocation_pools,addrStart : addrFromStart ,hostRoute:finalHR,dNSServert:finalDNSServer, subnetuuid:subnetuuidval});
ipamList.splice(lastPos+1, 0, currentIpam);
}
}
Expand All @@ -545,6 +546,8 @@ function initActions() {
var hostRouteTemp = mgmtOptions[i].hostRoute;
var allocation_pools = mgmtOptions[i].AllocPool;
var dnsServer = mgmtOptions[i].dNSServert;
var subnetuuid = mgmtOptions[i].subnetuuid;

if (ipam !== "") {

vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex] = {};
Expand Down Expand Up @@ -574,6 +577,7 @@ function initActions() {
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][0]["dhcp_option_list"] = {};
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][0]["dhcp_option_list"]["dhcp_option"] = dnsServer;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][0]["allocation_pools"] = allocation_pools;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][0]["subnet_uuid"] = subnetuuid;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][0]["addr_from_start"] = addFromStart;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][0]["default_gateway"] = gateway;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][0]["host_routes"] = {};
Expand All @@ -590,6 +594,7 @@ function initActions() {
var addFromStart = mgmtOptions[j].addrStart;
var hostRouteTemp = mgmtOptions[j].hostRoute;
var dnsServer = mgmtOptions[j].dNSServert;
var subnetuuid = mgmtOptions[j].subnetuuid;

if (newIpam == "") {
i++;
Expand All @@ -606,6 +611,7 @@ function initActions() {
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][subnetLen]["dhcp_option_list"] = {};
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][subnetLen]["dhcp_option_list"]["dhcp_option"] = dnsServer;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][subnetLen]["allocation_pools"] = allocation_pools;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][subnetLen]["subnet_uuid"] = subnetuuid;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][subnetLen]["addr_from_start"] = addFromStart;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][subnetLen]["default_gateway"] = gateway;
vnConfig["virtual-network"]["network_ipam_refs"][ipamIndex]["attr"]["ipam_subnets"][subnetLen]["host_routes"] = {};
Expand Down Expand Up @@ -1094,6 +1100,13 @@ function createIPAMEntry(ipamBlock, id,element) {
divIPBlock.className = "span2";
divIPBlock.appendChild(inputTxtIPBlock);

var newUUID = UUIDjs.create()
var hiddenTxtsubnetUUID = document.createElement("input");
hiddenTxtsubnetUUID.setAttribute("type","hidden");
hiddenTxtsubnetUUID.setAttribute("id",element+"_"+id+"_hiddenSubnetUUID");
hiddenTxtsubnetUUID.setAttribute("value",newUUID['hex']);
var divsubnetuuid = document.createElement("div");
divsubnetuuid.appendChild(hiddenTxtsubnetUUID);
var inputTxtAlocPool = document.createElement("textarea");
inputTxtAlocPool.type = "text";
inputTxtAlocPool.className = "span12 textareaNoresize";
Expand Down Expand Up @@ -1203,6 +1216,7 @@ function createIPAMEntry(ipamBlock, id,element) {
divRowFluidMargin5.appendChild(divIPGateway);
divRowFluidMargin5.appendChild(divDNS);
divRowFluidMargin5.appendChild(divDHCP);
divRowFluidMargin5.appendChild(divsubnetuuid);

if(!isVCenter()) {
divRowFluidMargin5.appendChild(divPullLeftMargin5Plus);
Expand Down Expand Up @@ -1249,15 +1263,16 @@ function createIPAMEntry(ipamBlock, id,element) {
chkDNS.checked = getDNSStatus(ipamBlock);
inputcboxDhcp.checked = ipamBlock.DHCPEnabled;
$(inputTxtAlocPool).val(ipamBlock.AlocPool);
$(hiddenTxtsubnetUUID).val(ipamBlock.subnetUUID);
var temp_ipam = ipamBlock.IPAM.split(":")
$(selectIpams).data("contrailDropdown").value((temp_ipam[0]+":"+temp_ipam[1]+":"+temp_ipam[2]));
$(selectIpams).data("contrailDropdown").enable(false);
$(inputcboxDhcp).attr("disabled", "disabled");
$(chkGw).attr("disabled", "disabled");
$(inputcboxDhcp).attr("disabled", "disabled");
$(chkGw).attr("disabled", "disabled");
$(chkDNS).attr("disabled", "disabled");
$(inputTxtIPBlock).attr("disabled", "disabled");
$(inputTxtIPBlock).attr("disabled", "disabled");
$(inputTxtIPBlock).addClass("textBackground");
$(inputTxtGateway).attr("disabled", "disabled");
$(inputTxtGateway).attr("disabled", "disabled");
$(inputTxtGateway).addClass("textBackground");
$(inputTxtAlocPool).attr("disabled", "disabled");

Expand Down Expand Up @@ -2487,12 +2502,14 @@ function showVNEditWindow(mode, rowIndex) {
var DHCPEnabled = jsonPath(selectedVN, "$.network_ipam_refs[*].subnet.enable_dhcp");;
var dnsServerAddresses = jsonPath(selectedVN, "$.network_ipam_refs[*].subnet.dns_server_address");
var dhcpOptionsList = jsonPath(selectedVN, "$.network_ipam_refs[*].subnet.dhcp_option_list");
var subnetUUIDList = jsonPath(selectedVN, "$.network_ipam_refs[*].subnet.subnet_uuid");
if (ipams && ipams.length > 0) {
var existing = [];
for (var i = 0; i < ipams.length; i++) {
var ipblock = ipBlocks[i];
var ipam = ipams[i];
var gateway = gateways[i];
var subnetUUID = subnetUUIDList[i];
var AlocPool="";
if(typeof alocPools[i] != null && typeof alocPools[i] != undefined && typeof alocPools[i] != "")
AlocPool = formatAlcPoolObj(alocPools[i]);
Expand All @@ -2502,7 +2519,7 @@ function showVNEditWindow(mode, rowIndex) {
if(dhcpOptionsList[i] === false || (typeof dhcpOptionsList === "object" && dhcpOptionsList.length === 0)) {
dhcpOptionsList[i] = [];
}
existing.push({"IPBlock":ipblock, "IPAM":ipam.join(":"), "Gateway":gateway,"DHCPEnabled":DHCPEnabled[i],"AlocPool":AlocPool, "DNSServerAddress":dnsServerAddresses[i], "DHCPOptionsList" : dhcpOptionsList[i]});
existing.push({"IPBlock":ipblock, "IPAM":ipam.join(":"), "Gateway":gateway,"DHCPEnabled":DHCPEnabled[i],"AlocPool":AlocPool, "DNSServerAddress":dnsServerAddresses[i], "DHCPOptionsList" : dhcpOptionsList[i], "subnetUUID":subnetUUID});
}
for(var k=0; k<existing.length; k++) {
dynamicID++;
Expand Down

0 comments on commit b534567

Please sign in to comment.