bastion 0.3.2 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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