diff --git a/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/network.js b/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/network.js
index d1b1f56a2e..141f441f14 100644
--- a/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/network.js
+++ b/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/network.js
@@ -245,7 +245,10 @@ define(function(require) {
var that = this;
if (!that.nics.find(nic => nic.NAME === ("NIC" + that.numberOfNics))) {
- that.nics.push({"NAME": "NIC" + that.numberOfNics, "ALIAS": false});
+ that.nics.push({"NAME": "NIC" + that.numberOfNics,
+ "ALIAS": false,
+ "ID": that.numberOfNics,
+ "CONTEXT": context});
}
that.numberOfNics++;
@@ -296,12 +299,12 @@ define(function(require) {
function _renameTabLinks(context) {
$("#" + LINKS_CONTAINER_ID + " li", context).each(function(index) {
- $("a", this).html(Locale.tr("NIC") + ' ' + index + " ");
+ $("a", this).html(Locale.tr("NIC") + ' ' + index + " ");
- if (!that.nics.find(nic => nic.ALIAS === ("NIC" + index))) {
- $("#remove_nic_" + index).show();
+ if (that.nics.find(nic => nic.ALIAS === ("NIC" + index))) {
+ $("#update_remove_nic_" + index).hide();
} else {
- $("#remove_nic_" + index).hide();
+ $("#update_remove_nic_" + index).show();
}
})
diff --git a/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/network/nic-tab.js b/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/network/nic-tab.js
index a31915a302..fcd31ce75b 100644
--- a/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/network/nic-tab.js
+++ b/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/network/nic-tab.js
@@ -232,6 +232,7 @@ define(function(require) {
} else {
if(alias_on && !alias) {
$("#" + that.nicTabId + "_alias_parent", context).show();
+ $("#" + that.nicTabId + "_alias_parent", context).click();
$(".network_selection", context).hide();
$("#" + that.nicTabId + "_no_alias").hide();
} else if (alias_on && alias) {
@@ -246,19 +247,7 @@ define(function(require) {
}
});
- if (alias) {
- $.each(that.nics, function(index, value) {
- if (value.ALIAS == alias) {
- found = true;
- }
- });
-
- if (found) {
- $("#remove_nic_" + (alias[alias.length - 1])).hide();
- } else {
- $("#remove_nic_" + (alias[alias.length - 1])).show();
- }
- }
+ _hide_remove(that.nics);
$("#" + that.nicTabId + "_alias_parent", context).hide();
$(".network_selection", context).show();
@@ -290,29 +279,16 @@ define(function(require) {
if (!add) {
$("#" + that.nicTabId + "_alias_parent", context).append(new Option("No NIC available", "INVALID"));
$("#" + that.nicTabId + "_alias_parent", context).val("INVALID");
- } else if (add && selected_nic == "INVALID") {
- $("#" + that.nicTabId + "_alias_parent", context).val($("#" + that.nicTabId + "_alias_parent option:first").val());
- selected_nic = $("#" + that.nicTabId + "_alias_parent", context).val();
}
$.each(that.nics, function(index, value) {
- if (value.NAME == ("NIC" + that.nicId) && selected_nic != "INVALID") {
+ if (value.NAME == ("NIC" + that.nicId) && selected_nic && selected_nic != "INVALID") {
value.ALIAS = selected_nic;
}
});
if (selected_nic && selected_nic != "INVALID") {
- $.each(that.nics, function(index, value) {
- if (value.ALIAS == selected_nic) {
- found = true;
- }
- });
-
- if (found) {
- $("#remove_nic_" + (selected_nic[selected_nic.length - 1])).hide();
- } else {
- $("#remove_nic_" + (selected_nic[selected_nic.length - 1])).show();
- }
+ _hide_remove(that.nics);
$("#" + that.nicTabId + "_alias_parent", context).val(selected_nic);
}
@@ -510,11 +486,19 @@ define(function(require) {
});
$("#" + this.nicTabId + "interface_type", this.context).show();
- $("input#" + this.nicTabId + "_interface_type", this.context).click();
$("#" + this.nicTabId + "_alias_parent", this.context).show();
- $("#" + this.nicTabId + "_alias_parent", this.context).empty();
- $("#" + this.nicTabId + "_alias_parent").append(new Option(nicname, nicname));
+ $("#" + this.nicTabId + "_alias_parent", this.context).click();
+ $("#" + this.nicTabId + "_interface_type", this.context).click();
$("#" + this.nicTabId + "_alias_parent", this.context).val(nicname);
- $(".network_selection", this.context).hide();
+ }
+
+ function _hide_remove(nics) {
+ $.each(nics, function(index, value) {
+ if (that.nics.find(nic => nic.ALIAS === value.NAME)) {
+ $("#update_remove_nic_" + value.ID).hide();
+ } else {
+ $("#update_remove_nic_" + value.ID).show();
+ }
+ });
}
});
diff --git a/src/sunstone/public/app/utils/nics-section.js b/src/sunstone/public/app/utils/nics-section.js
index b0a5973c4f..67563a84d7 100644
--- a/src/sunstone/public/app/utils/nics-section.js
+++ b/src/sunstone/public/app/utils/nics-section.js
@@ -119,7 +119,7 @@ define(function(require) {
nicId ++;
});
- _hide_remove(context);
+ _hide_remove();
}
} catch(err) {
_generate_provision_network_accordion(
@@ -371,6 +371,7 @@ define(function(require) {
} else {
if(alias_on && !alias) {
$("#provision_accordion_dd_" + dd_context["dd_id"] + "_alias_parent", dd_context).show();
+ $("#provision_accordion_dd_" + dd_context["dd_id"] + "_alias_parent", dd_context).click();
$(".network_selection", dd_context).hide();
$("#provision_accordion_dd_" + dd_context["dd_id"] + "_no_alias", dd_context).hide();
} else if (alias_on && alias) {
@@ -384,7 +385,7 @@ define(function(require) {
}
});
- _hide_remove(that.context);
+ _hide_remove();
$("#provision_accordion_dd_" + dd_context["dd_id"] + "_alias_parent", dd_context).hide();
$(".network_selection", dd_context).show();
@@ -413,19 +414,16 @@ define(function(require) {
if (!add) {
$("#provision_accordion_dd_" + dd_context["dd_id"] + "_alias_parent", dd_context).append(new Option("No NIC available", "INVALID"));
$("#provision_accordion_dd_" + dd_context["dd_id"] + "_alias_parent", dd_context).val("INVALID");
- } else if (add && selected_nic == "INVALID") {
- selected_nic = $("#provision_accordion_dd_" + dd_context["dd_id"] + "_alias_parent option:first").val();
- $("#provision_accordion_dd_" + dd_context["dd_id"] + "_alias_parent", dd_context).val(selected_nic);
}
$.each(_nics, function(index, value) {
- if (value.NAME == ("NIC" + dd_context["nic_id"])) {
+ if (value.NAME == ("NIC" + dd_context["nic_id"]) && selected_nic && selected_nic != "INVALID") {
value.ALIAS = selected_nic;
}
});
if (selected_nic && selected_nic != "INVALID") {
- _hide_remove(that.context);
+ _hide_remove();
$("#provision_accordion_dd_" + dd_context["dd_id"] + "_alias_parent", dd_context).val(selected_nic);
}
@@ -647,20 +645,18 @@ define(function(require) {
});
$("#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_interface_type_section", this.context).show();
- $("input#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_interface_type", this.context).click();
$("#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_alias_parent", this.context).show();
- $("#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_alias_parent").empty();
- $("#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_alias_parent").append(new Option(nicname, nicname));
+ $("#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_alias_parent", this.context).click();
+ $("#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_interface_type", this.context).click();
$("#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_alias_parent", this.context).val(nicname);
- $("#provision_accordion_dd_" + provision_nic_accordion_dd_id + "_network_selection", this.context).hide();
}
- function _hide_remove(context) {
+ function _hide_remove() {
$.each(_nics, function(index, value) {
if (_nics.find(nic => nic.ALIAS === value.NAME)) {
- $("#remove_nic_" + value.DD_ID, context).hide();
+ $("#remove_nic_" + value.DD_ID).hide();
} else {
- $("#remove_nic_" + value.DD_ID, context).show();
+ $("#remove_nic_" + value.DD_ID).show();
}
});
}