Completed
Push — master ( 641a91...fc9f6a )
by
unknown
10:16
created

js/app/directives/icon.js   A

Complexity

Conditions 1
Paths 2

Size

Total Lines 36

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
dl 0
loc 36
rs 9.016
c 1
b 0
f 0
nc 2
nop 0

1 Function

Rating   Name   Duplication   Size   Complexity  
A angular.directive(ꞌcredentialIconꞌ) 0 25 1
1
/**
2
 * Nextcloud - passman
3
 *
4
 * @copyright Copyright (c) 2016, Sander Brand ([email protected])
5
 * @copyright Copyright (c) 2016, Marcos Zuriaga Miguel ([email protected])
6
 * @license GNU AGPL version 3 or any later version
7
 *
8
 * This program is free software: you can redistribute it and/or modify
9
 * it under the terms of the GNU Affero General Public License as
10
 * published by the Free Software Foundation, either version 3 of the
11
 * License, or (at your option) any later version.
12
 *
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
 * GNU Affero General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU Affero General Public License
19
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
 *
21
 */
22
23
(function() {
24
  'use strict';
25
26
  /**
27
   * @ngdoc directive
28
   * @name passmanApp.directive:passwordGen
29
   * @description
30
   * # passwordGen
31
   */
32
  angular.module('passmanApp').directive('credentialIcon', [
33
    '$window', function($window) {
0 ignored issues
show
Unused Code introduced by
The parameter $window is not used and could be removed.

This check looks for parameters in functions that are not used in the function body and are not followed by other parameters which are used inside the function.

Loading history...
34
      return {
35
        template: '<img ng-src="{{ iconUrl }}" width="16">',
36
        restrict: 'E',
37
        scope: {
38
          credential: '=',
39
        },
40
        link: function(scope, element) {
0 ignored issues
show
Unused Code introduced by
The parameter element is not used and could be removed.

This check looks for parameters in functions that are not used in the function body and are not followed by other parameters which are used inside the function.

Loading history...
41
          if (!scope.credential) {
42
            return;
43
          }
44
          scope.$watch('credential', function() {
45
            if(scope.credential.icon && scope.credential.icon.type){
46
              scope.iconUrl = 'data:image/'+ scope.credential.icon.type +';base64,' + scope.credential.icon.content;
47
            } else {
48
              if(scope.credential.url) {
49
                var url = window.btoa(angular.copy(scope.credential.url)).replace('/', '_');
50
                scope.iconUrl = OC.generateUrl('apps/passman/api/v2/icon/') + url + '/' +
51
                    scope.credential.credential_id;
52
              }
53
            }
54
          }, true);
55
        }
56
      };
57
    }]);
58
}());