bastion 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MmYwYjI1ZmU4ZGQyMjk3MjAwYWI3NzEyZjQyMGM4ODNiNDc3MWUyYw==
4
+ OTA4MmYzNTczZGJlMmI3ZTQzOGM1N2E0ODI1YWFhZWJkODkzNjAxZA==
5
5
  data.tar.gz: !binary |-
6
- MTA0YTNkZjhjYzU0NjE2YmZhYWJiZmNjYTRhZjBmZWFlMTQ1MzM0NQ==
6
+ ZTY3MTA2ZjBhMTU3ZjJiMDdjYWQzYzNlMjIzYWQzZjI1OTIxMGU4Ng==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- N2E2NGYyNTQ0NDVkYTc4NjlmNTI5ZDQyYmFjMDM0Nzc2NzFhOGQxODM4MjE4
10
- MGFmMGIyMmYwNzJmYjM2YTNjNGZiMzY2OGFjY2Q1MDhjMWJiOTc5ZjdjYzg0
11
- ZDE4MmMyOGNiNjZkYjliMDZkZTMzMjY0ZDk2ZTg0ZDI3ZTZjYWM=
9
+ NTRmOTQyODE1MWU0NDBlNTEyYTI2MzcwM2NmZWQ2NjNiYTYyZWMyYWI3ZDRh
10
+ ZjA4NmRkZTU5OGEyOTlkMmFhOTdmYjY4NTIyMGIzYzU1MzgzZmI0YzNhYjBh
11
+ OWQxZjI5M2RmN2QwYjI0YmE1ZGNkYTdkMDFmOWUwMTI5ZThlZTI=
12
12
  data.tar.gz: !binary |-
13
- MGE4ZWJhMGZjNDI5YWMzYTU0NzFmOTZiNDVhYWQxMWE0NjBhMTc1Njg0ZWMw
14
- Mzc5NGE0NjJjYzY4MDA0Y2Q2MjBmZTRhY2FhZmYyZWVmNDU2MzI2NThiYTJi
15
- NTJmYTA1ZTgyNjA2Mzg2OGQ3OTViZWYzMTc0ZmYyZDE5ZTE0YjU=
13
+ ODQxZTM4NjliNGQ4YTFmZTg3ODkwMDVmNTI4MDExMTcxMTY0M2MzOTg5NDIx
14
+ MzY5OWNkMzJjZDM2ZjRmZWViZTRhZjA3MTkxZjhlMWM3NDA2NDhmZTU2ZWI2
15
+ MTRmMzBlZmE2ZDkzNjk1ZWRmZTg4YzY2ZjhmYmIyZjczNTgzYTM=
@@ -79,9 +79,23 @@ angular.module('Bastion.auth').config(['$httpProvider', '$provide',
79
79
  */
80
80
  angular.module('Bastion.auth').run(['$rootScope', '$window', 'Authorization',
81
81
  function ($rootScope, $window, Authorization) {
82
+
83
+ function isAuthorized(permission) {
84
+ return !(permission !== false && (angular.isUndefined(permission) || Authorization.denied(permission)));
85
+ }
86
+
82
87
  $rootScope.$on('$stateChangeStart', function (event, toState) {
83
- var permission = toState.permission;
84
- if (permission !== false && (angular.isUndefined(permission) || Authorization.denied(permission))) {
88
+ var permission = toState.permission, permitted;
89
+
90
+ if (!(permission instanceof Array)) {
91
+ permission = [permission];
92
+ }
93
+
94
+ permitted = _.find(permission, function (perm) {
95
+ return isAuthorized(perm);
96
+ });
97
+
98
+ if (angular.isUndefined(permitted)) {
85
99
  $window.location.href = '/katello/403';
86
100
  }
87
101
  });
@@ -1,3 +1,3 @@
1
1
  module Bastion
2
- VERSION = "0.3.2"
2
+ VERSION = "0.3.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bastion
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katello
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-09 00:00:00.000000000 Z
11
+ date: 2015-04-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: angular-rails-templates