Regions UI: Highlight active region in selector

This commit is contained in:
Brian Federle 2013-02-27 09:12:25 -08:00
parent fdaa5b4909
commit 289c433cb9
2 changed files with 20 additions and 5 deletions

View File

@ -23,10 +23,14 @@
$.ajax({
url: createURL('listRegions&listAll=true'),
success: function(json) {
var regions = json.listregionsresponse.region
var regions = json.listregionsresponse.region;
args.response.success({
data: regions ? regions : []
data: regions ? regions : [
{ id: -1, name: '(Default region)' }
],
activeRegionID: cloudStack.context.users.regionid ?
cloudStack.context.users.regionid : 1
});
}
});

View File

@ -10,12 +10,18 @@
response: {
success: function(args) {
var data = args.data;
var activeRegionID = args.activeRegionID;
$(data).each(function() {
var region = this;
var $li = $('<li>').append($('<span>').html(_s(region.name)));
$li.data('region-data', region);
if (region.id == activeRegionID) {
$li.addClass('active');
}
$regionList.append($li);
});
}
@ -62,11 +68,16 @@
$regionList.click(function(event) {
var $target = $(event.target);
var $li = $target.closest('li');
var region, url;
if ($li.size()) {
var url = $li.data('region-data').endpoint;
if ($li.size() && !$li.hasClass('active')) {
region = $li.data('region-data');
url = region.endpoint;
id = region.id;
switchRegion(url);
if (id != '-1') {
switchRegion(url);
}
}
});