enju_event 0.3.4 → 0.3.5
Sign up to get free protection for your applications and to get access to all the features.
- 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
|