enju_event 0.3.4 → 0.3.5
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/app/controllers/event_import_results_controller.rb +3 -3
- data/app/controllers/events_controller.rb +1 -1
- data/app/controllers/places_controller.rb +1 -1
- data/app/models/event_import_file.rb +5 -9
- data/app/models/event_import_result.rb +6 -0
- data/app/views/event_categories/_form.html.erb +1 -1
- data/app/views/event_import_results/index.text.ruby +5 -0
- data/app/views/events/{index.txt.ruby → index.text.ruby} +0 -0
- data/config/brakeman.ignore +66 -0
- data/lib/enju_event/version.rb +1 -1
- data/spec/controllers/events_controller_spec.rb +2 -2
- data/spec/dummy/config/initializers/mime_types.rb +1 -0
- data/spec/dummy/db/migrate/20200425072340_create_manifestation_custom_properties.rb +12 -0
- data/spec/dummy/db/migrate/20200425072349_create_item_custom_properties.rb +12 -0
- data/spec/dummy/db/migrate/20200425074758_create_manifestation_custom_values.rb +12 -0
- data/spec/dummy/db/migrate/20200425074822_create_item_custom_values.rb +12 -0
- data/spec/dummy/db/schema.rb +36 -280
- data/spec/system/events_spec.rb +3 -3
- data/spec/views/event_import_results/index.text.ruby_spec.rb +22 -0
- metadata +296 -350
- data/app/views/event_import_results/index.txt.erb +0 -3
- data/app/views/events/index.txt.erb +0 -4
- data/spec/dummy/db/migrate/032_create_checkins.rb +0 -17
- data/spec/dummy/db/migrate/033_create_checkouts.rb +0 -25
- data/spec/dummy/db/migrate/035_create_reserves.rb +0 -26
- data/spec/dummy/db/migrate/121_create_checked_items.rb +0 -17
- data/spec/dummy/db/migrate/127_create_use_restrictions.rb +0 -16
- data/spec/dummy/db/migrate/129_create_item_has_use_restrictions.rb +0 -16
- data/spec/dummy/db/migrate/132_create_circulation_statuses.rb +0 -16
- data/spec/dummy/db/migrate/20081030023412_create_checkout_types.rb +0 -17
- data/spec/dummy/db/migrate/20081030023518_create_user_group_has_checkout_types.rb +0 -25
- data/spec/dummy/db/migrate/20081030023615_create_carrier_type_has_checkout_types.rb +0 -18
- data/spec/dummy/db/migrate/20081212075554_create_checkout_stat_has_manifestations.rb +0 -17
- data/spec/dummy/db/migrate/20081212080038_create_manifestation_checkout_stats.rb +0 -15
- data/spec/dummy/db/migrate/20081215094302_create_user_checkout_stats.rb +0 -15
- data/spec/dummy/db/migrate/20081215094955_create_checkout_stat_has_users.rb +0 -17
- data/spec/dummy/db/migrate/20081216190517_create_reserve_stat_has_manifestations.rb +0 -17
- data/spec/dummy/db/migrate/20081216190724_create_manifestation_reserve_stats.rb +0 -15
- data/spec/dummy/db/migrate/20081220023628_create_user_reserve_stats.rb +0 -15
- data/spec/dummy/db/migrate/20081220034117_create_reserve_stat_has_users.rb +0 -17
- data/spec/dummy/db/migrate/20090321130448_add_completed_at_to_user_checkout_stat.rb +0 -23
- data/spec/dummy/db/migrate/20110301134521_add_expire_date_to_reserve.rb +0 -9
- data/spec/dummy/db/migrate/20110328130826_add_current_checkout_count_to_user_group_has_checkout_type.rb +0 -9
- data/spec/dummy/db/migrate/20110621093332_remove_expire_date_from_reserve.rb +0 -9
- data/spec/dummy/db/migrate/20111217234412_add_save_checkout_history_to_user.rb +0 -5
- data/spec/dummy/db/migrate/20111218002349_add_checkout_icalendar_token_to_user.rb +0 -6
- data/spec/dummy/db/migrate/20120424103932_add_librarian_id_to_checked_item.rb +0 -5
- data/spec/dummy/db/migrate/20130303124821_add_retained_at_to_reserve.rb +0 -5
- data/spec/dummy/db/migrate/20130304015019_add_postponed_at_to_reserve.rb +0 -5
- data/spec/dummy/db/migrate/20130416054135_add_circulation_status_id_to_item.rb +0 -8
- data/spec/dummy/db/migrate/20130519065638_add_lock_version_to_reserve.rb +0 -5
- data/spec/dummy/db/migrate/20130519065837_add_lock_version_to_checkin.rb +0 -5
- data/spec/dummy/db/migrate/20140518050147_create_reserve_transitions.rb +0 -18
- data/spec/dummy/db/migrate/20140528045518_create_user_checkout_stat_transitions.rb +0 -18
- data/spec/dummy/db/migrate/20140528045539_create_user_reserve_stat_transitions.rb +0 -18
- data/spec/dummy/db/migrate/20140528045600_create_manifestation_checkout_stat_transitions.rb +0 -18
- data/spec/dummy/db/migrate/20140528045617_create_manifestation_reserve_stat_transitions.rb +0 -18
- data/spec/dummy/db/migrate/20140810061942_add_user_id_to_user_checkout_stat.rb +0 -12
- data/spec/dummy/db/migrate/20140810091231_add_checkout_icalendar_token_to_profile.rb +0 -6
- data/spec/dummy/db/migrate/20140810091417_add_save_checkout_history_to_profile.rb +0 -5
- data/spec/dummy/db/migrate/20141014065831_add_shelf_id_to_checkout.rb +0 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 27b0c9dc4dc6da8c3186d98a1f4c6c99b9f95e4305f8c96b50297a5e692e3d86
|
|
4
|
+
data.tar.gz: c5298009340080f52bce7d1f9a698cf10b5772071b8ca4348b9129c348127a1b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 63640ab077e20f166c74c854980d1e7763d9c985a725a2d5e1cedf10030808e14d4ce7c36d19f34224cae9e4e84e556f06c89eedd8637ad5f812a2592dc4c00f
|
|
7
|
+
data.tar.gz: f171242671fd67136c9a5e1fe83fb36cfc0a03a40c8b704ad45f4de63145f5ea84e1406087b230c4799d86038f42879cd723e7cc5ddcc40d1980bf31e73620da
|
|
@@ -5,9 +5,9 @@ class EventImportResultsController < ApplicationController
|
|
|
5
5
|
# GET /event_import_results
|
|
6
6
|
# GET /event_import_results.json
|
|
7
7
|
def index
|
|
8
|
-
@event_import_file = EventImportFile.
|
|
8
|
+
@event_import_file = EventImportFile.find_by(id: params[:event_import_file_id])
|
|
9
9
|
if @event_import_file
|
|
10
|
-
@event_import_results = @event_import_file.event_import_results.order(created_at: :
|
|
10
|
+
@event_import_results = @event_import_file.event_import_results.order(created_at: :asc).page(params[:page])
|
|
11
11
|
else
|
|
12
12
|
@event_import_results = EventImportResult.order(created_at: :desc).page(params[:page])
|
|
13
13
|
end
|
|
@@ -15,7 +15,7 @@ class EventImportResultsController < ApplicationController
|
|
|
15
15
|
respond_to do |format|
|
|
16
16
|
format.html # index.html.erb
|
|
17
17
|
format.json { render json: @event_import_results }
|
|
18
|
-
format.
|
|
18
|
+
format.text
|
|
19
19
|
end
|
|
20
20
|
end
|
|
21
21
|
|
|
@@ -51,9 +51,7 @@ class EventImportFile < ApplicationRecord
|
|
|
51
51
|
rows.each do |row|
|
|
52
52
|
row_num += 1
|
|
53
53
|
next if row['dummy'].to_s.strip.present?
|
|
54
|
-
event_import_result = EventImportResult.new
|
|
55
|
-
event_import_result.assign_attributes({ event_import_file_id: id, body: row.fields.join("\t") })
|
|
56
|
-
event_import_result.save!
|
|
54
|
+
event_import_result = EventImportResult.new(event_import_file_id: id, body: row.fields.join("\t"))
|
|
57
55
|
|
|
58
56
|
event = Event.new
|
|
59
57
|
event.name = row['name'].to_s.strip
|
|
@@ -67,10 +65,10 @@ class EventImportFile < ApplicationRecord
|
|
|
67
65
|
else
|
|
68
66
|
event.all_day = false
|
|
69
67
|
end
|
|
70
|
-
library = Library.
|
|
68
|
+
library = Library.find_by(name: row['library'])
|
|
71
69
|
library = default_library || Library.web if library.blank?
|
|
72
70
|
event.library = library
|
|
73
|
-
event_category = EventCategory.
|
|
71
|
+
event_category = EventCategory.find_by(name: row['event_category'])
|
|
74
72
|
event_category = default_event_category if event_category.blank?
|
|
75
73
|
event.event_category = event_category
|
|
76
74
|
|
|
@@ -113,7 +111,7 @@ class EventImportFile < ApplicationRecord
|
|
|
113
111
|
event = Event.find(row['id'].to_s.strip)
|
|
114
112
|
event_category = EventCategory.where(name: row['event_category'].to_s.strip).first
|
|
115
113
|
event.event_category = event_category if event_category
|
|
116
|
-
library = Library.
|
|
114
|
+
library = Library.find_by(name: row['library'].to_s.strip)
|
|
117
115
|
event.library = library if library
|
|
118
116
|
event.name = row['name'] if row['name'].to_s.strip.present?
|
|
119
117
|
event.start_at = Time.zone.parse(row['start_at']) if row['start_at'].present?
|
|
@@ -183,9 +181,7 @@ class EventImportFile < ApplicationRecord
|
|
|
183
181
|
|
|
184
182
|
def open_import_file(tempfile)
|
|
185
183
|
file = CSV.open(tempfile, col_sep: "\t")
|
|
186
|
-
header_columns =
|
|
187
|
-
id name display_name library event_category start_at end_at all_day note dummy
|
|
188
|
-
)
|
|
184
|
+
header_columns = EventImportResult.header
|
|
189
185
|
header = file.first
|
|
190
186
|
ignored_columns = header - header_columns
|
|
191
187
|
unless ignored_columns.empty?
|
|
@@ -6,6 +6,12 @@ class EventImportResult < ApplicationRecord
|
|
|
6
6
|
belongs_to :event, optional: true
|
|
7
7
|
|
|
8
8
|
validates :event_import_file_id, presence: true
|
|
9
|
+
|
|
10
|
+
def self.header
|
|
11
|
+
%w(
|
|
12
|
+
id name display_name library event_category start_at end_at all_day note dummy
|
|
13
|
+
)
|
|
14
|
+
end
|
|
9
15
|
end
|
|
10
16
|
|
|
11
17
|
# == Schema Information
|
|
File without changes
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"ignored_warnings": [
|
|
3
|
+
{
|
|
4
|
+
"warning_type": "File Access",
|
|
5
|
+
"warning_code": 16,
|
|
6
|
+
"fingerprint": "0cc99b4df61bb345104e86e3061a1d3e8f23a8385c02a3f65a31701d5dd6e6a6",
|
|
7
|
+
"check_name": "SendFile",
|
|
8
|
+
"message": "Model attribute used in file name",
|
|
9
|
+
"file": "app/controllers/event_import_files_controller.rb",
|
|
10
|
+
"line": 34,
|
|
11
|
+
"link": "https://brakemanscanner.org/docs/warning_types/file_access/",
|
|
12
|
+
"code": "send_file(EventImportFile.find(params[:id]).event_import.path, :filename => EventImportFile.find(params[:id]).event_import_file_name, :type => \"application/octet-stream\")",
|
|
13
|
+
"render_path": null,
|
|
14
|
+
"location": {
|
|
15
|
+
"type": "method",
|
|
16
|
+
"class": "EventImportFilesController",
|
|
17
|
+
"method": "show"
|
|
18
|
+
},
|
|
19
|
+
"user_input": "EventImportFile.find(params[:id]).event_import.path",
|
|
20
|
+
"confidence": "Medium",
|
|
21
|
+
"note": ""
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"warning_type": "File Access",
|
|
25
|
+
"warning_code": 16,
|
|
26
|
+
"fingerprint": "43e943cb9bc901967fc76b8120d84c754d5872e0a955b507ef00d8f613342c86",
|
|
27
|
+
"check_name": "SendFile",
|
|
28
|
+
"message": "Model attribute used in file name",
|
|
29
|
+
"file": "app/controllers/event_export_files_controller.rb",
|
|
30
|
+
"line": 33,
|
|
31
|
+
"link": "https://brakemanscanner.org/docs/warning_types/file_access/",
|
|
32
|
+
"code": "send_file(EventExportFile.find(params[:id]).event_export.path, :filename => EventExportFile.find(params[:id]).event_export_file_name, :type => \"application/octet-stream\")",
|
|
33
|
+
"render_path": null,
|
|
34
|
+
"location": {
|
|
35
|
+
"type": "method",
|
|
36
|
+
"class": "EventExportFilesController",
|
|
37
|
+
"method": "show"
|
|
38
|
+
},
|
|
39
|
+
"user_input": "EventExportFile.find(params[:id]).event_export.path",
|
|
40
|
+
"confidence": "Medium",
|
|
41
|
+
"note": ""
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"warning_type": "Redirect",
|
|
45
|
+
"warning_code": 18,
|
|
46
|
+
"fingerprint": "e304fcb4b88a6522a29c32c654cee5d0a59c5fcce2e0a9a8862768c237a8e72a",
|
|
47
|
+
"check_name": "Redirect",
|
|
48
|
+
"message": "Possible unprotected redirect",
|
|
49
|
+
"file": "app/controllers/event_import_files_controller.rb",
|
|
50
|
+
"line": 32,
|
|
51
|
+
"link": "https://brakemanscanner.org/docs/warning_types/redirect/",
|
|
52
|
+
"code": "redirect_to(EventImportFile.find(params[:id]).event_import.expiring_url(10))",
|
|
53
|
+
"render_path": null,
|
|
54
|
+
"location": {
|
|
55
|
+
"type": "method",
|
|
56
|
+
"class": "EventImportFilesController",
|
|
57
|
+
"method": "show"
|
|
58
|
+
},
|
|
59
|
+
"user_input": "EventImportFile.find(params[:id]).event_import.expiring_url(10)",
|
|
60
|
+
"confidence": "High",
|
|
61
|
+
"note": ""
|
|
62
|
+
}
|
|
63
|
+
],
|
|
64
|
+
"updated": "2020-04-29 03:31:48 +0900",
|
|
65
|
+
"brakeman_version": "4.8.1"
|
|
66
|
+
}
|
data/lib/enju_event/version.rb
CHANGED
|
@@ -55,8 +55,8 @@ describe EventsController do
|
|
|
55
55
|
assigns(:events).should_not be_nil
|
|
56
56
|
end
|
|
57
57
|
|
|
58
|
-
it "assigns all events as @events in
|
|
59
|
-
get :index, format:
|
|
58
|
+
it "assigns all events as @events in text format" do
|
|
59
|
+
get :index, format: :text
|
|
60
60
|
assigns(:events).should_not be_nil
|
|
61
61
|
end
|
|
62
62
|
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
class CreateManifestationCustomProperties < ActiveRecord::Migration[5.2]
|
|
2
|
+
def change
|
|
3
|
+
create_table :manifestation_custom_properties do |t|
|
|
4
|
+
t.string :name, null: false, comment: 'ラベル名', index: {unique: true}
|
|
5
|
+
t.text :display_name, null: false, comment: '表示名'
|
|
6
|
+
t.text :note, comment: '備考'
|
|
7
|
+
t.integer :position, default: 1, null: false
|
|
8
|
+
|
|
9
|
+
t.timestamps
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
class CreateItemCustomProperties < ActiveRecord::Migration[5.2]
|
|
2
|
+
def change
|
|
3
|
+
create_table :item_custom_properties do |t|
|
|
4
|
+
t.string :name, null: false, comment: 'ラベル名', index: {unique: true}
|
|
5
|
+
t.text :display_name, null: false, comment: '表示名'
|
|
6
|
+
t.text :note, comment: '備考'
|
|
7
|
+
t.integer :position, default: 1, null: false
|
|
8
|
+
|
|
9
|
+
t.timestamps
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
class CreateManifestationCustomValues < ActiveRecord::Migration[5.2]
|
|
2
|
+
def change
|
|
3
|
+
create_table :manifestation_custom_values do |t|
|
|
4
|
+
t.references :manifestation_custom_property, null: false, foreign_key: true, index: {name: 'index_manifestation_custom_values_on_custom_property_id'}
|
|
5
|
+
t.references :manifestation, null: false, foreign_key: true
|
|
6
|
+
t.text :value
|
|
7
|
+
|
|
8
|
+
t.timestamps
|
|
9
|
+
end
|
|
10
|
+
add_index :manifestation_custom_values, [:manifestation_custom_property_id, :manifestation_id], unique: true, name: 'index_manifestation_custom_values_on_property_manifestation'
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
class CreateItemCustomValues < ActiveRecord::Migration[5.2]
|
|
2
|
+
def change
|
|
3
|
+
create_table :item_custom_values do |t|
|
|
4
|
+
t.references :item_custom_property, null: false, foreign_key: true, index: {name: 'index_item_custom_values_on_custom_property_id'}
|
|
5
|
+
t.references :item, null: false, foreign_key: true
|
|
6
|
+
t.text :value
|
|
7
|
+
|
|
8
|
+
t.timestamps
|
|
9
|
+
end
|
|
10
|
+
add_index :item_custom_values, [:item_custom_property_id, :item_id], unique: true, name: 'index_item_custom_values_on_custom_item_property_and_item_id'
|
|
11
|
+
end
|
|
12
|
+
end
|