enju_purchase_request 0.1.1 → 0.2.0.beta.2
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/README.rdoc +3 -3
- data/app/controllers/concerns/enju_purchase_request/controller.rb +19 -0
- data/app/controllers/order_lists_controller.rb +13 -3
- data/app/controllers/orders_controller.rb +13 -3
- data/app/controllers/purchase_requests_controller.rb +15 -10
- data/app/models/concerns/enju_purchase_request/enju_user.rb +10 -0
- data/app/models/order.rb +3 -4
- data/app/models/order_list.rb +2 -2
- data/app/models/order_list_transition.rb +5 -4
- data/app/models/purchase_request.rb +7 -8
- data/app/policies/bookstore_policy.rb +23 -0
- data/app/policies/order_list_policy.rb +21 -0
- data/app/policies/order_policy.rb +21 -0
- data/app/policies/purchase_request_policy.rb +25 -0
- data/app/views/orders/index.html.erb +5 -3
- data/app/views/purchase_requests/_index.html.erb +7 -7
- data/app/views/purchase_requests/_index_order_list.html.erb +6 -4
- data/app/views/purchase_requests/show.html.erb +1 -1
- data/db/migrate/20160703190738_add_most_recent_to_order_list_transitions.rb +9 -0
- data/lib/enju_purchase_request/version.rb +1 -1
- data/lib/enju_purchase_request.rb +0 -25
- data/lib/tasks/enju_purchase_request_tasks.rake +8 -0
- data/spec/controllers/order_lists_controller_spec.rb +13 -11
- data/spec/controllers/orders_controller_spec.rb +9 -9
- data/spec/controllers/purchase_requests_controller_spec.rb +4 -4
- data/spec/dummy/app/controllers/application_controller.rb +7 -4
- data/spec/dummy/app/models/user.rb +2 -3
- data/spec/dummy/config/application.rb +7 -24
- data/spec/dummy/config/environments/development.rb +22 -18
- data/spec/dummy/config/environments/production.rb +46 -34
- data/spec/dummy/config/environments/test.rb +21 -14
- data/spec/dummy/db/migrate/149_create_message_templates.rb +18 -0
- data/spec/dummy/db/migrate/154_create_messages.rb +23 -0
- data/spec/dummy/db/migrate/20080819181903_create_message_requests.rb +18 -0
- data/spec/dummy/db/migrate/20081212151614_create_bookmark_stats.rb +0 -3
- data/spec/dummy/db/migrate/20110913115320_add_lft_and_rgt_to_message.rb +11 -0
- data/spec/dummy/db/migrate/20120125050502_add_depth_to_message.rb +6 -0
- data/spec/dummy/db/migrate/20140110122216_create_user_import_files.rb +1 -1
- data/spec/dummy/db/migrate/20140518111006_create_message_transitions.rb +18 -0
- data/spec/dummy/db/migrate/20140518135713_create_message_request_transitions.rb +18 -0
- data/spec/dummy/db/migrate/20140524074813_create_user_import_file_transitions.rb +5 -1
- data/spec/dummy/db/migrate/20140524135607_create_bookmark_stat_transitions.rb +5 -1
- data/spec/dummy/db/migrate/20140709113905_create_user_export_file_transitions.rb +5 -1
- data/spec/dummy/db/migrate/20140821151023_create_colors.rb +14 -0
- data/spec/dummy/db/migrate/20141013152011_add_missing_unique_indices.acts_as_taggable_on_engine.rb +20 -0
- data/spec/dummy/db/migrate/20141013152013_add_missing_taggable_index.acts_as_taggable_on_engine.rb +10 -0
- data/spec/dummy/db/migrate/20150506105356_add_error_message_to_user_import_result.rb +5 -0
- data/spec/dummy/db/migrate/20150924115059_create_withdraws.rb +13 -0
- data/spec/dummy/db/migrate/20151213070943_add_translation_table_to_library_group.rb +13 -0
- data/spec/dummy/db/migrate/20151213072705_add_footer_banner_to_library_group.rb +9 -0
- data/spec/dummy/db/migrate/20160610093229_add_html_snippet_to_library_group.rb +5 -0
- data/spec/dummy/db/migrate/20160627232219_add_most_recent_to_user_import_file_transitions.rb +9 -0
- data/spec/dummy/db/migrate/20160627232316_add_most_recent_to_user_export_file_transitions.rb +9 -0
- data/spec/dummy/db/migrate/20160703185015_add_most_recent_to_message_transitions.rb +9 -0
- data/spec/dummy/db/migrate/20160813191647_add_max_number_of_results_to_library_group.rb +5 -0
- data/spec/dummy/db/migrate/20160813191733_add_family_name_first_to_library_group.rb +5 -0
- data/spec/dummy/db/migrate/20160813192542_add_pub_year_facet_range_interval_to_library_group.rb +5 -0
- data/spec/dummy/db/migrate/20160813203039_add_user_id_to_library_group.rb +5 -0
- data/spec/dummy/db/migrate/20160814165332_add_most_recent_to_message_request_transitions.rb +9 -0
- data/spec/dummy/db/migrate/20160815045420_add_most_recent_to_bookmark_stat_transitions.rb +9 -0
- data/spec/dummy/db/schema.rb +123 -10
- data/spec/fixtures/library_groups.yml +1 -0
- data/spec/fixtures/order_list_transitions.yml +10 -6
- data/spec/fixtures/order_lists.yml +2 -3
- data/spec/fixtures/orders.yml +3 -4
- data/spec/fixtures/purchase_requests.yml +6 -7
- data/spec/models/order_list_spec.rb +3 -4
- data/spec/models/order_spec.rb +4 -6
- data/spec/models/purchase_request_spec.rb +7 -9
- data/spec/rails_helper.rb +53 -0
- data/spec/spec_helper.rb +82 -43
- data/spec/support/devise.rb +2 -2
- metadata +261 -194
- data/app/models/enju_purchase_request/ability.rb +0 -30
- data/lib/enju_purchase_request/user.rb +0 -14
- data/spec/dummy/app/models/ability.rb +0 -30
- data/spec/dummy/app/views/page/403.html.erb +0 -9
- data/spec/dummy/app/views/page/403.mobile.erb +0 -5
- data/spec/dummy/app/views/page/403.xml.erb +0 -4
- data/spec/dummy/app/views/page/404.html.erb +0 -9
- data/spec/dummy/app/views/page/404.mobile.erb +0 -5
- data/spec/dummy/app/views/page/404.xml.erb +0 -4
- data/spec/dummy/config/application.yml +0 -38
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c9dbb79d1677349e2baac147f142a61dba3aa49f
|
4
|
+
data.tar.gz: 2976b93d9b6e8821334b243f553dd6d80518359a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b03871bcea0ed5ad39b569e4fdc764e511d55a2163ca2bc541ef5dde25facdac100a50a058ddc70bafaaacfc81293a72fd52096c009840d22ad05b30b526e513
|
7
|
+
data.tar.gz: f4bbfed5aa655e9175eaa42cc1b876b3807ec0e9461f62246e1515f4eac6e3463e604d3d18de35663c72fd5944f7d54f4cbd1b2b58fc163c017638b0b6d27eb1
|
data/README.rdoc
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
= EnjuPurchaseRequest
|
2
|
-
{<img src="https://travis-ci.org/next-l/enju_purchase_request.svg?branch=1.
|
3
|
-
{<img src="https://coveralls.io/repos/next-l/enju_purchase_request/badge.svg?branch=1.
|
4
|
-
{<img src="https://hakiri.io/github/next-l/enju_purchase_request/1.
|
2
|
+
{<img src="https://travis-ci.org/next-l/enju_purchase_request.svg?branch=1.2" alt="Build Status" />}[https://travis-ci.org/next-l/enju_purchase_request]
|
3
|
+
{<img src="https://coveralls.io/repos/next-l/enju_purchase_request/badge.svg?branch=1.2&service=github" alt="Coverage Status" />}[https://coveralls.io/github/next-l/enju_purchase_request?branch=1.2]
|
4
|
+
{<img src="https://hakiri.io/github/next-l/enju_purchase_request/1.2.svg" alt="security" />}[https://hakiri.io/github/next-l/enju_purchase_request/1.2]
|
5
5
|
|
6
6
|
This project rocks and uses MIT-LICENSE.
|
7
7
|
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module EnjuPurchaseRequest
|
2
|
+
module Controller
|
3
|
+
private
|
4
|
+
|
5
|
+
def get_order_list
|
6
|
+
if params[:order_list_id]
|
7
|
+
@order_list = OrderList.find(params[:order_list_id])
|
8
|
+
authorize @order_list, :show?
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
def get_purchase_request
|
13
|
+
if params[:purchase_request_id]
|
14
|
+
@purchase_request = PurchaseRequest.find(params[:purchase_request_id])
|
15
|
+
authorize @purchase_request, :show?
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -1,7 +1,8 @@
|
|
1
1
|
class OrderListsController < ApplicationController
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
before_action :set_order_list, only: [:show, :edit, :update, :destroy]
|
3
|
+
before_action :check_policy, only: [:index, :new, :create]
|
4
|
+
before_action :prepare_options, only: [:new, :edit]
|
5
|
+
before_action :get_bookstore, only: :index
|
5
6
|
|
6
7
|
# GET /order_lists
|
7
8
|
# GET /order_lists.json
|
@@ -97,6 +98,15 @@ class OrderListsController < ApplicationController
|
|
97
98
|
end
|
98
99
|
|
99
100
|
private
|
101
|
+
def set_order_list
|
102
|
+
@order_list = OrderList.find(params[:id])
|
103
|
+
authorize @order_list
|
104
|
+
end
|
105
|
+
|
106
|
+
def check_policy
|
107
|
+
authorize OrderList
|
108
|
+
end
|
109
|
+
|
100
110
|
def order_list_params
|
101
111
|
params.require(:order_list).permit(
|
102
112
|
:user_id, :bookstore_id, :title, :note, :ordered_at, :edit_mode
|
@@ -1,7 +1,8 @@
|
|
1
1
|
class OrdersController < ApplicationController
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
before_action :set_order, only: [:show, :edit, :update, :destroy]
|
3
|
+
before_action :check_policy, only: [:index, :new, :create]
|
4
|
+
before_action :get_order_list
|
5
|
+
before_action :get_purchase_request
|
5
6
|
|
6
7
|
# GET /orders
|
7
8
|
# GET /orders.json
|
@@ -128,6 +129,15 @@ class OrdersController < ApplicationController
|
|
128
129
|
end
|
129
130
|
|
130
131
|
private
|
132
|
+
def set_order
|
133
|
+
@order = Order.find(params[:id])
|
134
|
+
authorize @order
|
135
|
+
end
|
136
|
+
|
137
|
+
def check_policy
|
138
|
+
authorize Order
|
139
|
+
end
|
140
|
+
|
131
141
|
def order_params
|
132
142
|
params.require(:order).permit(:order_list_id, :purchase_request_id)
|
133
143
|
end
|
@@ -1,11 +1,10 @@
|
|
1
1
|
class PurchaseRequestsController < ApplicationController
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
after_filter :convert_charset, only: :index
|
2
|
+
before_action :store_page, only: :index
|
3
|
+
before_action :set_purchase_request, only: [:show, :edit, :update, :destroy]
|
4
|
+
before_action :check_policy, only: [:index, :new, :create]
|
5
|
+
before_action :get_user
|
6
|
+
before_action :get_order_list
|
7
|
+
after_action :convert_charset, only: :index
|
9
8
|
|
10
9
|
# GET /purchase_requests
|
11
10
|
# GET /purchase_requests.json
|
@@ -23,9 +22,6 @@ class PurchaseRequestsController < ApplicationController
|
|
23
22
|
|
24
23
|
user = @user
|
25
24
|
unless current_user.has_role?('Librarian')
|
26
|
-
if @order_list
|
27
|
-
access_denied; return
|
28
|
-
end
|
29
25
|
if user and user != current_user
|
30
26
|
access_denied; return
|
31
27
|
end
|
@@ -145,6 +141,15 @@ class PurchaseRequestsController < ApplicationController
|
|
145
141
|
end
|
146
142
|
|
147
143
|
private
|
144
|
+
def set_purchase_request
|
145
|
+
@purchase_request = PurchaseRequest.find(params[:id])
|
146
|
+
authorize @purchase_request
|
147
|
+
end
|
148
|
+
|
149
|
+
def check_policy
|
150
|
+
authorize PurchaseRequest
|
151
|
+
end
|
152
|
+
|
148
153
|
def purchase_request_params
|
149
154
|
params.fetch(:purchase_request, {}).permit(
|
150
155
|
:title, :author, :publisher, :isbn, :price, :url, :note, :pub_date
|
data/app/models/order.rb
CHANGED
@@ -26,8 +26,7 @@ end
|
|
26
26
|
# order_list_id :integer not null
|
27
27
|
# purchase_request_id :integer not null
|
28
28
|
# position :integer
|
29
|
-
# state :string
|
30
|
-
# created_at :datetime
|
31
|
-
# updated_at :datetime
|
29
|
+
# state :string
|
30
|
+
# created_at :datetime
|
31
|
+
# updated_at :datetime
|
32
32
|
#
|
33
|
-
|
data/app/models/order_list.rb
CHANGED
@@ -10,10 +10,11 @@ end
|
|
10
10
|
# Table name: order_list_transitions
|
11
11
|
#
|
12
12
|
# id :integer not null, primary key
|
13
|
-
# to_state :string
|
14
|
-
# metadata :text default(
|
13
|
+
# to_state :string
|
14
|
+
# metadata :text default({})
|
15
15
|
# sort_key :integer
|
16
16
|
# order_list_id :integer
|
17
|
-
# created_at :datetime
|
18
|
-
# updated_at :datetime
|
17
|
+
# created_at :datetime
|
18
|
+
# updated_at :datetime
|
19
|
+
# most_recent :boolean
|
19
20
|
#
|
@@ -14,7 +14,7 @@ class PurchaseRequest < ActiveRecord::Base
|
|
14
14
|
after_destroy :index!
|
15
15
|
before_save :set_date_of_publication
|
16
16
|
|
17
|
-
|
17
|
+
strip_attributes only: [:url, :pub_date]
|
18
18
|
|
19
19
|
searchable do
|
20
20
|
text :title, :author, :publisher, :url
|
@@ -74,17 +74,16 @@ end
|
|
74
74
|
# title :text not null
|
75
75
|
# author :text
|
76
76
|
# publisher :text
|
77
|
-
# isbn :string
|
77
|
+
# isbn :string
|
78
78
|
# date_of_publication :datetime
|
79
79
|
# price :integer
|
80
|
-
# url :string
|
80
|
+
# url :string
|
81
81
|
# note :text
|
82
82
|
# accepted_at :datetime
|
83
83
|
# denied_at :datetime
|
84
|
-
# created_at :datetime
|
85
|
-
# updated_at :datetime
|
84
|
+
# created_at :datetime
|
85
|
+
# updated_at :datetime
|
86
86
|
# deleted_at :datetime
|
87
|
-
# state :string
|
88
|
-
# pub_date :string
|
87
|
+
# state :string
|
88
|
+
# pub_date :string
|
89
89
|
#
|
90
|
-
|
@@ -0,0 +1,23 @@
|
|
1
|
+
class BookstorePolicy < ApplicationPolicy
|
2
|
+
def index?
|
3
|
+
true if user.try(:has_role?, 'Librarian')
|
4
|
+
end
|
5
|
+
|
6
|
+
def show?
|
7
|
+
true if user.try(:has_role?, 'Librarian')
|
8
|
+
end
|
9
|
+
|
10
|
+
def create?
|
11
|
+
true if user.try(:has_role?, 'Administrator')
|
12
|
+
end
|
13
|
+
|
14
|
+
def update?
|
15
|
+
true if user.try(:has_role?, 'Administrator')
|
16
|
+
end
|
17
|
+
|
18
|
+
def destroy?
|
19
|
+
if user.try(:has_role?, 'Administrator')
|
20
|
+
true if record.items.empty? and record.order_lists.empty?
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
class OrderListPolicy < ApplicationPolicy
|
2
|
+
def index?
|
3
|
+
true if user.try(:has_role?, 'Librarian')
|
4
|
+
end
|
5
|
+
|
6
|
+
def show?
|
7
|
+
true if user.try(:has_role?, 'Librarian')
|
8
|
+
end
|
9
|
+
|
10
|
+
def create?
|
11
|
+
true if user.try(:has_role?, 'Librarian')
|
12
|
+
end
|
13
|
+
|
14
|
+
def update?
|
15
|
+
true if user.try(:has_role?, 'Librarian')
|
16
|
+
end
|
17
|
+
|
18
|
+
def destroy?
|
19
|
+
true if user.try(:has_role?, 'Librarian')
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
class OrderPolicy < ApplicationPolicy
|
2
|
+
def index?
|
3
|
+
true if user.try(:has_role?, 'Librarian')
|
4
|
+
end
|
5
|
+
|
6
|
+
def show?
|
7
|
+
true if user.try(:has_role?, 'Librarian')
|
8
|
+
end
|
9
|
+
|
10
|
+
def create?
|
11
|
+
true if user.try(:has_role?, 'Librarian')
|
12
|
+
end
|
13
|
+
|
14
|
+
def update?
|
15
|
+
true if user.try(:has_role?, 'Librarian')
|
16
|
+
end
|
17
|
+
|
18
|
+
def destroy?
|
19
|
+
true if user.try(:has_role?, 'Librarian')
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
class PurchaseRequestPolicy < ApplicationPolicy
|
2
|
+
def index?
|
3
|
+
true if user.try(:has_role?, 'User')
|
4
|
+
end
|
5
|
+
|
6
|
+
def show?
|
7
|
+
if user.try(:has_role?, 'Librarian')
|
8
|
+
true
|
9
|
+
elsif user.try(:has_role?, 'User')
|
10
|
+
true if record.user == user
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def create?
|
15
|
+
true if user.try(:has_role?, 'User')
|
16
|
+
end
|
17
|
+
|
18
|
+
def update?
|
19
|
+
show?
|
20
|
+
end
|
21
|
+
|
22
|
+
def destroy?
|
23
|
+
show?
|
24
|
+
end
|
25
|
+
end
|
@@ -16,9 +16,11 @@
|
|
16
16
|
<td><%= link_to order.purchase_request.title, purchase_request_path(order.purchase_request) -%></td>
|
17
17
|
<td><%= l(order.updated_at) -%></td>
|
18
18
|
<td>
|
19
|
-
|
20
|
-
|
19
|
+
<%= link_to t('page.show'), order_path(order) -%>
|
20
|
+
<%- if policy(order).update? -%>
|
21
21
|
<%= link_to t('page.edit'), edit_order_path(order) -%>
|
22
|
+
<%- end -%>
|
23
|
+
<%- if policy(order).destroy? -%>
|
22
24
|
<%= link_to t('page.destroy'), order_path(order), data: {confirm: t('page.are_you_sure')}, method: :delete -%>
|
23
25
|
<%- end -%>
|
24
26
|
</td>
|
@@ -33,7 +35,7 @@
|
|
33
35
|
|
34
36
|
<div id="submenu" class="ui-corner-all ui-widget-content">
|
35
37
|
<ul>
|
36
|
-
<%- if
|
38
|
+
<%- if policy(Order).create? -%>
|
37
39
|
<li><%= link_to t('page.new', model: t('activerecord.models.order')), new_order_path -%></li>
|
38
40
|
<%- end -%>
|
39
41
|
</ul>
|
@@ -34,10 +34,10 @@
|
|
34
34
|
</td>
|
35
35
|
<td><%= purchase_request.price -%></td>
|
36
36
|
<td>
|
37
|
-
<%- if
|
37
|
+
<%- if policy(purchase_request).update? %>
|
38
38
|
<%= link_to t('page.edit'), edit_purchase_request_path(purchase_request) -%>
|
39
|
-
|
40
|
-
<%- if
|
39
|
+
<% end %>
|
40
|
+
<%- if policy(purchase_request).destroy? %>
|
41
41
|
<%= link_to t('page.destroy'), purchase_request, data: {confirm: t('page.are_you_sure')}, method: :delete -%>
|
42
42
|
<%- end -%>
|
43
43
|
</td>
|
@@ -69,14 +69,14 @@
|
|
69
69
|
</ul>
|
70
70
|
<p>
|
71
71
|
<%- if @user -%>
|
72
|
-
<%= link_to (
|
72
|
+
<%= link_to image_tag('icons/feed.png', size: '16x16', class: 'enju_icon', alt: t('page.feed')), purchase_requests_path(user_id: @user.username, format: :rss, locale: @locale.to_s) -%>
|
73
73
|
(<%= link_to 'RSS', purchase_requests_path(user_id: @user.username, format: :rss, locale: @locale.to_s) -%>)
|
74
|
-
<%= link_to (
|
74
|
+
<%= link_to image_tag('icons/page_white_excel.png', size: '16x16', class: 'enju_icon', alt: 'TSV'), purchase_requests_path(user_id: @user.username, format: :txt) -%>
|
75
75
|
(<%= link_to 'TSV', purchase_requests_path(user_id: @user.username, format: :txt) -%>)
|
76
76
|
<%- else -%>
|
77
|
-
<%= link_to (
|
77
|
+
<%= link_to image_tag('icons/feed.png', size: '16x16', class: 'enju_icon', alt: t('page.feed')), purchase_requests_path(format: :rss, locale: @locale.to_s) -%>
|
78
78
|
(<%= link_to 'RSS', purchase_requests_path(format: :rss, locale: @locale.to_s) -%>)
|
79
|
-
<%= link_to (
|
79
|
+
<%= link_to image_tag('icons/page_white_excel.png', size: '16x16', class: 'enju_icon', alt: 'TSV'), purchase_requests_path(format: :txt) -%>
|
80
80
|
(<%= link_to 'TSV', purchase_requests_path(format: :txt) -%>)
|
81
81
|
<%- end -%>
|
82
82
|
</p>
|
@@ -39,8 +39,10 @@
|
|
39
39
|
</td>
|
40
40
|
<td><%= purchase_request.price -%></td>
|
41
41
|
<td>
|
42
|
-
|
43
|
-
|
42
|
+
<%- if policy(purchase_request).update? -%>
|
43
|
+
<%= link_to t('page.edit'), edit_purchase_request_path(purchase_request) -%>
|
44
|
+
<% end %>
|
45
|
+
<%- if policy(purchase_request).destroy? -%>
|
44
46
|
<%- if params[:mode] == "add" -%>
|
45
47
|
<%= link_to t('page.add'), new_purchase_request_path(order_list_id: @order_list, purchase_request_id: purchase_request.id, mode: 'add') -%>
|
46
48
|
<%- else -%>
|
@@ -67,9 +69,9 @@
|
|
67
69
|
</ul>
|
68
70
|
<% if @order_list.ordered? %>
|
69
71
|
<p>
|
70
|
-
<%= link_to (
|
72
|
+
<%= link_to image_tag('icons/feed.png', size: '16x16', class: 'enju_icon', alt: t('page.feed')), purchase_requests_path(order_list_id: @order_list.id, format: :rss) -%>
|
71
73
|
(<%= link_to 'RSS', purchase_requests_path(order_list_id: @order_list.id, format: :rss) -%>)
|
72
|
-
<%= link_to (
|
74
|
+
<%= link_to image_tag('icons/page_white_excel.png', size: '16x16', class: 'enju_icon', alt: 'TSV'), purchase_requests_path(order_list_id: @order_list.id, format: :txt) -%>
|
73
75
|
(<%= link_to 'TSV', purchase_requests_path(order_list_id: @order_list.id, format: :txt) -%>)
|
74
76
|
</p>
|
75
77
|
<% end %>
|
@@ -81,7 +81,7 @@
|
|
81
81
|
|
82
82
|
<div id="submenu" class="ui-corner-all ui-widget-content">
|
83
83
|
<ul>
|
84
|
-
<% if
|
84
|
+
<% if policy(Order).create? %>
|
85
85
|
<%- if @purchase_request.order_list -%>
|
86
86
|
<li><%= link_to t('purchase_request.remove_from_order_list'), order_path(@purchase_request.order, order_list_id: @purchase_request.order_list.id), method: :delete, data: {confirm: t('page.are_you_sure')} -%></li>
|
87
87
|
<%- else -%>
|
@@ -1,30 +1,5 @@
|
|
1
1
|
require "enju_purchase_request/engine"
|
2
2
|
require "enju_purchase_request/bookmark_url"
|
3
|
-
require "enju_purchase_request/user"
|
4
3
|
|
5
4
|
module EnjuPurchaseRequest
|
6
|
-
def self.included(base)
|
7
|
-
base.extend(ClassMethods)
|
8
|
-
end
|
9
|
-
|
10
|
-
module ClassMethods
|
11
|
-
def enju_purchase_request
|
12
|
-
include EnjuPurchaseRequest::InstanceMethods
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
module InstanceMethods
|
17
|
-
private
|
18
|
-
|
19
|
-
def get_order_list
|
20
|
-
@order_list = OrderList.find(params[:order_list_id]) if params[:order_list_id]
|
21
|
-
end
|
22
|
-
|
23
|
-
def get_purchase_request
|
24
|
-
@purchase_request = PurchaseRequest.find(params[:purchase_request_id]) if params[:purchase_request_id]
|
25
|
-
end
|
26
|
-
end
|
27
5
|
end
|
28
|
-
|
29
|
-
ActionController::Base.send(:include, EnjuPurchaseRequest)
|
30
|
-
ActiveRecord::Base.send :include, EnjuPurchaseRequest::PurchaseRequestUser
|
@@ -2,3 +2,11 @@
|
|
2
2
|
# task :enju_purchase_request do
|
3
3
|
# # Task goes here
|
4
4
|
# end
|
5
|
+
namespace :enju_purchase_request do
|
6
|
+
desc "upgrade enju_purchase_request"
|
7
|
+
task :upgrade => :environment do
|
8
|
+
Rake::Task['statesman:backfill_most_recent'].invoke('OrderList')
|
9
|
+
puts 'enju_purchase_request: The upgrade completed successfully.'
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require '
|
1
|
+
require 'rails_helper'
|
2
2
|
require 'sunspot/rails/spec_helper'
|
3
3
|
|
4
4
|
describe OrderListsController do
|
@@ -35,14 +35,14 @@ describe OrderListsController do
|
|
35
35
|
|
36
36
|
it "assigns empty as @order_lists" do
|
37
37
|
get :index
|
38
|
-
assigns(:order_lists).should
|
38
|
+
assigns(:order_lists).should be_nil
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
42
|
describe "When not logged in" do
|
43
43
|
it "assigns empty as @order_lists" do
|
44
44
|
get :index
|
45
|
-
assigns(:order_lists).should
|
45
|
+
assigns(:order_lists).should be_nil
|
46
46
|
end
|
47
47
|
end
|
48
48
|
end
|
@@ -101,7 +101,8 @@ describe OrderListsController do
|
|
101
101
|
|
102
102
|
it "assigns the requested order_list as @order_list" do
|
103
103
|
get :new
|
104
|
-
assigns(:order_list).
|
104
|
+
assigns(:order_list).should be_nil
|
105
|
+
response.should be_success
|
105
106
|
end
|
106
107
|
end
|
107
108
|
|
@@ -112,7 +113,8 @@ describe OrderListsController do
|
|
112
113
|
|
113
114
|
it "assigns the requested order_list as @order_list" do
|
114
115
|
get :new
|
115
|
-
assigns(:order_list).
|
116
|
+
assigns(:order_list).should be_nil
|
117
|
+
response.should be_success
|
116
118
|
end
|
117
119
|
end
|
118
120
|
|
@@ -123,7 +125,7 @@ describe OrderListsController do
|
|
123
125
|
|
124
126
|
it "should not assign the requested order_list as @order_list" do
|
125
127
|
get :new
|
126
|
-
assigns(:order_list).
|
128
|
+
assigns(:order_list).should be_nil
|
127
129
|
response.should be_forbidden
|
128
130
|
end
|
129
131
|
end
|
@@ -131,7 +133,7 @@ describe OrderListsController do
|
|
131
133
|
describe "When not logged in" do
|
132
134
|
it "should not assign the requested order_list as @order_list" do
|
133
135
|
get :new
|
134
|
-
assigns(:order_list).
|
136
|
+
assigns(:order_list).should be_nil
|
135
137
|
response.should redirect_to(new_user_session_url)
|
136
138
|
end
|
137
139
|
end
|
@@ -257,7 +259,7 @@ describe OrderListsController do
|
|
257
259
|
describe "with valid params" do
|
258
260
|
it "assigns a newly created order_list as @order_list" do
|
259
261
|
post :create, :order_list => @attrs
|
260
|
-
assigns(:order_list).should
|
262
|
+
assigns(:order_list).should be_nil
|
261
263
|
end
|
262
264
|
|
263
265
|
it "should be forbidden" do
|
@@ -269,7 +271,7 @@ describe OrderListsController do
|
|
269
271
|
describe "with invalid params" do
|
270
272
|
it "assigns a newly created but unsaved order_list as @order_list" do
|
271
273
|
post :create, :order_list => @invalid_attrs
|
272
|
-
assigns(:order_list).
|
274
|
+
assigns(:order_list).should be_nil
|
273
275
|
end
|
274
276
|
|
275
277
|
it "should be forbidden" do
|
@@ -283,7 +285,7 @@ describe OrderListsController do
|
|
283
285
|
describe "with valid params" do
|
284
286
|
it "assigns a newly created order_list as @order_list" do
|
285
287
|
post :create, :order_list => @attrs
|
286
|
-
assigns(:order_list).should
|
288
|
+
assigns(:order_list).should be_nil
|
287
289
|
end
|
288
290
|
|
289
291
|
it "should be forbidden" do
|
@@ -295,7 +297,7 @@ describe OrderListsController do
|
|
295
297
|
describe "with invalid params" do
|
296
298
|
it "assigns a newly created but unsaved order_list as @order_list" do
|
297
299
|
post :create, :order_list => @invalid_attrs
|
298
|
-
assigns(:order_list).
|
300
|
+
assigns(:order_list).should be_nil
|
299
301
|
end
|
300
302
|
|
301
303
|
it "should be forbidden" do
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require '
|
1
|
+
require 'rails_helper'
|
2
2
|
require 'sunspot/rails/spec_helper'
|
3
3
|
|
4
4
|
describe OrdersController do
|
@@ -39,7 +39,7 @@ describe OrdersController do
|
|
39
39
|
|
40
40
|
it "should be forbidden" do
|
41
41
|
get :index
|
42
|
-
assigns(:orders).should
|
42
|
+
assigns(:orders).should be_nil
|
43
43
|
response.should be_forbidden
|
44
44
|
end
|
45
45
|
end
|
@@ -47,7 +47,7 @@ describe OrdersController do
|
|
47
47
|
describe "When not logged in" do
|
48
48
|
it "assigns all orders as @orders" do
|
49
49
|
get :index
|
50
|
-
assigns(:orders).should
|
50
|
+
assigns(:orders).should be_nil
|
51
51
|
response.should redirect_to(new_user_session_url)
|
52
52
|
end
|
53
53
|
end
|
@@ -143,7 +143,7 @@ describe OrdersController do
|
|
143
143
|
|
144
144
|
it "should not assign the requested order as @order" do
|
145
145
|
get :new, :order_list_id => 1, :purchase_request_id => 1
|
146
|
-
assigns(:order).
|
146
|
+
assigns(:order).should be_nil
|
147
147
|
response.should be_forbidden
|
148
148
|
end
|
149
149
|
end
|
@@ -151,7 +151,7 @@ describe OrdersController do
|
|
151
151
|
describe "When not logged in" do
|
152
152
|
it "should not assign the requested order as @order" do
|
153
153
|
get :new, :order_list_id => 1, :purchase_request_id => 1
|
154
|
-
assigns(:order).
|
154
|
+
assigns(:order).should be_nil
|
155
155
|
response.should redirect_to(new_user_session_url)
|
156
156
|
end
|
157
157
|
end
|
@@ -277,7 +277,7 @@ describe OrdersController do
|
|
277
277
|
describe "with valid params" do
|
278
278
|
it "assigns a newly created order as @order" do
|
279
279
|
post :create, :order => @attrs
|
280
|
-
assigns(:order).should
|
280
|
+
assigns(:order).should be_nil
|
281
281
|
end
|
282
282
|
|
283
283
|
it "should be forbidden" do
|
@@ -289,7 +289,7 @@ describe OrdersController do
|
|
289
289
|
describe "with invalid params" do
|
290
290
|
it "assigns a newly created but unsaved order as @order" do
|
291
291
|
post :create, :order => @invalid_attrs
|
292
|
-
assigns(:order).
|
292
|
+
assigns(:order).should be_nil
|
293
293
|
end
|
294
294
|
|
295
295
|
it "should be forbidden" do
|
@@ -303,7 +303,7 @@ describe OrdersController do
|
|
303
303
|
describe "with valid params" do
|
304
304
|
it "assigns a newly created order as @order" do
|
305
305
|
post :create, :order => @attrs
|
306
|
-
assigns(:order).should
|
306
|
+
assigns(:order).should be_nil
|
307
307
|
end
|
308
308
|
|
309
309
|
it "should be forbidden" do
|
@@ -315,7 +315,7 @@ describe OrdersController do
|
|
315
315
|
describe "with invalid params" do
|
316
316
|
it "assigns a newly created but unsaved order as @order" do
|
317
317
|
post :create, :order => @invalid_attrs
|
318
|
-
assigns(:order).
|
318
|
+
assigns(:order).should be_nil
|
319
319
|
end
|
320
320
|
|
321
321
|
it "should be forbidden" do
|