kaui 0.7.2 → 0.8.0
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 +4 -4
- data/.gitignore +1 -0
- data/.travis.yml +1 -2
- data/Gemfile.lock +59 -38
- data/README.md +12 -9
- data/Rakefile +9 -0
- data/{lib/generators/kaui/install/templates/app/assets/javascripts/kaui/all.js → app/assets/javascripts/application.js} +2 -5
- data/{lib/generators/kaui/install/templates/app/assets/stylesheets/kaui/all.css → app/assets/stylesheets/application.css} +0 -4
- data/app/assets/stylesheets/bootstrap_and_overrides.css +7 -0
- data/app/controllers/kaui/admin_allowed_users_controller.rb +48 -0
- data/app/controllers/kaui/admin_tenants_controller.rb +97 -0
- data/app/controllers/kaui/engine_controller.rb +28 -31
- data/app/controllers/kaui/engine_controller_util.rb +33 -0
- data/app/controllers/kaui/login_proxy_controller.rb +11 -0
- data/app/controllers/kaui/sessions_controller.rb +12 -0
- data/app/controllers/kaui/tenants_controller.rb +60 -0
- data/app/models/kaui/ability.rb +20 -3
- data/app/models/kaui/admin_tenant.rb +10 -0
- data/app/models/kaui/allowed_user.rb +8 -0
- data/app/models/kaui/allowed_user_tenant.rb +6 -0
- data/app/models/kaui/killbill_authenticatable.rb +5 -18
- data/app/models/kaui/tenant.rb +13 -0
- data/app/models/kaui/user.rb +14 -16
- data/app/views/kaui/admin_allowed_users/index.html.erb +23 -0
- data/app/views/kaui/admin_allowed_users/new.html.erb +22 -0
- data/app/views/kaui/admin_allowed_users/show.html.erb +53 -0
- data/app/views/kaui/admin_tenants/index.html.erb +25 -0
- data/app/views/kaui/admin_tenants/new.html.erb +32 -0
- data/app/views/kaui/admin_tenants/show.html.erb +68 -0
- data/app/views/kaui/invoices/show.html.erb +1 -1
- data/app/views/kaui/tenants/index.html.erb +17 -0
- data/config/initializers/killbill_authenticatable.rb +3 -5
- data/config/locales/en.bootstrap.yml +18 -0
- data/config/routes.rb +27 -1
- data/config/symmetric-encryption.yml +135 -0
- data/db/ddl.sql +33 -2
- data/db/migrate/20130812155313_devise_create_kaui_users.rb +1 -3
- data/db/migrate/20150109214021_create_kaui_tenants.rb +12 -0
- data/db/migrate/20150112232813_create_kaui_allowed_users.rb +19 -0
- data/kaui.gemspec +5 -3
- data/lib/kaui.rb +49 -1
- data/lib/kaui/version.rb +1 -1
- data/test/dummy/config/application.rb +3 -0
- data/test/dummy/config/database.yml +9 -0
- data/test/dummy/config/environments/development.rb +2 -2
- data/test/dummy/config/initializers/killbill_client.rb +2 -0
- data/test/dummy/config/symmetric-encryption.yml +135 -0
- data/test/dummy/db/migrate/{20130819152643_devise_create_kaui_users.kaui.rb → 20150116052157_devise_create_kaui_users.kaui.rb} +1 -3
- data/test/dummy/db/migrate/20150116052158_create_kaui_tenants.kaui.rb +13 -0
- data/test/dummy/db/migrate/20150116052159_create_kaui_allowed_users.kaui.rb +20 -0
- data/test/dummy/db/schema.rb +29 -3
- data/test/functional/kaui/admin_allowed_users_controller_test.rb +30 -0
- data/test/functional/kaui/admin_tenants_controller_test.rb +35 -0
- data/test/functional/kaui/functional_test_helper.rb +2 -50
- data/test/functional/kaui/functional_test_helper_nosetup.rb +53 -0
- data/test/functional/kaui/invoices_controller_test.rb +22 -0
- data/test/functional/kaui/tenants_controller_test.rb +60 -0
- data/test/integration/kaui/integration_test_helper.rb +2 -0
- data/test/integration/kaui/navigation_test.rb +1 -2
- data/test/killbill_test_helper.rb +46 -4
- data/test/test_helper.rb +1 -0
- data/test/unit/helpers/kaui/admin_allowed_users_helper_test.rb +6 -0
- data/test/unit/helpers/kaui/admin_tenants_helper_test.rb +6 -0
- data/test/unit/helpers/kaui/tenants_helper_test.rb +6 -0
- data/test/unit/kaui/allowed_user_test.rb +34 -0
- data/test/unit/kaui/tenant_test.rb +19 -0
- data/vendor/assets/javascripts/jquery.dataTables.min.js +155 -0
- metadata +86 -21
- data/app/assets/javascripts/kaui/analytics.js +0 -71
- data/app/assets/stylesheets/kaui/analytics.css +0 -30
- data/test/dummy/app/assets/javascripts/application.js +0 -21
- data/test/dummy/app/assets/stylesheets/application.css +0 -15
- data/test/dummy/app/views/layouts/application.html.erb +0 -48
- data/vendor/assets/javascripts/js/bootstrap-datepicker.cd46d38.js +0 -1211
- data/vendor/assets/javascripts/js/bootstrap.v2.2.1.min.js +0 -6
- data/vendor/assets/javascripts/js/jquery.dataTables.v1.9.3.min.js +0 -156
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b6a81e6e3a3619f778099f358dc74d3225cb53e8
|
4
|
+
data.tar.gz: 20c0ac946eeb47e2a1caf16b916b5d9541ec12ff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8e0c097898fc8ef1a2950043724888498061d9e4132bf0986e7060ef216098f8a575a98a84486580e2cd8039600543f793b5fa30f3fba8fe0e677feec723418b
|
7
|
+
data.tar.gz: d7e88959ca5f56094c30586856b3ead2d09dea34ca1620ee9029da414823950a3a03564b6d77d0426b701c2f8f0a08f6f20fe928dfc23c91da1764ea682c7107
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
@@ -14,7 +14,6 @@ rvm:
|
|
14
14
|
- jruby-head
|
15
15
|
|
16
16
|
jdk:
|
17
|
-
- openjdk6
|
18
17
|
- openjdk7
|
19
18
|
- oraclejdk7
|
20
19
|
|
@@ -23,7 +22,7 @@ before_script:
|
|
23
22
|
|
24
23
|
script:
|
25
24
|
- pushd test/dummy && RAILS_ENV=test bundle exec rake db:migrate --trace && RAILS_ENV=test bundle exec rake db:test:prepare && popd
|
26
|
-
- bundle exec rake
|
25
|
+
- bundle exec rake test:units
|
27
26
|
|
28
27
|
matrix:
|
29
28
|
allow_failures:
|
data/Gemfile.lock
CHANGED
@@ -1,25 +1,27 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
kaui (0.
|
4
|
+
kaui (0.8.0)
|
5
5
|
cancan (~> 1.6.10)
|
6
6
|
carmen-rails (~> 1.0.0)
|
7
7
|
d3_rails (~> 3.2.8)
|
8
8
|
devise (~> 3.0.2)
|
9
9
|
jquery-rails (~> 3.0.4)
|
10
|
-
killbill-client (~> 0.
|
10
|
+
killbill-client (~> 0.10.1)
|
11
11
|
money-rails (~> 0.8.1)
|
12
12
|
rails (~> 3.2.14)
|
13
|
+
symmetric-encryption (~> 3.6.0)
|
14
|
+
twitter-bootstrap-rails (~> 2.2.8)
|
13
15
|
|
14
16
|
GEM
|
15
17
|
remote: http://rubygems.org/
|
16
18
|
specs:
|
17
|
-
actionmailer (3.2.
|
18
|
-
actionpack (= 3.2.
|
19
|
+
actionmailer (3.2.21)
|
20
|
+
actionpack (= 3.2.21)
|
19
21
|
mail (~> 2.5.4)
|
20
|
-
actionpack (3.2.
|
21
|
-
activemodel (= 3.2.
|
22
|
-
activesupport (= 3.2.
|
22
|
+
actionpack (3.2.21)
|
23
|
+
activemodel (= 3.2.21)
|
24
|
+
activesupport (= 3.2.21)
|
23
25
|
builder (~> 3.0.0)
|
24
26
|
erubis (~> 2.7.0)
|
25
27
|
journey (~> 1.0.4)
|
@@ -27,24 +29,27 @@ GEM
|
|
27
29
|
rack-cache (~> 1.2)
|
28
30
|
rack-test (~> 0.6.1)
|
29
31
|
sprockets (~> 2.2.1)
|
30
|
-
activemodel (3.2.
|
31
|
-
activesupport (= 3.2.
|
32
|
+
activemodel (3.2.21)
|
33
|
+
activesupport (= 3.2.21)
|
32
34
|
builder (~> 3.0.0)
|
33
|
-
activerecord (3.2.
|
34
|
-
activemodel (= 3.2.
|
35
|
-
activesupport (= 3.2.
|
35
|
+
activerecord (3.2.21)
|
36
|
+
activemodel (= 3.2.21)
|
37
|
+
activesupport (= 3.2.21)
|
36
38
|
arel (~> 3.0.2)
|
37
39
|
tzinfo (~> 0.3.29)
|
38
|
-
activeresource (3.2.
|
39
|
-
activemodel (= 3.2.
|
40
|
-
activesupport (= 3.2.
|
41
|
-
activesupport (3.2.
|
40
|
+
activeresource (3.2.21)
|
41
|
+
activemodel (= 3.2.21)
|
42
|
+
activesupport (= 3.2.21)
|
43
|
+
activesupport (3.2.21)
|
42
44
|
i18n (~> 0.6, >= 0.6.4)
|
43
45
|
multi_json (~> 1.0)
|
44
46
|
arel (3.0.3)
|
45
|
-
bcrypt (3.1.
|
47
|
+
bcrypt (3.1.10)
|
48
|
+
bcrypt (3.1.10-java)
|
46
49
|
bcrypt-ruby (3.1.5)
|
47
50
|
bcrypt (>= 3.1.3)
|
51
|
+
bcrypt-ruby (3.1.5-java)
|
52
|
+
bcrypt (>= 3.1.3)
|
48
53
|
builder (3.0.4)
|
49
54
|
cancan (1.6.10)
|
50
55
|
carmen (1.0.1)
|
@@ -52,8 +57,12 @@ GEM
|
|
52
57
|
carmen-rails (1.0.1)
|
53
58
|
carmen (~> 1.0.0)
|
54
59
|
rails
|
60
|
+
coercible (1.0.0)
|
61
|
+
descendants_tracker (~> 0.0.1)
|
55
62
|
d3_rails (3.2.8)
|
56
63
|
railties (>= 3.1.0)
|
64
|
+
descendants_tracker (0.0.4)
|
65
|
+
thread_safe (~> 0.3, >= 0.3.1)
|
57
66
|
devise (3.0.4)
|
58
67
|
bcrypt-ruby (~> 3.0)
|
59
68
|
orm_adapter (~> 0.1)
|
@@ -61,6 +70,7 @@ GEM
|
|
61
70
|
warden (~> 1.2.3)
|
62
71
|
docile (1.1.5)
|
63
72
|
erubis (2.7.0)
|
73
|
+
execjs (2.3.0)
|
64
74
|
fakeweb (1.3.0)
|
65
75
|
hike (1.2.3)
|
66
76
|
i18n (0.6.11)
|
@@ -68,8 +78,9 @@ GEM
|
|
68
78
|
jquery-rails (3.0.4)
|
69
79
|
railties (>= 3.0, < 5.0)
|
70
80
|
thor (>= 0.14, < 2.0)
|
71
|
-
json (1.8.
|
72
|
-
|
81
|
+
json (1.8.2)
|
82
|
+
json (1.8.2-java)
|
83
|
+
killbill-client (0.10.3)
|
73
84
|
json (>= 1.2.0)
|
74
85
|
mail (2.5.4)
|
75
86
|
mime-types (~> 1.16)
|
@@ -81,8 +92,8 @@ GEM
|
|
81
92
|
activesupport (>= 3.0)
|
82
93
|
money (~> 5.1.0)
|
83
94
|
railties (>= 3.0)
|
84
|
-
multi_json (1.
|
85
|
-
mysql2 (0.3.
|
95
|
+
multi_json (1.10.1)
|
96
|
+
mysql2 (0.3.17)
|
86
97
|
orm_adapter (0.5.0)
|
87
98
|
polyglot (0.3.5)
|
88
99
|
rack (1.4.5)
|
@@ -90,48 +101,58 @@ GEM
|
|
90
101
|
rack (>= 0.4)
|
91
102
|
rack-ssl (1.3.4)
|
92
103
|
rack
|
93
|
-
rack-test (0.6.
|
104
|
+
rack-test (0.6.3)
|
94
105
|
rack (>= 1.0)
|
95
|
-
rails (3.2.
|
96
|
-
actionmailer (= 3.2.
|
97
|
-
actionpack (= 3.2.
|
98
|
-
activerecord (= 3.2.
|
99
|
-
activeresource (= 3.2.
|
100
|
-
activesupport (= 3.2.
|
106
|
+
rails (3.2.21)
|
107
|
+
actionmailer (= 3.2.21)
|
108
|
+
actionpack (= 3.2.21)
|
109
|
+
activerecord (= 3.2.21)
|
110
|
+
activeresource (= 3.2.21)
|
111
|
+
activesupport (= 3.2.21)
|
101
112
|
bundler (~> 1.0)
|
102
|
-
railties (= 3.2.
|
103
|
-
railties (3.2.
|
104
|
-
actionpack (= 3.2.
|
105
|
-
activesupport (= 3.2.
|
113
|
+
railties (= 3.2.21)
|
114
|
+
railties (3.2.21)
|
115
|
+
actionpack (= 3.2.21)
|
116
|
+
activesupport (= 3.2.21)
|
106
117
|
rack-ssl (~> 1.3.2)
|
107
118
|
rake (>= 0.8.7)
|
108
119
|
rdoc (~> 3.4)
|
109
120
|
thor (>= 0.14.6, < 2.0)
|
110
|
-
rake (10.
|
121
|
+
rake (10.4.2)
|
111
122
|
rdoc (3.12.2)
|
112
123
|
json (~> 1.4)
|
113
|
-
simplecov (0.9.
|
124
|
+
simplecov (0.9.1)
|
114
125
|
docile (~> 1.1.0)
|
115
|
-
multi_json
|
126
|
+
multi_json (~> 1.0)
|
116
127
|
simplecov-html (~> 0.8.0)
|
117
128
|
simplecov-html (0.8.0)
|
118
|
-
sprockets (2.2.
|
129
|
+
sprockets (2.2.3)
|
119
130
|
hike (~> 1.2)
|
120
131
|
multi_json (~> 1.0)
|
121
132
|
rack (~> 1.0)
|
122
133
|
tilt (~> 1.1, != 1.3.0)
|
123
|
-
sqlite3 (1.3.
|
134
|
+
sqlite3 (1.3.10)
|
135
|
+
symmetric-encryption (3.6.0)
|
136
|
+
coercible (>= 1.0.0)
|
124
137
|
thor (0.19.1)
|
138
|
+
thread_safe (0.3.4)
|
139
|
+
thread_safe (0.3.4-java)
|
125
140
|
tilt (1.4.1)
|
126
141
|
treetop (1.4.15)
|
127
142
|
polyglot
|
128
143
|
polyglot (>= 0.3.1)
|
129
|
-
|
144
|
+
twitter-bootstrap-rails (2.2.8)
|
145
|
+
actionpack (>= 3.1)
|
146
|
+
execjs
|
147
|
+
rails (>= 3.1)
|
148
|
+
railties (>= 3.1)
|
149
|
+
tzinfo (0.3.43)
|
130
150
|
unicode_utils (1.4.0)
|
131
151
|
warden (1.2.3)
|
132
152
|
rack (>= 1.0)
|
133
153
|
|
134
154
|
PLATFORMS
|
155
|
+
java
|
135
156
|
ruby
|
136
157
|
|
137
158
|
DEPENDENCIES
|
data/README.md
CHANGED
@@ -4,16 +4,19 @@
|
|
4
4
|
Getting started
|
5
5
|
===============
|
6
6
|
|
7
|
-
Running Kaui
|
8
|
-
|
7
|
+
Running Kaui locally
|
8
|
+
---------------------
|
9
9
|
|
10
|
-
You can run Kaui locally by using the
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
10
|
+
You can run Kaui locally by using the test/dummy app provided:
|
11
|
+
```
|
12
|
+
> bundle install
|
13
|
+
> cd test/dummy
|
14
|
+
> export RAILS_ENV=development
|
15
|
+
> bundle install
|
16
|
+
> rake kaui:install:migrations
|
17
|
+
> rake db:migrate
|
18
|
+
> rails server
|
19
|
+
```
|
17
20
|
|
18
21
|
|
19
22
|
Mounting Kaui into your own Rails app
|
data/Rakefile
CHANGED
@@ -19,5 +19,14 @@ Rake::TestTask.new(:test) do |t|
|
|
19
19
|
t.verbose = false
|
20
20
|
end
|
21
21
|
|
22
|
+
namespace :test do
|
23
|
+
desc 'Runs all the unit tests'
|
24
|
+
Rake::TestTask.new(:units) do |t|
|
25
|
+
t.libs << 'lib'
|
26
|
+
t.libs << 'test'
|
27
|
+
t.pattern = 'test/unit/**/*_test.rb'
|
28
|
+
t.verbose = false
|
29
|
+
end
|
30
|
+
end
|
22
31
|
|
23
32
|
task :default => :test
|
@@ -7,10 +7,7 @@
|
|
7
7
|
//= require jquery
|
8
8
|
//= require jquery_ujs
|
9
9
|
//= require d3
|
10
|
-
//= require
|
11
|
-
//= require
|
12
|
-
//= require js/jquery.dataTables.v1.9.3.min
|
10
|
+
//= require twitter/bootstrap
|
11
|
+
//= require jquery.dataTables.min
|
13
12
|
//= require kaui/bootstrap-tweaks
|
14
13
|
//= require kaui/validation
|
15
|
-
//= require kaui/analytics
|
16
|
-
//= require_tree .
|
@@ -2,10 +2,6 @@
|
|
2
2
|
* This is a manifest file that'll automatically include all the stylesheets available in this directory
|
3
3
|
* and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
|
4
4
|
* the top of the compiled file, but it's generally better to create a new file per style scope.
|
5
|
-
*
|
6
|
-
*= require css/bootstrap.v2.2.1.min
|
7
|
-
*= require css/bootstrap-datepicker.cd46d38
|
8
|
-
*= require kaui/analytics
|
9
5
|
*= require_self
|
10
6
|
*= require_tree .
|
11
7
|
*/
|
@@ -0,0 +1,48 @@
|
|
1
|
+
module Kaui
|
2
|
+
class AdminAllowedUsersController < Kaui::EngineController
|
3
|
+
|
4
|
+
skip_before_filter :check_for_redirect_to_tenant_screen
|
5
|
+
|
6
|
+
def index
|
7
|
+
@allowed_users = Kaui::AllowedUser.all
|
8
|
+
end
|
9
|
+
|
10
|
+
def new
|
11
|
+
@allowed_user = Kaui::AllowedUser.new
|
12
|
+
end
|
13
|
+
|
14
|
+
def create
|
15
|
+
|
16
|
+
param_allowed_user = params[:allowed_user]
|
17
|
+
existing_user = Kaui::AllowedUser.find_by_kb_username(param_allowed_user[:kb_username])
|
18
|
+
if existing_user
|
19
|
+
flash[:error] = "Allowed User with name #{param_allowed_user[:kb_username]} already exists!"
|
20
|
+
redirect_to admin_allowed_users_path and return
|
21
|
+
end
|
22
|
+
|
23
|
+
new_user = Kaui::AllowedUser.new
|
24
|
+
new_user.kb_username = param_allowed_user[:kb_username]
|
25
|
+
new_user.description = param_allowed_user[:description]
|
26
|
+
new_user.save!
|
27
|
+
|
28
|
+
redirect_to admin_allowed_user_path(new_user[:id]), :notice => 'Allowed User was successfully configured'
|
29
|
+
end
|
30
|
+
|
31
|
+
def show
|
32
|
+
@allowed_user = Kaui::AllowedUser.find(params[:id])
|
33
|
+
@tenants = Kaui::Tenant.all
|
34
|
+
render
|
35
|
+
end
|
36
|
+
|
37
|
+
def add_tenant
|
38
|
+
|
39
|
+
allowed_user_id = params[:allowed_user][:id]
|
40
|
+
allowed_user = Kaui::AllowedUser.find(allowed_user_id)
|
41
|
+
tenant = Kaui::Tenant.find_by_id(params[:tenant_id])
|
42
|
+
# Add new tenant for that user
|
43
|
+
allowed_user.kaui_tenants << tenant
|
44
|
+
|
45
|
+
redirect_to admin_allowed_user_path(allowed_user_id), :notice => 'Successfully added tenant'
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,97 @@
|
|
1
|
+
module Kaui
|
2
|
+
class AdminTenantsController < Kaui::EngineController
|
3
|
+
|
4
|
+
skip_before_filter :check_for_redirect_to_tenant_screen
|
5
|
+
|
6
|
+
def index
|
7
|
+
# Display the configured tenants in KAUI (which could be different than the existing tenants known by Kill Bill)
|
8
|
+
@tenants = Kaui::Tenant.all
|
9
|
+
render
|
10
|
+
end
|
11
|
+
|
12
|
+
def new
|
13
|
+
@tenant = Kaui::Tenant.new
|
14
|
+
end
|
15
|
+
|
16
|
+
def create
|
17
|
+
param_tenant = params[:tenant]
|
18
|
+
old_tenant = Kaui::Tenant.find_by_name(param_tenant[:name])
|
19
|
+
if old_tenant
|
20
|
+
flash[:error] = "Tenant with name #{param_tenant[:name]} already exists!"
|
21
|
+
redirect_to admin_tenants_path and return
|
22
|
+
end
|
23
|
+
|
24
|
+
begin
|
25
|
+
# Create the tenant in Kill Bill
|
26
|
+
new_tenant = Kaui::AdminTenant.new
|
27
|
+
new_tenant.external_key = param_tenant[:name]
|
28
|
+
new_tenant.api_key = param_tenant[:api_key]
|
29
|
+
new_tenant.api_secret = param_tenant[:api_secret]
|
30
|
+
|
31
|
+
options = tenant_options_for_client
|
32
|
+
new_tenant = new_tenant.create(options[:username], nil, comment, options)
|
33
|
+
|
34
|
+
# Transform object to Kaui model
|
35
|
+
tenant_model = Kaui::Tenant.new
|
36
|
+
tenant_model.name = new_tenant.external_key
|
37
|
+
tenant_model.kb_tenant_id = new_tenant.tenant_id
|
38
|
+
tenant_model.api_key = new_tenant.api_key
|
39
|
+
tenant_model.api_secret = param_tenant[:api_secret]
|
40
|
+
|
41
|
+
# Save in KAUI tables
|
42
|
+
tenant_model.save!
|
43
|
+
rescue => e
|
44
|
+
flash[:error] = "Failed to create the tenant : #{as_string(e)}"
|
45
|
+
redirect_to admin_tenants_path and return
|
46
|
+
end
|
47
|
+
|
48
|
+
redirect_to admin_tenant_path(tenant_model[:id]), :notice => 'Tenant was successfully configured'
|
49
|
+
end
|
50
|
+
|
51
|
+
def show
|
52
|
+
@tenant = Kaui::Tenant.find(params[:id])
|
53
|
+
render
|
54
|
+
end
|
55
|
+
|
56
|
+
def upload_catalog
|
57
|
+
|
58
|
+
current_tenant = Kaui::Tenant.find_by_id(params[:id])
|
59
|
+
|
60
|
+
options = tenant_options_for_client
|
61
|
+
options[:api_key] = current_tenant.api_key
|
62
|
+
options[:api_secret] = current_tenant.api_secret
|
63
|
+
|
64
|
+
uploaded_catalog = params[:catalog]
|
65
|
+
catalog_xml = uploaded_catalog.read
|
66
|
+
|
67
|
+
Kaui::AdminTenant.upload_catalog(catalog_xml, options[:username], nil, comment, options)
|
68
|
+
|
69
|
+
redirect_to admin_tenants_path, :notice => 'Catalog was successfully uploaded'
|
70
|
+
end
|
71
|
+
|
72
|
+
|
73
|
+
def remove_allowed_user
|
74
|
+
|
75
|
+
current_tenant = Kaui::Tenant.find_by_id(params[:id])
|
76
|
+
au = Kaui::AllowedUser.find(params[:allowed_user][:id])
|
77
|
+
# remove the association
|
78
|
+
au.kaui_tenants.delete current_tenant
|
79
|
+
render :json => '{}', :status => 200
|
80
|
+
end
|
81
|
+
|
82
|
+
private
|
83
|
+
|
84
|
+
def tenant_options_for_client
|
85
|
+
user = current_user
|
86
|
+
{
|
87
|
+
:username => user.kb_username,
|
88
|
+
:password => user.password,
|
89
|
+
:session_id => user.kb_session_id
|
90
|
+
}
|
91
|
+
end
|
92
|
+
|
93
|
+
def comment
|
94
|
+
'Multi-tenant Administrative operation'
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|