mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
bug 13373: create network offering dialog - if this provider dropdown is one of provider dropdowns forcibly changed together earlier, make other forcibly changed provider dropdowns restore default option (i.e. 1st option in dropdown).
This commit is contained in:
parent
6fe5c365fa
commit
62b2a05071
@ -1109,7 +1109,7 @@
|
||||
async: true,
|
||||
success: function(data) {
|
||||
networkServiceObjs = data.listsupportednetworkservicesresponse.networkservice;
|
||||
var fields = {}, providerCanenableindividualserviceMap = {}, providerServicesMap = {};
|
||||
var fields = {}, providerCanenableindividualserviceMap = {}, providerServicesMap = {}, providerDropdownsForciblyChangedTogether = {};
|
||||
$(networkServiceObjs).each(function() {
|
||||
var serviceName = this.name;
|
||||
var providerObjs = this.provider;
|
||||
@ -1165,15 +1165,29 @@
|
||||
});
|
||||
|
||||
args.$select.change(function() {
|
||||
var $thisProviderDropdown = $(this);
|
||||
var providerName = $(this).val();
|
||||
var canenableindividualservice = providerCanenableindividualserviceMap[providerName];
|
||||
if(canenableindividualservice == false) { //This provider can NOT enable individual service, therefore, make all services supported by this provider have this provider selected in provider dropdown
|
||||
if(canenableindividualservice == false) { //This provider can NOT enable individual service, therefore, force all services supported by this provider have this provider selected in provider dropdown
|
||||
var serviceNames = providerServicesMap[providerName];
|
||||
if(serviceNames != null && serviceNames.length > 1) {
|
||||
providerDropdownsForciblyChangedTogether = {}; //reset
|
||||
$(serviceNames).each(function(){
|
||||
var providerDropdownId = 'service' + '.' + this + '.' + 'provider';
|
||||
providerDropdownsForciblyChangedTogether[providerDropdownId] = 1;
|
||||
$("select[name='" + providerDropdownId + "']").val(providerName);
|
||||
});
|
||||
}
|
||||
}
|
||||
else { //canenableindividualservice == true
|
||||
if($thisProviderDropdown.context.name in providerDropdownsForciblyChangedTogether) { //if this provider dropdown is one of provider dropdowns forcibly changed together earlier, make other forcibly changed provider dropdowns restore default option (i.e. 1st option in dropdown)
|
||||
for(var key in providerDropdownsForciblyChangedTogether) {
|
||||
if(key == $thisProviderDropdown.context.name)
|
||||
continue; //skip to next item in for loop
|
||||
else
|
||||
$("select[name='" + key + "']").val(""); //no "" option in dropdown, so will force it to select 1st option in dropdown
|
||||
}
|
||||
providerDropdownsForciblyChangedTogether = {}; //reset
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user