diff --git a/src/sunstone/public/app/tabs/datastores-tab/datatable.js b/src/sunstone/public/app/tabs/datastores-tab/datatable.js index d0e9e7322d..c14faba516 100644 --- a/src/sunstone/public/app/tabs/datastores-tab/datatable.js +++ b/src/sunstone/public/app/tabs/datastores-tab/datatable.js @@ -154,7 +154,7 @@ define(function(require) { OpenNebulaDatastore.typeStr(element.TYPE), state, (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } }); diff --git a/src/sunstone/public/app/tabs/hosts-tab/datatable.js b/src/sunstone/public/app/tabs/hosts-tab/datatable.js index 8280d284c0..118b272e24 100644 --- a/src/sunstone/public/app/tabs/hosts-tab/datatable.js +++ b/src/sunstone/public/app/tabs/hosts-tab/datatable.js @@ -181,7 +181,7 @@ define(function(require) { element.VM_MAD, Humanize.prettyTime(element.LAST_MON_TIME), (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } diff --git a/src/sunstone/public/app/tabs/images-tab/datatable-common.js b/src/sunstone/public/app/tabs/images-tab/datatable-common.js index 260df997fe..d2688d4720 100644 --- a/src/sunstone/public/app/tabs/images-tab/datatable-common.js +++ b/src/sunstone/public/app/tabs/images-tab/datatable-common.js @@ -128,7 +128,7 @@ define(function(require) { element.RUNNING_VMS, element.TEMPLATE.TARGET ? element.TEMPLATE.TARGET : '--', (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } }); diff --git a/src/sunstone/public/app/tabs/marketplaceapps-tab/datatable.js b/src/sunstone/public/app/tabs/marketplaceapps-tab/datatable.js index c31e07ab96..444ce80e67 100644 --- a/src/sunstone/public/app/tabs/marketplaceapps-tab/datatable.js +++ b/src/sunstone/public/app/tabs/marketplaceapps-tab/datatable.js @@ -154,7 +154,7 @@ define(function(require) { element.MARKETPLACE, zone, (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } diff --git a/src/sunstone/public/app/tabs/marketplaces-tab/datatable.js b/src/sunstone/public/app/tabs/marketplaces-tab/datatable.js index 6c5720cc24..3afb4b8a74 100644 --- a/src/sunstone/public/app/tabs/marketplaces-tab/datatable.js +++ b/src/sunstone/public/app/tabs/marketplaces-tab/datatable.js @@ -143,7 +143,7 @@ define(function(require) { element.MARKET_MAD, zone, (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } diff --git a/src/sunstone/public/app/tabs/oneflow-services-tab/datatable.js b/src/sunstone/public/app/tabs/oneflow-services-tab/datatable.js index b3dbba062f..0f0c218353 100644 --- a/src/sunstone/public/app/tabs/oneflow-services-tab/datatable.js +++ b/src/sunstone/public/app/tabs/oneflow-services-tab/datatable.js @@ -118,7 +118,7 @@ define(function(require) { element.NAME, state, (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } }); diff --git a/src/sunstone/public/app/tabs/oneflow-templates-tab/datatable.js b/src/sunstone/public/app/tabs/oneflow-templates-tab/datatable.js index b93d71904d..e574621030 100644 --- a/src/sunstone/public/app/tabs/oneflow-templates-tab/datatable.js +++ b/src/sunstone/public/app/tabs/oneflow-templates-tab/datatable.js @@ -112,7 +112,7 @@ define(function(require) { element.GNAME, element.NAME, (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } }); diff --git a/src/sunstone/public/app/tabs/secgroups-tab/datatable.js b/src/sunstone/public/app/tabs/secgroups-tab/datatable.js index 7058bb8de1..7236b0b75b 100644 --- a/src/sunstone/public/app/tabs/secgroups-tab/datatable.js +++ b/src/sunstone/public/app/tabs/secgroups-tab/datatable.js @@ -112,7 +112,7 @@ define(function(require) { element.GNAME, element.NAME, (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } }); diff --git a/src/sunstone/public/app/tabs/templates-tab/datatable-common.js b/src/sunstone/public/app/tabs/templates-tab/datatable-common.js index c54aca836d..139ea09051 100644 --- a/src/sunstone/public/app/tabs/templates-tab/datatable-common.js +++ b/src/sunstone/public/app/tabs/templates-tab/datatable-common.js @@ -120,7 +120,7 @@ define(function(require) { element.NAME, Humanize.prettyTime(element.REGTIME), (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } diff --git a/src/sunstone/public/app/tabs/users-tab/datatable.js b/src/sunstone/public/app/tabs/users-tab/datatable.js index 48a0246622..0f57b5952d 100644 --- a/src/sunstone/public/app/tabs/users-tab/datatable.js +++ b/src/sunstone/public/app/tabs/users-tab/datatable.js @@ -163,7 +163,7 @@ define(function(require) { element.GID, hidden_template, (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } diff --git a/src/sunstone/public/app/tabs/vms-tab/utils/datatable-common.js b/src/sunstone/public/app/tabs/vms-tab/utils/datatable-common.js index f1b681b2b3..91b220ce04 100644 --- a/src/sunstone/public/app/tabs/vms-tab/utils/datatable-common.js +++ b/src/sunstone/public/app/tabs/vms-tab/utils/datatable-common.js @@ -126,7 +126,7 @@ define(function(require) { vncIcon, TemplateUtils.templateToString(element), (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } diff --git a/src/sunstone/public/app/tabs/vnets-tab/datatable.js b/src/sunstone/public/app/tabs/vnets-tab/datatable.js index 5c69b8defe..fff84431d6 100644 --- a/src/sunstone/public/app/tabs/vnets-tab/datatable.js +++ b/src/sunstone/public/app/tabs/vnets-tab/datatable.js @@ -155,7 +155,7 @@ define(function(require) { ProgressBar.html(element.USED_LEASES, total_size), element.VLAN_ID.length ? element.VLAN_ID : "-", (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } diff --git a/src/sunstone/public/app/tabs/vrouters-tab/datatable.js b/src/sunstone/public/app/tabs/vrouters-tab/datatable.js index d40a8d05eb..ece6b9b4bb 100644 --- a/src/sunstone/public/app/tabs/vrouters-tab/datatable.js +++ b/src/sunstone/public/app/tabs/vrouters-tab/datatable.js @@ -112,7 +112,7 @@ define(function(require) { element.GNAME, element.NAME, (LabelsUtils.labelsStr(element[TEMPLATE_ATTR])||''), - btoa(JSON.stringify(search)) + btoa(unescape(encodeURIComponent(JSON.stringify(search)))) ]; } }); diff --git a/src/sunstone/public/app/utils/tab-datatable.js b/src/sunstone/public/app/utils/tab-datatable.js index 22b8f7475a..20be6d9635 100644 --- a/src/sunstone/public/app/utils/tab-datatable.js +++ b/src/sunstone/public/app/utils/tab-datatable.js @@ -355,7 +355,7 @@ define(function(require) { } try { - var values = JSON.parse(atob(data[that.searchColumn])); + var values = JSON.parse( decodeURIComponent(escape(atob(data[that.searchColumn]))) ); var match = true; @@ -616,7 +616,7 @@ define(function(require) { if(that.searchColumn != undefined){ try{ - var values = JSON.parse(atob(item[that.searchColumn])); + var values = JSON.parse( decodeURIComponent(escape(atob(item[that.searchColumn]))) ); that.searchFields.forEach(function(name){ that.searchSets[name].add(values[name]);