diff --git a/app/docker/models/config.js b/app/docker/models/config.js index 56301040c..e9b2db69f 100644 --- a/app/docker/models/config.js +++ b/app/docker/models/config.js @@ -1,5 +1,11 @@ import { ResourceControlViewModel } from 'Portainer/models/resourceControl/resourceControl'; +function b64DecodeUnicode(str) { + return decodeURIComponent(atob(str).split('').map(function(c) { + return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2); + }).join('')); +} + export function ConfigViewModel(data) { this.Id = data.ID; this.CreatedAt = data.CreatedAt; @@ -7,7 +13,7 @@ export function ConfigViewModel(data) { this.Version = data.Version.Index; this.Name = data.Spec.Name; this.Labels = data.Spec.Labels; - this.Data = atob(data.Spec.Data); + this.Data = b64DecodeUnicode(data.Spec.Data); if (data.Portainer && data.Portainer.ResourceControl) { this.ResourceControl = new ResourceControlViewModel(data.Portainer.ResourceControl);