1
0
mirror of https://github.com/OpenNebula/one.git synced 2025-03-27 10:50:10 +03:00

Feature #4106: Remove custom ajax json converter

This commit is contained in:
Carlos Martín 2016-05-04 18:43:55 +02:00
parent 9d85c7bc69
commit df6991ec36
28 changed files with 111 additions and 123 deletions

View File

@ -59,14 +59,6 @@ define(function(require) {
});
}
$.ajaxSetup({
converters: {
"text json": function(textValue) {
return jQuery.parseJSON(jQuery('<div/>').text(textValue).html());
}
}
});
var OpenNebula = {
'Helper': Helper,
'Action': Action,

View File

@ -29,7 +29,7 @@
<textarea rows="6" type="text" id="appTemplate_textarea" hidden>{{appTemplate}}</textarea>
{{#if appTemplate}}
<pre id="appTemplate_text" class="info_text">
{{~htmlDecode appTemplate~}}
{{~appTemplate~}}
</pre>
{{else}}
<p id="appTemplate_text" class="info_text">
@ -51,7 +51,7 @@
<textarea rows="6" type="text" id="vmTemplate_textarea" hidden>{{vmTemplate}}</textarea>
{{#if vmTemplate}}
<pre id="vmTemplate_text" class="info_text">
{{~htmlDecode vmTemplate~}}
{{~vmTemplate~}}
</pre>
{{else}}
<p id="vmTemplate_text" class="info_text">

View File

@ -196,7 +196,7 @@ define(function(require) {
this.resourceId = element.ID;
// Populates the Avanced mode Tab
$('#template', context).val(TemplateUtils.templateToEditor(element.TEMPLATE));
$('#template', context).val(TemplateUtils.templateToString(element.TEMPLATE));
WizardFields.fill(context, element.TEMPLATE);

View File

@ -25,7 +25,6 @@ define(function(require) {
var Locale = require('utils/locale');
var Tips = require('utils/tips');
var RoleTab = require('tabs/oneflow-templates-tab/utils/role-tab');
var TemplateUtils = require('utils/template-utils');
/*
TEMPLATES
@ -267,14 +266,13 @@ define(function(require) {
this.resourceId = element.ID;
// Populates the Avanced mode Tab
$('#template', context).val(TemplateUtils.htmlDecode(
JSON.stringify(element.TEMPLATE.BODY, null, " ")));
$('#template', context).val(JSON.stringify(element.TEMPLATE.BODY, null, " "));
$("#service_name", context).attr("disabled", "disabled");
$("#service_name", context).val(TemplateUtils.htmlDecode(element.NAME));
$("#service_name", context).val(element.NAME);
$("#description", context).val(TemplateUtils.htmlDecode(element.TEMPLATE.BODY.description));
$("#description", context).val(element.TEMPLATE.BODY.description);
$('select[name="deployment"]', context).val(element.TEMPLATE.BODY.deployment);
$("select[name='shutdown_action_service']", context).val(element.TEMPLATE.BODY.shutdown_action);
@ -301,8 +299,8 @@ define(function(require) {
$(".add_service_network", context).trigger("click");
var tr = $(".service_networks tbody tr", context).last();
$(".service_network_name", tr).val(TemplateUtils.htmlDecode(attrs.name)).change();
$(".service_network_description", tr).val(TemplateUtils.htmlDecode(attrs.description));
$(".service_network_name", tr).val(attrs.name).change();
$(".service_network_description", tr).val(attrs.description);
break;
}

View File

@ -28,7 +28,6 @@ define(function(require) {
var OpenNebulaTemplate = require('opennebula/template');
var Notifier = require('utils/notifier');
var WizardFields = require('utils/wizard-fields');
var TemplateUtils = require('utils/template-utils');
var UserInputs = require('utils/user-inputs');
/*
@ -196,12 +195,6 @@ define(function(require) {
$.extend( tmp_json, WizardFields.retrieve($("#"+div_id, context)) );
if (role.elasticity_policies != undefined){
$.each(role.elasticity_policies, function(i, pol){
pol.expression = TemplateUtils.htmlDecode(pol.expression);
});
}
role.user_inputs_values = tmp_json;
extra_info.merge_template.roles.push(role);

View File

@ -22,7 +22,6 @@ define(function(require) {
var Locale = require('utils/locale');
var RenameTr = require('utils/panel/rename-tr');
var PermissionsTable = require('utils/panel/permissions-table');
var TemplateUtils = require('utils/template-utils');
/*
TEMPLATES
@ -81,7 +80,7 @@ define(function(require) {
case "vnet_id":
$.each(that.element.TEMPLATE.BODY.roles, function(index, value){
if (value.vm_template_contents){
var reg = new RegExp("\\$"+TemplateUtils.htmlDecode(key)+"\\b");
var reg = new RegExp("\\$"+key+"\\b");
if(reg.exec(value.vm_template_contents) != null){
roles_using_net.push(value.name);

View File

@ -19,7 +19,6 @@ define(function(require) {
var Locale = require('utils/locale');
var Tips = require('utils/tips');
var TemplatesTable = require('tabs/templates-tab/datatable');
var TemplateUtils = require('utils/template-utils');
var TemplateHTML = require('hbs!./role-tab/html');
var TemplateElasticityRowHTML = require('hbs!./role-tab/elasticity-row');
@ -182,10 +181,10 @@ define(function(require) {
}
function _fill(context, value, network_names) {
$("#role_name", context).val(TemplateUtils.htmlDecode(value.name));
$("#role_name", context).val(value.name);
$("#role_name", context).change();
$("#cardinality", context).val(TemplateUtils.htmlDecode(value.cardinality));
$("#cardinality", context).val(value.cardinality);
this.templatesTable.selectResourceTableSelect({ids : value.vm_template});
@ -198,14 +197,14 @@ define(function(require) {
}
});
$(".vm_template_contents", context).val(TemplateUtils.htmlDecode(value.vm_template_contents));
$(".vm_template_contents", context).val(value.vm_template_contents);
}
$("select[name='shutdown_action_role']", context).val(value.shutdown_action);
$("#min_vms", context).val(TemplateUtils.htmlDecode(value.min_vms));
$("#max_vms", context).val(TemplateUtils.htmlDecode(value.max_vms));
$("#cooldown", context).val(TemplateUtils.htmlDecode(value.cooldown));
$("#min_vms", context).val(value.min_vms);
$("#max_vms", context).val(value.max_vms);
$("#cooldown", context).val(value.cooldown);
if (value['elasticity_policies'].length > 0 ||
value['scheduled_policies'].length > 0) {
@ -219,14 +218,14 @@ define(function(require) {
$.each(value['elasticity_policies'], function(){
$("#tf_btn_elas_policies", context).click();
var td = $("#elasticity_policies_tbody tr", context).last();
$("#type" ,td).val(TemplateUtils.htmlDecode(this['type']));
$("#type" ,td).val(this['type']);
$("#type" ,td).change();
$("#adjust" ,td).val(TemplateUtils.htmlDecode(this['adjust'] ));
$("#min_adjust_step" ,td).val(TemplateUtils.htmlDecode(this['min_adjust_step'] || ""));
$("#expression" ,td).val(TemplateUtils.htmlDecode(this.expression));
$("#period_number" ,td).val(TemplateUtils.htmlDecode(this['period_number'] || ""));
$("#period" ,td).val(TemplateUtils.htmlDecode(this['period'] || "" ));
$("#cooldown" ,td).val(TemplateUtils.htmlDecode(this['cooldown'] || "" ));
$("#adjust" ,td).val(this['adjust'] );
$("#min_adjust_step" ,td).val(this['min_adjust_step'] || "");
$("#expression" ,td).val(this.expression);
$("#period_number" ,td).val(this['period_number'] || "");
$("#period" ,td).val(this['period'] || "" );
$("#cooldown" ,td).val(this['cooldown'] || "" );
});
}
@ -234,17 +233,17 @@ define(function(require) {
$.each(value['scheduled_policies'], function(){
$("#tf_btn_sche_policies", context).click();
var td = $("#scheduled_policies_tbody tr", context).last();
$("#type", td).val(TemplateUtils.htmlDecode(this['type']));
$("#type", td).val(this['type']);
$("#type" ,td).change();
$("#adjust", td).val(TemplateUtils.htmlDecode(this['adjust'] ));
$("#min_adjust_step", td).val(TemplateUtils.htmlDecode(this['min_adjust_step'] || ""));
$("#adjust", td).val(this['adjust'] );
$("#min_adjust_step", td).val(this['min_adjust_step'] || "");
if (this['start_time']) {
$("#time_format", td).val('start_time');
$("#time", td).val(TemplateUtils.htmlDecode(this['start_time']));
$("#time", td).val(this['start_time']);
} else if (this['recurrence']) {
$("#time_format", td).val('recurrence');
$("#time", td).val(TemplateUtils.htmlDecode(this['recurrence']));
$("#time", td).val(this['recurrence']);
}
});
}

View File

@ -768,14 +768,14 @@ define(function(require) {
var li = $('<div class="column">' +
'<ul class="provision-pricing-table only-one hoverable menu vertical text-center" opennebula_id="'+data.ID+'">'+
'<li class="provision-title" title="'+data.NAME+'">'+
'<a href="">' + data.NAME + '</a>' +
'<li class="provision-title" title="'+TemplateUtils.htmlEncode(data.NAME)+'">'+
'<a href="">' + TemplateUtils.htmlEncode(data.NAME) + '</a>' +
'</li>'+
'<li class="provision-bullet-item">'+
logo +
'</li>'+
'<li class="provision-bullet-item">'+
(data.TEMPLATE.DESCRIPTION || '...')+
(TemplateUtils.htmlEncode(data.TEMPLATE.DESCRIPTION) || '...')+
'</li>'+
'<li class="provision-bullet-item-last text-left">'+
'<span>'+
@ -914,9 +914,9 @@ define(function(require) {
$(".provision_accordion_template .selected_template").show();
$(".provision_accordion_template .select_template").hide();
$(".provision_accordion_template .selected_template_name").html(template_json.VMTEMPLATE.NAME)
$(".provision_accordion_template .selected_template_name").html(TemplateUtils.htmlEncode(template_json.VMTEMPLATE.NAME))
if (template_json.VMTEMPLATE.TEMPLATE.LOGO) {
$(".provision_accordion_template .selected_template_logo").html('<img src="'+template_json.VMTEMPLATE.TEMPLATE.LOGO+'">');
$(".provision_accordion_template .selected_template_logo").html('<img src="'+TemplateUtils.htmlEncode(template_json.VMTEMPLATE.TEMPLATE.LOGO)+'">');
} else {
$(".provision_accordion_template .selected_template_logo").html('<i class="fa fa-file-text-o fa-lg"/> ');
}
@ -1107,14 +1107,14 @@ define(function(require) {
var li = $('<div class="column">'+
'<ul class="provision-pricing-table hoverable only-one menu vertical" opennebula_id="'+data.ID+'">'+
'<li class="provision-title" title="'+data.NAME+'">'+
'<li class="provision-title" title="'+TemplateUtils.htmlEncode(data.NAME)+'">'+
'<a href="">' +
data.NAME +
TemplateUtils.htmlEncode(data.NAME) +
'</a>' +
'</li>'+
roles_li +
'<li class="provision-bullet-item">'+
(data.TEMPLATE.DESCRIPTION || '')+
(TemplateUtils.htmlEncode(data.TEMPLATE.DESCRIPTION) || '')+
'</li>'+
'</ul>'+
'</div>').appendTo($("#provision_flow_templates_ul"));
@ -1155,7 +1155,7 @@ define(function(require) {
$(".provision_accordion_flow_template .selected_template").show();
$(".provision_accordion_flow_template .select_template").hide();
$(".provision_accordion_flow_template .selected_template_name").html(data.DOCUMENT.NAME)
$(".provision_accordion_flow_template .selected_template_name").html(TemplateUtils.htmlEncode(data.DOCUMENT.NAME))
$(".provision_accordion_flow_template .selected_template_logo").html('<i class="fa fa-cubes fa-lg"/> ');
$(".provision_accordion_flow_template a").first().trigger("click");
@ -1175,7 +1175,7 @@ define(function(require) {
'<div id="provision_create_flow_role_'+index+'" class="large-6 medium-12 small-12 columns provision_create_flow_role">'+
'<h5>'+
'<i class="fa fa-cube fa-lg"></i> '+
role.name+
TemplateUtils.htmlEncode(role.name)+
'</h5>'+
'<div class="row">'+
'<div class="provision_cardinality_selector large-12 columns">'+
@ -1255,12 +1255,6 @@ define(function(require) {
var role_template = $(this).data("opennebula");
if (role_template.elasticity_policies != undefined){
$.each(role_template.elasticity_policies, function(i, pol){
pol.expression = TemplateUtils.htmlDecode(pol.expression);
});
}
roles.push($.extend(role_template, {
"cardinality": $(".cardinality_value", $(this)).text(),
"user_inputs_values": user_inputs_values

View File

@ -22,6 +22,7 @@ define(function(require) {
var Humanize = require('utils/humanize');
var ResourceSelect = require('utils/resource-select');
var RangeSlider = require('utils/range-slider');
var TemplateUtils = require('utils/template-utils');
var ProvisionVmsList = require('tabs/provision-tab/vms/list');
@ -186,8 +187,8 @@ define(function(require) {
roles_li +=
'<li class="provision-bullet-item"">'+
'<i class="fa fa-fw fa-lg fa-cube"/> '+
role.name+
'<span class="right">'+rvms.str+" VMs</span>"+
TemplateUtils.htmlEncode(role.name)+
'<span class="right">'+TemplateUtils.htmlEncode(rvms.str)+" VMs</span>"+
'</li>';
});
}
@ -199,14 +200,14 @@ define(function(require) {
'<span class="'+ state.color +'-color right" title="'+ state.str +'">'+
'<i class="fa fa-square"/>'+
'</span>'+
data.NAME +
TemplateUtils.htmlEncode(data.NAME) +
'</a>'+
'</li>'+
roles_li +
'<li class="provision-bullet-item-last">'+
'<span>'+
'<i class="fa fa-fw fa-lg fa-user"/> '+
data.UNAME+
TemplateUtils.htmlEncode(data.UNAME)+
'</span>'+
'<span class="right">'+
(start_time ? Humanize.prettyTimeAgo(start_time) : '-') +
@ -323,7 +324,7 @@ define(function(require) {
'<li class="provision-bullet-item-last text-right">'+
'<span class="left">'+
'<i class="fa fa-fw fa-lg fa-user"/> '+
data.UNAME+
TemplateUtils.htmlEncode(data.UNAME)+
'</span>'+
'<span>'+
'<i class="fa fa-fw fa-lg fa-clock-o"/> '+
@ -350,19 +351,19 @@ define(function(require) {
'<li class="provision-title">'+
'<span class="without-link">' +
'<i class="fa fa-fw fa-cube"/> '+
role.name+
TemplateUtils.htmlEncode(role.name)+
'</span>' +
'</li>'+
'<li class="provision-bullet-item">'+
'<div class="progress small radius">'+
'<meter id="' + role.name + '_meter" min="0" low="33" high="66" optimum="100" max="100" value="' + rvms.percentage + '"></meter>' +
'<meter id="' + TemplateUtils.htmlEncode(role.name) + '_meter" min="0" low="33" high="66" optimum="100" max="100" value="' + TemplateUtils.htmlEncode(rvms.percentage) + '"></meter>' +
'</div>'+
'</li>'+
'<li class="provision-bullet-item text-right">'+
'<span class="'+ role_state.color +'-color left">'+
role_state.str+
'</span>'+
'<span>'+rvms.str+" VMs</span>"+
'<span>'+TemplateUtils.htmlEncode(rvms.str)+" VMs</span>"+
'</li>'+
'<li class="provision-bullet-item">' +
'<hr>' +

View File

@ -23,6 +23,7 @@ define(function(require) {
var Humanize = require('utils/humanize');
var ResourceSelect = require('utils/resource-select');
var LabelsUtils = require('utils/labels/utils');
var TemplateUtils = require('utils/template-utils');
var TemplateTemplatesList = require('hbs!./list');
@ -167,14 +168,14 @@ define(function(require) {
var mem_txt = "";
if(data.TEMPLATE.CPU){
cpu_txt = 'x'+data.TEMPLATE.CPU;
cpu_txt = 'x'+TemplateUtils.htmlEncode(data.TEMPLATE.CPU);
}
if(data.TEMPLATE.MEMORY){
if (data.TEMPLATE.MEMORY > 1000){
mem_txt = Math.floor(data.TEMPLATE.MEMORY/1024)+'GB';
} else {
mem_txt = data.TEMPLATE.MEMORY+'MB';
mem_txt = TemplateUtils.htmlEncode(data.TEMPLATE.MEMORY)+'MB';
}
}
@ -182,11 +183,11 @@ define(function(require) {
'<ul class="provision-pricing-table menu vertical" opennebula_id="'+data.ID+'" datatable_index="'+iDisplayIndexFull+'">'+
'<li class="provision-title" title="'+data.NAME+'">'+
'<span class="without-link">' +
data.NAME +
TemplateUtils.htmlEncode(data.NAME) +
'</span>' +
'</li>'+
'<li class="provision-bullet-item">'+
(data.TEMPLATE.DESCRIPTION || '')+
(TemplateUtils.htmlEncode(data.TEMPLATE.DESCRIPTION) || '')+
'</li>'+
'<li class="provision-bullet-item" >'+
'<i class="fa fa-fw fa-lg fa-laptop"/> '+
@ -200,7 +201,7 @@ define(function(require) {
'<li class="provision-bullet-item-last" >'+
'<span class="">'+
'<i class="fa fa-fw fa-lg fa-user"/> '+
data.UNAME+
TemplateUtils.htmlEncode(data.UNAME)+
'</span>'+
'<span class="right">'+
Humanize.prettyTimeAgo(data.REGTIME)+

View File

@ -25,6 +25,7 @@ define(function(require) {
var Humanize = require('utils/humanize');
var ResourceSelect = require('utils/resource-select');
var Graphs = require('utils/graphs');
var TemplateUtils = require('utils/template-utils');
var TemplateVmsList = require('hbs!./list');
@ -173,7 +174,7 @@ define(function(require) {
'x'+data.TEMPLATE.CPU+' - '+
((data.TEMPLATE.MEMORY > 1000) ?
(Math.floor(data.TEMPLATE.MEMORY/1024)+'GB') :
(data.TEMPLATE.MEMORY+'MB'))+
(TemplateUtils.htmlEncode(data.TEMPLATE.MEMORY)+'MB'))+
' - '+
get_provision_disk_image(data) +
'</li>'+
@ -382,10 +383,10 @@ define(function(require) {
'<li class="provision-bullet-item" >'+
'<span>'+
'<i class="fa fa-fw fa-lg fa-laptop"/> '+
'x'+data.TEMPLATE.CPU+' - '+
'x'+TemplateUtils.htmlEncode(data.TEMPLATE.CPU)+' - '+
((data.TEMPLATE.MEMORY > 1000) ?
(Math.floor(data.TEMPLATE.MEMORY/1024)+'GB') :
(data.TEMPLATE.MEMORY+'MB'))+
(TemplateUtils.htmlEncode(data.TEMPLATE.MEMORY)+'MB'))+
'</span>'+
' - '+
'<span>'+

View File

@ -311,7 +311,7 @@ define(function(require) {
this.resourceId = element.ID;
// Populates the Avanced mode Tab
$('#template', context).val(TemplateUtils.templateToEditor(element.TEMPLATE));
$('#template', context).val(TemplateUtils.templateToString(element.TEMPLATE));
WizardFields.fillInput($('#security_group_name',context), element.NAME);
$('#security_group_name',context).prop("disabled", true);

View File

@ -190,7 +190,7 @@ define(function(require) {
var templateJSON = element.TEMPLATE;
// Populates the Avanced mode Tab
$('#template', context).val(TemplateUtils.templateToEditor(templateJSON));
$('#template', context).val(TemplateUtils.templateToString(templateJSON));
$.each(this.wizardTabs, function(index, wizardTab) {
wizardTab.fill($('#' + wizardTab.wizardTabId, context), templateJSON);

View File

@ -26,7 +26,6 @@ define(function(require) {
var Config = require('sunstone-config');
var UserInputs = require('utils/user-inputs');
var UniqueId = require('utils/unique-id');
var TemplateUtils = require('utils/template-utils');
/*
TEMPLATES
@ -94,7 +93,7 @@ define(function(require) {
context.on("change", "#LOGO", function() {
$("#template_create_logo", context).show();
$("#template_create_logo", context).html('<span class="">' +
'<img src="' + TemplateUtils.htmlDecode($(this).val()) + '">' +
'<img src="' + $(this).val() + '">' +
'</span>');
});

View File

@ -23,7 +23,6 @@ define(function(require) {
var Locale = require('utils/locale');
var Tips = require('utils/tips');
var WizardFields = require('utils/wizard-fields');
var TemplateUtils = require('utils/template-utils');
var UniqueId = require('utils/unique-id');
/*
@ -168,14 +167,14 @@ define(function(require) {
var element1 = document.createElement("input");
element1.id = "INPUT_TYPE";
element1.type = "text";
element1.value = TemplateUtils.htmlDecode(this.TYPE);
element1.value = this.TYPE;
cell1.appendChild(element1);
var cell2 = row.insertCell(1);
var element2 = document.createElement("input");
element2.id = "INPUT_BUS";
element2.type = "text";
element2.value = TemplateUtils.htmlDecode(this.BUS);
element2.value = this.BUS;
cell2.appendChild(element2);
var cell3 = row.insertCell(2);

View File

@ -319,7 +319,7 @@ define(function(require) {
this.resourceId = element.ID;
// Populates the Avanced mode Tab
$('#template', context).val(TemplateUtils.templateToEditor(element.TEMPLATE));
$('#template', context).val(TemplateUtils.templateToString(element.TEMPLATE));
WizardFields.fillInput($('[wizard_field="NAME"]',context), element.NAME);
$('[wizard_field="NAME"]',context).prop("disabled", true).prop('wizard_field_disabled', true);

View File

@ -148,7 +148,7 @@ define(function(require) {
// Populates the Avanced mode Tab
$('#template', context).val(
TemplateUtils.templateToEditor(templateJSON));
TemplateUtils.templateToString(templateJSON));
$.each(this.wizardTabs, function(index, wizardTab) {
wizardTab.fill($('#' + wizardTab.wizardTabId, context), templateJSON);

View File

@ -223,11 +223,11 @@ define(function(require) {
var str = "";
str += '<tr class="tr_action_' + scheduling_action.ID + '">\
<td class="id_row">' + scheduling_action.ID + '</td>\
<td class="action_row">' + scheduling_action.ACTION + '</td>\
<td class="id_row">' + TemplateUtils.htmlEncode(scheduling_action.ID) + '</td>\
<td class="action_row">' + TemplateUtils.htmlEncode(scheduling_action.ACTION) + '</td>\
<td nowrap class="time_row">' + time_str + '</td>\
<td class="done_row">' + done_str + '</td>\
<td class="message_row">' + message_str + '</td>\
<td class="message_row">' + TemplateUtils.htmlEncode(message_str) + '</td>\
<td>\
<div>\
<a id="minus_' + scheduling_action.ID + '" class="remove_action_x" href="#"><i class="fa fa-trash-o"/></a>\

View File

@ -22,6 +22,7 @@ define(function(require) {
var Locale = require('utils/locale');
var Humanize = require('utils/humanize');
var OpenNebulaVM = require('opennebula/vm');
var TemplateUtils = require('utils/template-utils');
/*
CONSTANTS
@ -138,7 +139,7 @@ define(function(require) {
</thead>\
<tbody>\
<tr>\
<td>' + that.element.USER_TEMPLATE.SCHED_MESSAGE + '</td>\
<td>' + TemplateUtils.htmlEncode(that.element.USER_TEMPLATE.SCHED_MESSAGE) + '</td>\
</tr>\
</tbody>\
</table>\
@ -146,10 +147,10 @@ define(function(require) {
</div>' ;
}
var requirements_str = that.element.USER_TEMPLATE.SCHED_REQUIREMENTS ? that.element.USER_TEMPLATE.SCHED_REQUIREMENTS : "-";
var rank_str = that.element.USER_TEMPLATE.SCHED_RANK ? that.element.USER_TEMPLATE.SCHED_RANK : "-";
var ds_requirements_str = that.element.USER_TEMPLATE.SCHED_DS_REQUIREMENTS ? that.element.USER_TEMPLATE.SCHED_DS_REQUIREMENTS : "-";
var ds_rank_str = that.element.USER_TEMPLATE.SCHED_DS_RANK ? that.element.USER_TEMPLATE.SCHED_DS_RANK : "-";
var requirements_str = TemplateUtils.htmlEncode(that.element.USER_TEMPLATE.SCHED_REQUIREMENTS ? that.element.USER_TEMPLATE.SCHED_REQUIREMENTS : "-");
var rank_str = TemplateUtils.htmlEncode(that.element.USER_TEMPLATE.SCHED_RANK ? that.element.USER_TEMPLATE.SCHED_RANK : "-");
var ds_requirements_str = TemplateUtils.htmlEncode(that.element.USER_TEMPLATE.SCHED_DS_REQUIREMENTS ? that.element.USER_TEMPLATE.SCHED_DS_REQUIREMENTS : "-");
var ds_rank_str = TemplateUtils.htmlEncode(that.element.USER_TEMPLATE.SCHED_DS_RANK ? that.element.USER_TEMPLATE.SCHED_DS_RANK : "-");
html += '<div class="row">\
<div class="large-9 columns">\

View File

@ -25,6 +25,7 @@ define(function(require) {
var Humanize = require('utils/humanize');
var Notifier = require('utils/notifier');
var OpenNebulaVM = require('opennebula/vm');
var TemplateUtils = require('utils/template-utils');
/*
CONSTANTS
@ -130,8 +131,8 @@ define(function(require) {
html += '\
<tr snapshot_id="' + (snapshot.SNAPSHOT_ID) + '">\
<td>' + snapshot.SNAPSHOT_ID + '</td>\
<td>' + snapshot.NAME + '</td>\
<td>' + TemplateUtils.htmlEncode(snapshot.SNAPSHOT_ID) + '</td>\
<td>' + TemplateUtils.htmlEncode(snapshot.NAME) + '</td>\
<td>' + Humanize.prettyTime(snapshot.TIME) + '</td>\
<td>' + actions + '</td>\
</tr>' ;

View File

@ -349,7 +349,7 @@ define(function(require) {
$("#default_sg_warning").hide();
// Populates the Avanced mode Tab
$('#template', context).val(TemplateUtils.templateToEditor(element.TEMPLATE));
$('#template', context).val(TemplateUtils.templateToString(element.TEMPLATE));
WizardFields.fillInput($('[wizard_field="NAME"]', context), element.NAME);
$('[wizard_field="NAME"]', context).prop("disabled", true).prop('wizard_field_disabled', true);

View File

@ -24,7 +24,6 @@ define(function(require) {
var Sunstone = require('sunstone');
var Locale = require('utils/locale');
var Tips = require('utils/tips');
var TemplateUtils = require('utils/template-utils');
var UserInputs = require('utils/user-inputs');
var WizardFields = require('utils/wizard-fields');
var NicsSection = require('utils/nics-section');

View File

@ -88,7 +88,7 @@ define(function(require) {
$("tbody.custom_tags", context).append(
VectorRowTemplateHTML({key: key, value: value}));
} else {
var val = TemplateUtils.escapeDoubleQuotes(TemplateUtils.htmlDecode(value));
var val = TemplateUtils.escapeDoubleQuotes(value);
$("tbody.custom_tags", context).append(
RowTemplateHTML({

View File

@ -16,6 +16,7 @@
define(function(require) {
var Locale = require('utils/locale');
var TemplateUtils = require('utils/template-utils');
/*
CONSTRUCTOR
@ -192,7 +193,7 @@ define(function(require) {
border-bottom:' + border_bottom + ';\
padding-top:' + padding_top_bottom + 'px;\
padding-bottom:' + padding_top_bottom + 'px;">' +
field +
TemplateUtils.htmlEncode(field) +
'</td>\
<td class="value_td" style=\
"border-bottom:' + border_bottom + ';\
@ -211,13 +212,13 @@ define(function(require) {
border-bottom:' + border_bottom + ';\
padding-top:' + padding_top_bottom + 'px;\
padding-bottom:' + padding_top_bottom + 'px">' +
field +
TemplateUtils.htmlEncode(field) +
'</td>\
<td class="value_td" style="\
border-bottom:' + border_bottom + ';\
padding-top:' + padding_top_bottom + 'px;\
padding-bottom:' + padding_top_bottom + 'px">' +
value +
TemplateUtils.htmlEncode(value) +
'</td>\
</tr>';
};

View File

@ -399,7 +399,8 @@ define(function(require) {
<span id="div_minus">\
<a id="div_minus_' + field + '" class="remove_vectorial_x ocurrence_' + it + '" href="#"><i class="fa fa-pencil-square-o"/><i class="fa fa-trash-o"/></a>\
</span>\
</td>'
</td>\
</tr>'
str += fromJSONtoHTMLTable(current_value,
resourceType,
@ -424,7 +425,7 @@ define(function(require) {
if (vectorial_key) {
str += '<tr>\
<td class="key_td key_vectorial_td">&emsp;&emsp;' + Locale.tr(field) + '</td>\
<td class="value_td value_vectorial_td value_td_input_' + field + ocurrence_str + ' vectorial_key_' + vectorial_key + '" id="value_td_input_' + field + '">' + value + '</td>\
<td class="value_td value_vectorial_td value_td_input_' + field + ocurrence_str + ' vectorial_key_' + vectorial_key + '" id="value_td_input_' + field + '">' + TemplateUtils.htmlEncode(value) + '</td>\
<td class="text-right nowrap">\
<span id="div_edit_vectorial">\
<a id="div_edit_' + field + '" class="edit_e' + ocurrence_str + ' vectorial_key_' + vectorial_key + '" href="#"><i class="fa fa-pencil-square-o"/></a>\
@ -456,7 +457,7 @@ define(function(require) {
{
str += '<tr>\
<td class="key_td">' + Locale.tr(field) + '</td>\
<td class="value_td" id="value_td_input_' + field + '">' + value + '</td>\
<td class="value_td" id="value_td_input_' + field + '">' + TemplateUtils.htmlEncode(value) + '</td>\
<td class="text-right nowrap">\
<span id="div_edit">\
<a id="div_edit_' + field + '" class="edit_e' + ocurrence_str + '" href="#"><i class="fa fa-pencil-square-o"/></a>\

View File

@ -39,11 +39,21 @@ define(function(require) {
}
}
// Transforms text:
// input: &lt;b&gt;bold&lt;/b&gt; "text"
// output: <b>bold</b> "text"
function _htmlDecode(value) {
return $('<div/>').html(value).text();
}
// Convert from hash to string
// Transforms text:
// input: <b>bold</b> "text"
// output: &lt;b&gt;bold&lt;/b&gt; "text"
function _htmlEncode(value) {
return $('<div/>').text(value).html();
}
// Transforms an object to an opennebula template string
function _convert_template_to_string(template_json, unshown_values) {
if (unshown_values)
template_json = $.extend({}, template_json, unshown_values);
@ -82,14 +92,10 @@ define(function(require) {
return template_str;
}
function _templateToEditor(template_json, unshown_values) {
return _htmlDecode(_convert_template_to_string(template_json, unshown_values));
}
return {
'templateToString': _convert_template_to_string,
'templateToEditor': _templateToEditor,
'htmlDecode': _htmlDecode,
'htmlEncode': _htmlEncode,
'escapeDoubleQuotes': _escapeDoubleQuotes
};
});

View File

@ -236,7 +236,7 @@ define(function(require) {
$.each(user_inputs, function(key, value) {
var attrs = _parse(key, value);
if (opts.defaults[key] != undefined){
if (defaults[key] != undefined){
attrs.initial = opts.defaults[key];
}
@ -274,7 +274,7 @@ define(function(require) {
'<div class="large-12 large-centered columns">' +
separator +
'<h5>' +
TemplateUtils.htmlDecode(vnet_attr.description) +
TemplateUtils.htmlEncode(vnet_attr.description) +
'</h5>' +
vnetsTable.dataTableHTML +
'</div>' +
@ -310,7 +310,7 @@ define(function(require) {
'<div class="row">' +
'<div class="large-12 large-centered columns">' +
'<label>' +
TemplateUtils.htmlDecode(custom_attr.description) +
TemplateUtils.htmlEncode(custom_attr.description) +
_attributeInput(custom_attr) +
'</label>' +
'</div>' +
@ -579,7 +579,7 @@ define(function(require) {
var required = (attr.mandatory ? "required" : "");
var wizard_field = 'wizard_field="' + attr.name + '"';
var wizard_field = 'wizard_field="' + TemplateUtils.htmlEncode(attr.name) + '"';
if (attr.wizard_field_disabled == true){
wizard_field = "";
@ -588,15 +588,20 @@ define(function(require) {
var value = "";
if (attr.initial != undefined){
value = attr.initial;
value = TemplateUtils.htmlEncode(attr.initial);
}
switch (attr.type) {
case "text":
input = '<textarea type="text" rows="1" '+wizard_field+' '+required+'>'+TemplateUtils.htmlDecode(value)+'</textarea>';
input = '<textarea type="text" rows="1" '+wizard_field+' '+required+'>'+TemplateUtils.htmlEncode(value)+'</textarea>';
break;
case "text64":
input = '<textarea type="text" rows="1" wizard_field_64="true" '+wizard_field+' '+required+'>'+TemplateUtils.htmlDecode(atob(value))+'</textarea>';
try {
input = '<textarea type="text" rows="1" wizard_field_64="true" '+wizard_field+' '+required+'>'+TemplateUtils.htmlEncode(atob(value))+'</textarea>';
} catch(e){
console.error(e.message);
input = "<p>"+e.message+"</p>";
}
break;
case "password":
input = '<input type="password" value="'+value+'" '+wizard_field+' '+required+'/>';

View File

@ -54,7 +54,7 @@ define(function(require) {
}
function _retrieveInput(input) {
return TemplateUtils.escapeDoubleQuotes(input.val());
return TemplateUtils.escapeDoubleQuotes( input.val() );
}
// TODO: wizard_field_64 for fill method
@ -104,9 +104,7 @@ define(function(require) {
}
function _fillInput(input, value) {
input.val(
TemplateUtils.escapeDoubleQuotes(
TemplateUtils.htmlDecode(value)));
input.val(TemplateUtils.escapeDoubleQuotes(value));
input.change();
}