diff options
author | newhinton <felix.nuesse@t-online.de> | 2019-05-13 00:03:56 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-13 00:03:56 +0300 |
commit | 1d15d253dea55950ad3afa6912355d31a8eb4ed0 (patch) | |
tree | 5c9a8c88fa7adf51f0acc19968718a12d487c590 /js/app | |
parent | 9e6673d32df1b1c651ee2eeaea4f762335f9a052 (diff) | |
parent | d78727724af0a43bb90b0f096b9878369d746dc9 (diff) |
Merge pull request #534 from nextcloud/fix/noid/icondisplay
Fix/noid/icondisplay
Diffstat (limited to 'js/app')
-rw-r--r-- | js/app/controllers/edit_credential.js | 18 | ||||
-rw-r--r-- | js/app/directives/iconpicker.js | 48 |
2 files changed, 34 insertions, 32 deletions
diff --git a/js/app/controllers/edit_credential.js b/js/app/controllers/edit_credential.js index 40842a4a..aa99bf14 100644 --- a/js/app/controllers/edit_credential.js +++ b/js/app/controllers/edit_credential.js @@ -370,19 +370,6 @@ $scope.updateExistingListWithCredential(updated_cred); }); } - $scope.refreshListWithSaved(); - }; - - $scope.refreshListWithSaved = function () { - var current_vault = $rootScope.vaultCache[$scope.active_vault.guid]; - var cv_credentials = current_vault.credentials; - for (var i = 0; i < cv_credentials.length; i++) { - if (cv_credentials[i].credential_id === $scope.storedCredential.credential_id) { - cv_credentials[i] = $scope.storedCredential; - } - } - current_vault.credentials=cv_credentials; - $rootScope.vaultCache[$scope.active_vault.guid] = current_vault; }; $scope.updateExistingListWithCredential = function (credential) { @@ -395,14 +382,13 @@ } credential.tags_raw = credential.tags; - var found=false; var credList=$rootScope.vaultCache[$scope.active_vault.guid].credentials; for (var i = 0; i < credList.length; i++) { - if (credList[i].credential_id === credential.credential_id) { + if (credList[i].credential_id === credential.credential_id) { $rootScope.vaultCache[$scope.active_vault.guid].credentials[i]=credential; found=true; - } + } } if(!found){ diff --git a/js/app/directives/iconpicker.js b/js/app/directives/iconpicker.js index 706b18ea..dda10fdb 100644 --- a/js/app/directives/iconpicker.js +++ b/js/app/directives/iconpicker.js @@ -30,7 +30,7 @@ * # passwordGen */ angular.module('passmanApp').directive('iconPicker', [ - '$window', 'IconService', '$http', function($window, IconService, $http) { + '$window', 'IconService', '$http', 'NotificationService','$translate', function($window, IconService, $http, NotificationService, $translate) { return { templateUrl: 'views/partials/icon-picker.html', restrict: 'A', @@ -95,8 +95,6 @@ }; $('#iconPicker-CustomIcon').on('change', function(ev) { - - console.log("upload"); scope.customIcon = {}; var f = ev.target.files[0]; @@ -110,26 +108,44 @@ fr.readAsDataURL(f); }); + scope.deleteIcon = function() { + delete scope.credential.icon.type; + delete scope.credential.icon.content; + delete scope.credential.icon; + $('#iconPicker').dialog('close'); + }; + + scope.refreshUrlIcon = function(){ + NotificationService.showNotification($translate.instant('use.icon.refresh.trying'), 5000); + var queryUrl = OC.generateUrl('apps/passman/api/v2/geticon/'+btoa(scope.credential.url)); + $http.get(queryUrl).then(function (response) { + if(typeof response.data.content !== 'undefined'){ + scope.customIcon = {}; + scope.customIcon.data='data:image/'+response.data.type+';base64,'+response.data.content; + }else{ + NotificationService.showNotification($translate.instant('use.icon.refresh.error'), 5000); + } + }); + }; + scope.useIcon = function() { if(scope.customIcon){ var data = scope.customIcon.data; scope.credential.icon.type = data.substring(data.lastIndexOf(":")+1,data.lastIndexOf(";")); scope.credential.icon.content = data.substring(data.lastIndexOf(",")+1, data.length); - $('#iconPicker').dialog('close'); - return; + }else{ + $http.get(scope.selectedIcon.url).then(function(result) { + var base64Data = window.btoa(result.data); + var mimeType = 'svg+xml'; + if(!scope.credential.icon){ + scope.credential.icon = {}; + } + scope.credential.icon.type = mimeType; + scope.credential.icon.content = base64Data; + }); } - - $http.get(scope.selectedIcon.url).then(function(result) { - var base64Data = window.btoa(result.data); - var mimeType = 'svg+xml'; - if(!scope.credential.icon){ - scope.credential.icon = {}; - } - scope.credential.icon.type = mimeType; - scope.credential.icon.content = base64Data; - $('#iconPicker').dialog('close'); - }); + $('#iconPicker').dialog('close'); }; $(element).click(function() { |