'+
- '
'+
- '
'+
- '
'+
- '- '+ tr("Default") +'
'+
- '- '+ tr("Manual") +'
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- ''+
- tr("Use the default system quotas set by the cloud adminstrator")+
- ''+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- ''+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- ''+
- ''+
- ''+
- '
'+
- '
'+
- '
'+
- ''+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- ''+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- ''+
- ''+
- ''+
- '
'+
- '
'+
- '
'+
- ''+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- ''+
- '
'+
- '
'+
- '
'+
- '
'+
- ''+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- ''+
- ''+
- ''+
- '
'+
- '
'+
- '
'+
- ''+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
- '
'+
+ provision_quota_widget+
'
'+
'
'+
'
'+
@@ -5577,47 +5572,7 @@ function setup_provision_user_info(context) {
'
×'+
'
');
- var provision_rvms_quota_vdc_info_input = $(".provision_rvms_quota_vdc_info_input", context);
-
- $( ".provision_rvms_quota_vdc_info_slider", context).on('change', function(){
- provision_rvms_quota_vdc_info_input.val($(this).attr('data-slider'))
- });
-
- provision_rvms_quota_vdc_info_input.change(function() {
- $( ".provision_rvms_quota_vdc_info_slider", context).foundation('slider', 'set_value', this.value);
- });
-
- var provision_cpu_quota_vdc_info_input = $(".provision_cpu_quota_vdc_info_input", context);
-
- $( ".provision_cpu_quota_vdc_info_slider", context).on('change', function(){
- provision_cpu_quota_vdc_info_input.val($(this).attr('data-slider'))
- });
-
- provision_cpu_quota_vdc_info_input.change(function() {
- $( ".provision_cpu_quota_vdc_info_slider", context).foundation('slider', 'set_value', this.value);
- });
-
- var provision_memory_quota_vdc_info_input = $(".provision_memory_quota_vdc_info_input", context);
- var provision_memory_quota_vdc_info_tmp_input = $(".provision_memory_quota_vdc_info_tmp_input", context);
-
- var update_final_memory_input = function() {
- var value = provision_memory_quota_vdc_info_tmp_input.val();
- if (value > 0) {
- provision_memory_quota_vdc_info_input.val( Math.floor(value * 1024) );
- } else {
- provision_memory_quota_vdc_info_input.val(value);
- }
- }
-
- $( ".provision_memory_quota_vdc_info_slider", context).on('change', function(){
- provision_memory_quota_vdc_info_tmp_input.val($(this).attr('data-slider'));
- update_final_memory_input();
- });
-
- provision_memory_quota_vdc_info_tmp_input.on("change", function() {
- update_final_memory_input();
- $( ".provision_memory_quota_vdc_info_slider", context).foundation('slider', 'set_value', this.value);
- });
+ setup_provision_quota_widget(context);
$(document).foundation();
@@ -5625,22 +5580,54 @@ function setup_provision_user_info(context) {
if (quotas_str) {
var quotas = JSON.parse(quotas_str);
- if ( quotas.VM != undefined &&
- ( quotas.VM.VMS != QUOTA_LIMIT_DEFAULT ||
- quotas.VM.CPU != QUOTA_LIMIT_DEFAULT ||
- quotas.VM.MEMORY != QUOTA_LIMIT_DEFAULT)
- ) {
+ var vms_limit = QUOTA_LIMIT_DEFAULT;
+ var cpu_limit = QUOTA_LIMIT_DEFAULT;
+ var mem_limit = QUOTA_LIMIT_DEFAULT;
- $("a[href='#provision_edit_user_manual_quota'").click();
+ if ( quotas.VM != undefined ){
+ vms_limit = quotas.VM.VMS;
+ cpu_limit = quotas.VM.CPU;
+ mem_limit = quotas.VM.MEMORY;
- var rvms_quotas = (quotas.VM.VMS == QUOTA_LIMIT_UNLIMITED ? "" : quotas.VM.VMS)
- var cpu_quotas = (quotas.VM.CPU == QUOTA_LIMIT_UNLIMITED ? "" : quotas.VM.CPU)
- var memory_quotas = (quotas.VM.MEMORY == QUOTA_LIMIT_UNLIMITED ? "" : Math.floor(quotas.VM.MEMORY/1024))
+ if(mem_limit != QUOTA_LIMIT_UNLIMITED &&
+ mem_limit != QUOTA_LIMIT_DEFAULT){
- provision_rvms_quota_vdc_info_input.val(rvms_quotas).change();
- provision_cpu_quota_vdc_info_input.val(cpu_quotas).change();
- provision_memory_quota_vdc_info_tmp_input.val(memory_quotas).change();
+ mem_limit = Math.floor(quotas.VM.MEMORY/1024);
+ }
}
+
+ var fill_limits = function(limit, select, input){
+ switch(limit){
+ case QUOTA_LIMIT_DEFAULT:
+ select.val('default').change();
+ input.val('').change();
+ break;
+
+ case QUOTA_LIMIT_UNLIMITED:
+ select.val('unlimited').change();
+ input.val('').change();
+ break;
+
+ default:
+ select.val('edit').change();
+ input.val(limit).change();
+ }
+ }
+
+ fill_limits(
+ vms_limit,
+ $("div.provision_rvms_quota select.provision_quota_select", context),
+ $(".provision_rvms_quota_input", context) );
+
+ fill_limits(
+ cpu_limit,
+ $("div.provision_cpu_quota select.provision_quota_select", context),
+ $(".provision_cpu_quota_input", context) );
+
+ fill_limits(
+ mem_limit,
+ $("div.provision_memory_quota select.provision_quota_select", context),
+ $(".provision_memory_quota_tmp_input", context) );
}
});
@@ -5669,26 +5656,12 @@ function setup_provision_user_info(context) {
button.attr("disabled", "disabled");
var user_id = $(".provision_info_vdc_user", context).attr("opennebula_id");
- var vms_limit = QUOTA_LIMIT_DEFAULT;
- var mem_limit = QUOTA_LIMIT_DEFAULT;
- var cpu_limit = QUOTA_LIMIT_DEFAULT;
-
- if ($("div#provision_edit_user_manual_quota",context).hasClass("active") ){
- vms_limit = $(".provision_rvms_quota_vdc_info_input", context).val()||QUOTA_LIMIT_UNLIMITED;
- mem_limit = $(".provision_memory_quota_vdc_info_input", context).val()||QUOTA_LIMIT_UNLIMITED;
- cpu_limit = $(".provision_cpu_quota_vdc_info_input", context).val()||QUOTA_LIMIT_UNLIMITED;
- }
+ quota_json = retrieve_provision_quota_widget(context);
OpenNebula.User.set_quota({
data : {
id: user_id,
- extra_param: {
- "VM" : {
- "VOLATILE_SIZE": QUOTA_LIMIT_DEFAULT,
- "VMS": vms_limit,
- "MEMORY": mem_limit,
- "CPU": cpu_limit}
- }
+ extra_param: quota_json
},
success: function(request, response){
update_provision_vdc_user_info(user_id, context);
@@ -5896,12 +5869,7 @@ function clear_provision_create_user(){
$("#password", context).val('');
$("#repeat_password", context).val('');
- $("select.provision_quota_select", context).val('edit').change();
-
- $(".provision_rvms_quota_input", context).val('');
- $(".provision_memory_quota_input", context).val('');
- $(".provision_memory_quota_tmp_input", context).val('');
- $(".provision_cpu_quota_input", context).val('');
+ reset_provision_quota_widget(context);
$(".alert-box-error", context).hide();
$(".alert-box-error", context).html("");
@@ -6725,77 +6693,7 @@ $(document).ready(function(){
var context = $("#provision_create_user");
- // Mode selector, for the 3 sliders
- $("select.provision_quota_select", context).on('change', function(){
- var row = $(this).closest(".row");
-
- switch($(this).val()) {
- case "edit":
- $("div.provision_quota_edit", row).show();
- $("div.provision_quota_default", row).hide();
- $("div.provision_quota_unlimited", row).hide();
-
- break;
-
- case "default":
- $("div.provision_quota_edit", row).hide();
- $("div.provision_quota_default", row).show();
- $("div.provision_quota_unlimited", row).hide();
-
- break;
-
- case "unlimited":
- $("div.provision_quota_edit", row).hide();
- $("div.provision_quota_default", row).hide();
- $("div.provision_quota_unlimited", row).show();
-
- break;
- }
-
- return false;
- });
-
- var provision_rvms_quota_input = $(".provision_rvms_quota_input", context);
-
- $( ".provision_rvms_quota_slider", context).on('change', function(){
- provision_rvms_quota_input.val($(this).attr('data-slider'))
- });
-
- provision_rvms_quota_input.change(function() {
- $( ".provision_rvms_quota_slider", context).foundation('slider', 'set_value', this.value);
- });
-
- var provision_cpu_quota_input = $(".provision_cpu_quota_input", context);
-
- $( ".provision_cpu_quota_slider", context).on('change', function(){
- provision_cpu_quota_input.val($(this).attr('data-slider'))
- });
-
- provision_cpu_quota_input.change(function() {
- $( ".provision_cpu_quota_slider", context).foundation('slider', 'set_value', this.value);
- });
-
- var provision_memory_quota_input = $(".provision_memory_quota_input", context);
- var provision_memory_quota_tmp_input = $(".provision_memory_quota_tmp_input", context);
-
- var update_final_memory_input = function() {
- var value = provision_memory_quota_tmp_input.val();
- if (value > 0) {
- provision_memory_quota_input.val( Math.floor(value * 1024) );
- } else {
- provision_memory_quota_input.val(value);
- }
- }
-
- $( ".provision_memory_quota_slider", context).on('change', function(){
- provision_memory_quota_tmp_input.val($(this).attr('data-slider'));
- update_final_memory_input();
- });
-
- provision_memory_quota_tmp_input.change(function() {
- update_final_memory_input();
- $( ".provision_memory_quota_slider", context).foundation('slider', 'set_value', this.value);
- });
+ setup_provision_quota_widget(context);
$("#provision_create_user").submit(function(){
var context = $(this);