enju_leaf 1.1.0.rc10 → 1.1.0.rc11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/enju_leaf.js +1 -1
- data/app/assets/javascripts/mobile.js +1 -1
- data/app/assets/stylesheets/enju.css +0 -2
- data/app/assets/stylesheets/enju_leaf.css +4 -4
- data/app/assets/stylesheets/mobile.css +1 -1
- data/app/controllers/user_import_files_controller.rb +6 -0
- data/app/controllers/user_import_results_controller.rb +1 -1
- data/app/mailers/notifier.rb +1 -1
- data/app/models/profile.rb +18 -0
- data/app/models/user_import_file.rb +46 -30
- data/app/models/user_import_file_state_machine.rb +2 -2
- data/app/models/user_import_file_transition.rb +13 -0
- data/app/models/user_import_result.rb +12 -0
- data/app/views/devise/sessions/new.html.erb +2 -2
- data/app/views/my_accounts/edit.html.erb +2 -2
- data/app/views/my_accounts/show.html.erb +2 -2
- data/app/views/page/403.html.erb +2 -2
- data/app/views/page/404.html.erb +2 -2
- data/app/views/page/500.html.erb +2 -2
- data/app/views/page/about.en.html.erb +4 -4
- data/app/views/page/about.ja.html.erb +4 -4
- data/app/views/page/add_on.html.erb +2 -2
- data/app/views/page/advanced_search.html.erb +10 -4
- data/app/views/page/export.html.erb +3 -3
- data/app/views/page/import.html.erb +2 -2
- data/app/views/page/statistics.html.erb +2 -2
- data/app/views/roles/edit.html.erb +2 -2
- data/app/views/roles/index.html.erb +2 -2
- data/app/views/roles/new.html.erb +2 -2
- data/app/views/roles/show.html.erb +2 -2
- data/app/views/user_groups/edit.html.erb +2 -2
- data/app/views/user_groups/index.html.erb +2 -2
- data/app/views/user_groups/new.html.erb +2 -2
- data/app/views/user_groups/show.html.erb +2 -2
- data/app/views/user_import_files/index.html.erb +2 -2
- data/app/views/user_import_files/new.html.erb +19 -6
- data/app/views/user_import_files/show.html.erb +11 -1
- data/app/views/user_import_results/index.html.erb +4 -4
- data/app/views/user_import_results/{index.csv.erb → index.tsv.erb} +1 -1
- data/app/views/users/edit.html.erb +2 -2
- data/app/views/users/index.html.erb +2 -2
- data/app/views/users/new.html.erb +2 -2
- data/app/views/users/show.html.erb +2 -2
- data/app/workers/user_import_file_queue.rb +7 -0
- data/config/initializers/mime_types.rb +1 -0
- data/config/initializers/paperclip.rb +12 -0
- data/config/initializers/resque.rb +1 -0
- data/config/locales/translation_en.yml +3 -0
- data/config/locales/translation_ja.yml +3 -0
- data/db/migrate/20130221154434_add_additional_attributes_to_user.rb +0 -1
- data/db/migrate/20140110122216_create_user_import_files.rb +0 -1
- data/db/migrate/20140122054321_create_profiles.rb +0 -1
- data/db/migrate/20140628072217_add_user_encoding_to_user_import_file.rb +5 -0
- data/lib/enju_leaf/calculate_stat.rb +1 -1
- data/lib/enju_leaf/import_file.rb +56 -0
- data/lib/enju_leaf/version.rb +1 -1
- data/lib/generators/enju_leaf/setup/setup_generator.rb +0 -5
- data/lib/generators/enju_leaf/setup/templates/config/schedule.rb +0 -8
- data/spec/controllers/my_accounts_controller_spec.rb +1 -1
- data/spec/dummy/app/models/setting.rb +4 -0
- data/spec/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/schema.rb +2 -4
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/solr/default/data/index/_t.fdt +0 -0
- data/spec/dummy/solr/default/data/index/{_2h.fdx → _t.fdx} +0 -0
- data/spec/dummy/solr/default/data/index/{_2h.fnm → _t.fnm} +0 -0
- data/spec/dummy/solr/default/data/index/{_2h.nvd → _t.nvd} +0 -0
- data/spec/dummy/solr/default/data/index/{_2h.nvm → _t.nvm} +0 -0
- data/spec/dummy/solr/default/data/index/{_2h.si → _t.si} +0 -0
- data/spec/dummy/solr/default/data/index/{_2h_Lucene41_0.doc → _t_Lucene41_0.doc} +0 -0
- data/spec/dummy/solr/default/data/index/{_2h_Lucene41_0.pos → _t_Lucene41_0.pos} +0 -0
- data/spec/dummy/solr/default/data/index/{_2h_Lucene41_0.tim → _t_Lucene41_0.tim} +0 -0
- data/spec/dummy/solr/default/data/index/{_2h_Lucene41_0.tip → _t_Lucene41_0.tip} +0 -0
- data/spec/dummy/solr/default/data/index/segments.gen +0 -0
- data/spec/dummy/solr/default/data/index/segments_1p +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000050 +0 -0
- data/spec/dummy/solr/default/data/tlog/{tlog.0000000000000000177 → tlog.0000000000000000051} +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000052 +0 -0
- data/spec/dummy/solr/default/data/tlog/{tlog.0000000000000000179 → tlog.0000000000000000053} +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000054 +0 -0
- data/spec/dummy/solr/default/data/tlog/{tlog.0000000000000000181 → tlog.0000000000000000055} +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000056 +0 -0
- data/spec/dummy/solr/default/data/tlog/{tlog.0000000000000000183 → tlog.0000000000000000057} +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000058 +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000059 +0 -0
- data/spec/dummy/tmp/cache/4F7/F90/default_role +0 -0
- data/spec/dummy/tmp/cache/ACB/B20/manifestation_search_total +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/3f8d795856d1fdf902b0be679120571a +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/5998e66e374537d52eed3fe1ca5f2bfc +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/5ea4a1824e1d67da6c4fb9aeef9f49f4 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/87f0cb69a0df1355e33cce3949919d5a +0 -0
- data/spec/dummy/tmp/cache/stdout +103 -0
- data/spec/dummy/tmp/pids/redis-test.pid +1 -0
- data/spec/fixtures/roles.yml +15 -15
- data/spec/fixtures/user_has_roles.yml +11 -11
- data/spec/fixtures/user_import_files.yml +20 -2
- data/spec/fixtures/user_import_results.yml +12 -0
- data/spec/models/role_spec.rb +14 -14
- data/spec/models/user_has_role_spec.rb +8 -8
- data/spec/models/user_import_file_spec.rb +30 -2
- data/spec/models/user_import_result_spec.rb +12 -0
- data/spec/models/user_spec.rb +19 -19
- data/spec/spec_helper.rb +3 -0
- data/spec/support/resque.rb +30 -0
- data/vendor/assets/javascripts/jquery.colorbox.js +5 -6
- data/{app/assets/javascripts/jquery.mobile-1.4.2.js → vendor/assets/javascripts/jquery.mobile-1.4.3.js} +460 -187
- data/{app/assets/stylesheets/jquery.mobile-1.4.2.css → vendor/assets/stylesheets/jquery.mobile-1.4.3.css} +22 -17
- metadata +107 -101
- data/app/assets/javascripts/profiles.js +0 -2
- data/app/assets/stylesheets/normalize.css +0 -406
- data/app/assets/stylesheets/profiles.css +0 -4
- data/app/assets/stylesheets/scaffolds.css.scss +0 -56
- data/app/helpers/profiles_helper.rb +0 -2
- data/app/views/layouts/patrons.html.erb +0 -26
- data/app/views/layouts/patrons.mobile.erb +0 -18
- data/app/views/profiles/_form.html.erb +0 -53
- data/app/views/profiles/edit.html.erb +0 -6
- data/app/views/profiles/index.html.erb +0 -43
- data/app/views/profiles/new.html.erb +0 -14
- data/app/views/profiles/show.html.erb +0 -54
- data/spec/dummy/private/system/user_import_files/user_imports/980/190/963/original/user_delete_file.tsv +0 -4
- data/spec/dummy/solr/default/data/index/_2h.fdt +0 -0
- data/spec/dummy/solr/default/data/index/segments_57 +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000176 +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000178 +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000180 +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000182 +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000184 +0 -0
- data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000185 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/154f7b83f2da0e86effbe25f32135177 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/1b984bdbd3204a51a82d0e01a1569e2d +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/3054c50144654f9c7e57bb0639a276e9 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/3bd7a263237ba366f64d938fe5303757 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/62899096da1a3e67660f3b88068be8c9 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/65b2e4f67eab21b30217e29075f433b2 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/87d24a3f43f175d4d17babe9203c79a7 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/d38d8658b30de1d068603968227680d4 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b0ced0c7c37efbcc18acbba33a9b271746cb4db
|
4
|
+
data.tar.gz: 248b5fa60c3f66e62c1e8d4990e9bcbe5852aec2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 430f7c4af4f3be4bc8010e9c73d106fd09d4d76dde7213f30c3678bc1b287f6ef7830fa3c6a2d32325e96cbe7e122aa3c65253f6d7b07947adad9aa22eb8f419
|
7
|
+
data.tar.gz: c858e6acea89946198177daf92149dc28b93cf046525fb7e8317c49b91c1cc993fd3615f4633ea232cc8accb73cdd4407242950e86edc48d8ca7db50c7ba3d16
|
@@ -117,7 +117,6 @@ div#submenu{
|
|
117
117
|
width: 190px;
|
118
118
|
padding: 5px;
|
119
119
|
float: left;
|
120
|
-
border: 1px solid #5970B2;
|
121
120
|
}
|
122
121
|
|
123
122
|
div#manifestation_book_jacket{
|
@@ -147,7 +146,6 @@ div#content_detail{
|
|
147
146
|
width: 700px;
|
148
147
|
float: left;
|
149
148
|
margin-bottom: 5px;
|
150
|
-
border: 1px solid #5970B2;
|
151
149
|
}
|
152
150
|
|
153
151
|
div#content_list{
|
@@ -5,10 +5,10 @@
|
|
5
5
|
*= require colorbox
|
6
6
|
*= require pagination
|
7
7
|
*= require jquery.powertip
|
8
|
-
*= require jquery
|
9
|
-
*= require jquery
|
10
|
-
*= require jquery
|
8
|
+
*= require jquery-ui/button
|
9
|
+
*= require jquery-ui/tabs
|
10
|
+
*= require jquery-ui/menu
|
11
|
+
*= require jquery-ui/datepicker
|
11
12
|
*= require jquery.ui.menubar
|
12
|
-
*= require jquery.ui.datepicker
|
13
13
|
*= require portlets
|
14
14
|
*/
|
@@ -3,6 +3,6 @@
|
|
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
5
|
*= require_self
|
6
|
-
*= require jquery.mobile-1.4.
|
6
|
+
*= require jquery.mobile-1.4.3
|
7
7
|
*= require enju_mobile
|
8
8
|
*/
|
@@ -57,6 +57,9 @@ class UserImportFilesController < ApplicationController
|
|
57
57
|
|
58
58
|
respond_to do |format|
|
59
59
|
if @user_import_file.save
|
60
|
+
if @user_import_file.mode == 'import'
|
61
|
+
Resque.enqueue(UserImportFileQueue, @user_import_file.id)
|
62
|
+
end
|
60
63
|
format.html { redirect_to @user_import_file, :notice => t('controller.successfully_created', :model => t('activerecord.models.user_import_file')) }
|
61
64
|
format.json { render :json => @user_import_file, :status => :created, :location => @user_import_file }
|
62
65
|
else
|
@@ -71,6 +74,9 @@ class UserImportFilesController < ApplicationController
|
|
71
74
|
def update
|
72
75
|
respond_to do |format|
|
73
76
|
if @user_import_file.update_attributes(params[:user_import_file])
|
77
|
+
if @user_import_file.mode == 'import'
|
78
|
+
Resque.enqueue(UserImportFileQueue, @user_import_file.id)
|
79
|
+
end
|
74
80
|
format.html { redirect_to @user_import_file, :notice => t('controller.successfully_updated', :model => t('activerecord.models.user_import_file')) }
|
75
81
|
format.json { head :no_content }
|
76
82
|
else
|
data/app/mailers/notifier.rb
CHANGED
@@ -11,7 +11,7 @@ class Notifier < ActionMailer::Base
|
|
11
11
|
subject = I18n.t('message.new_message_from_library', :library => LibraryGroup.system_name(message.receiver.user.locale))
|
12
12
|
end
|
13
13
|
if message.sender
|
14
|
-
@sender_name = message.sender.
|
14
|
+
@sender_name = message.sender.username
|
15
15
|
else
|
16
16
|
@sender_name = LibraryGroup.system_name(message.receiver.locale)
|
17
17
|
end
|
data/app/models/profile.rb
CHANGED
@@ -13,3 +13,21 @@ class Profile < ActiveRecord::Base
|
|
13
13
|
string :user_number
|
14
14
|
end
|
15
15
|
end
|
16
|
+
|
17
|
+
# == Schema Information
|
18
|
+
#
|
19
|
+
# Table name: profiles
|
20
|
+
#
|
21
|
+
# id :integer not null, primary key
|
22
|
+
# user_id :integer
|
23
|
+
# user_group_id :integer
|
24
|
+
# library_id :integer
|
25
|
+
# locale :string(255)
|
26
|
+
# user_number :string(255)
|
27
|
+
# full_name :text
|
28
|
+
# note :text
|
29
|
+
# keyword_list :text
|
30
|
+
# required_role_id :integer
|
31
|
+
# created_at :datetime not null
|
32
|
+
# updated_at :datetime not null
|
33
|
+
#
|
@@ -1,5 +1,5 @@
|
|
1
1
|
class UserImportFile < ActiveRecord::Base
|
2
|
-
attr_accessible :user_import, :edit_mode
|
2
|
+
attr_accessible :user_import, :edit_mode, :user_encoding, :mode
|
3
3
|
include Statesman::Adapters::ActiveRecordModel
|
4
4
|
include ImportFile
|
5
5
|
default_scope {order('user_import_files.id DESC')}
|
@@ -27,6 +27,9 @@ class UserImportFile < ActiveRecord::Base
|
|
27
27
|
|
28
28
|
has_many :user_import_file_transitions
|
29
29
|
|
30
|
+
enju_import_file_model
|
31
|
+
attr_accessor :mode
|
32
|
+
|
30
33
|
def state_machine
|
31
34
|
@state_machine ||= UserImportFileStateMachine.new(self, transition_class: UserImportFileTransition)
|
32
35
|
end
|
@@ -34,24 +37,11 @@ class UserImportFile < ActiveRecord::Base
|
|
34
37
|
delegate :can_transition_to?, :transition_to!, :transition_to, :current_state,
|
35
38
|
to: :state_machine
|
36
39
|
|
37
|
-
def import_start
|
38
|
-
case edit_mode
|
39
|
-
when 'create'
|
40
|
-
import
|
41
|
-
when 'update'
|
42
|
-
modify
|
43
|
-
when 'destroy'
|
44
|
-
remove
|
45
|
-
else
|
46
|
-
import
|
47
|
-
end
|
48
|
-
end
|
49
|
-
|
50
40
|
def import
|
51
41
|
transition_to!(:started)
|
52
42
|
num = {:user_imported => 0, :user_found => 0, :failed => 0}
|
53
|
-
rows = open_import_file
|
54
|
-
row_num =
|
43
|
+
rows = open_import_file(create_import_temp_file)
|
44
|
+
row_num = 1
|
55
45
|
|
56
46
|
field = rows.first
|
57
47
|
if [field['username']].reject{|f| f.to_s.strip == ""}.empty?
|
@@ -59,6 +49,7 @@ class UserImportFile < ActiveRecord::Base
|
|
59
49
|
end
|
60
50
|
|
61
51
|
rows.each do |row|
|
52
|
+
row_num += 1
|
62
53
|
next if row['dummy'].to_s.strip.present?
|
63
54
|
import_result = UserImportResult.create!(
|
64
55
|
:user_import_file_id => id, :body => row.fields.join("\t")
|
@@ -129,12 +120,17 @@ class UserImportFile < ActiveRecord::Base
|
|
129
120
|
def modify
|
130
121
|
transition_to!(:started)
|
131
122
|
transition_to!(:completed)
|
123
|
+
row_num = 1
|
124
|
+
rescue => e
|
125
|
+
self.error_message = "line #{row_num}: #{e.message}"
|
126
|
+
transition_to!(:failed)
|
127
|
+
raise e
|
132
128
|
end
|
133
129
|
|
134
130
|
def remove
|
135
131
|
transition_to!(:started)
|
136
|
-
|
137
|
-
rows = open_import_file
|
132
|
+
row_num = 1
|
133
|
+
rows = open_import_file(create_import_temp_file)
|
138
134
|
|
139
135
|
field = rows.first
|
140
136
|
if [field['username']].reject{|field| field.to_s.strip == ""}.empty?
|
@@ -142,11 +138,16 @@ class UserImportFile < ActiveRecord::Base
|
|
142
138
|
end
|
143
139
|
|
144
140
|
rows.each do |row|
|
141
|
+
row_num += 1
|
145
142
|
username = row['username'].to_s.strip
|
146
143
|
user = User.where(:username => username).first
|
147
144
|
user.destroy if user
|
148
145
|
end
|
149
146
|
transition_to!(:completed)
|
147
|
+
rescue => e
|
148
|
+
self.error_message = "line #{row_num}: #{e.message}"
|
149
|
+
transition_to!(:failed)
|
150
|
+
raise e
|
150
151
|
end
|
151
152
|
|
152
153
|
private
|
@@ -154,8 +155,8 @@ class UserImportFile < ActiveRecord::Base
|
|
154
155
|
UserImportFileTransition
|
155
156
|
end
|
156
157
|
|
157
|
-
def
|
158
|
-
tempfile = Tempfile.new(
|
158
|
+
def create_import_temp_file
|
159
|
+
tempfile = Tempfile.new(self.class.name.underscore)
|
159
160
|
if Setting.uploaded_file.storage == :s3
|
160
161
|
uploaded_file_path = user_import.expiring_url(10)
|
161
162
|
else
|
@@ -163,20 +164,14 @@ class UserImportFile < ActiveRecord::Base
|
|
163
164
|
end
|
164
165
|
open(uploaded_file_path){|f|
|
165
166
|
f.each{|line|
|
166
|
-
|
167
|
-
begin
|
168
|
-
string = line.encode('UTF-8', CharlockHolmes::EncodingDetector.detect(line)[:encoding], universal_newline: true)
|
169
|
-
rescue StandardError
|
170
|
-
string = NKF.nkf('-w -Lu', line)
|
171
|
-
end
|
172
|
-
else
|
173
|
-
string = NKF.nkf('-w -Lu', line)
|
174
|
-
end
|
175
|
-
tempfile.puts(string)
|
167
|
+
tempfile.puts(convert_encoding(line))
|
176
168
|
}
|
177
169
|
}
|
178
170
|
tempfile.close
|
171
|
+
tempfile
|
172
|
+
end
|
179
173
|
|
174
|
+
def open_import_file(tempfile)
|
180
175
|
file = CSV.open(tempfile.path, 'r:utf-8', :col_sep => "\t")
|
181
176
|
header = file.first
|
182
177
|
rows = CSV.open(tempfile.path, 'r:utf-8', :headers => header, :col_sep => "\t")
|
@@ -194,3 +189,24 @@ class UserImportFile < ActiveRecord::Base
|
|
194
189
|
Rails.logger.info "#{Time.zone.now} importing resources failed!"
|
195
190
|
end
|
196
191
|
end
|
192
|
+
|
193
|
+
# == Schema Information
|
194
|
+
#
|
195
|
+
# Table name: user_import_files
|
196
|
+
#
|
197
|
+
# id :integer not null, primary key
|
198
|
+
# user_id :integer
|
199
|
+
# note :text
|
200
|
+
# executed_at :datetime
|
201
|
+
# state :string(255)
|
202
|
+
# user_import_file_name :string(255)
|
203
|
+
# user_import_content_type :string(255)
|
204
|
+
# user_import_file_size :string(255)
|
205
|
+
# user_import_updated_at :datetime
|
206
|
+
# user_import_fingerprint :string(255)
|
207
|
+
# edit_mode :string(255)
|
208
|
+
# error_message :text
|
209
|
+
# created_at :datetime not null
|
210
|
+
# updated_at :datetime not null
|
211
|
+
# user_encoding :string(255)
|
212
|
+
#
|
@@ -9,8 +9,8 @@ class UserImportFileStateMachine
|
|
9
9
|
transition from: :pending, to: :started
|
10
10
|
transition from: :started, to: [:completed, :failed]
|
11
11
|
|
12
|
-
|
13
|
-
user_import_file.executed_at
|
12
|
+
after_transition(from: :pending, to: :started) do |user_import_file|
|
13
|
+
user_import_file.update_column(:executed_at, Time.zone.now)
|
14
14
|
end
|
15
15
|
|
16
16
|
before_transition(from: :started, to: :completed) do |user_import_file|
|
@@ -5,3 +5,16 @@ class UserImportFileTransition < ActiveRecord::Base
|
|
5
5
|
belongs_to :user_import_file, inverse_of: :user_import_file_transitions
|
6
6
|
attr_accessible :to_state, :sort_key, :metadata
|
7
7
|
end
|
8
|
+
|
9
|
+
# == Schema Information
|
10
|
+
#
|
11
|
+
# Table name: user_import_file_transitions
|
12
|
+
#
|
13
|
+
# id :integer not null, primary key
|
14
|
+
# to_state :string(255)
|
15
|
+
# metadata :text default("{}")
|
16
|
+
# sort_key :integer
|
17
|
+
# user_import_file_id :integer
|
18
|
+
# created_at :datetime not null
|
19
|
+
# updated_at :datetime not null
|
20
|
+
#
|
@@ -7,3 +7,15 @@ class UserImportResult < ActiveRecord::Base
|
|
7
7
|
belongs_to :user_import_file
|
8
8
|
belongs_to :user
|
9
9
|
end
|
10
|
+
|
11
|
+
# == Schema Information
|
12
|
+
#
|
13
|
+
# Table name: user_import_results
|
14
|
+
#
|
15
|
+
# id :integer not null, primary key
|
16
|
+
# user_import_file_id :integer
|
17
|
+
# user_id :integer
|
18
|
+
# body :text
|
19
|
+
# created_at :datetime not null
|
20
|
+
# updated_at :datetime not null
|
21
|
+
#
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<%= form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f| %>
|
2
|
-
<div id="content_detail" class="ui-corner-all">
|
2
|
+
<div id="content_detail" class="ui-corner-all ui-widget-content">
|
3
3
|
<h1 class="title"><%= t('page.sign_in') -%> : Next-L Enju</h1>
|
4
4
|
<div id="content_list">
|
5
5
|
<%= f.error_messages -%>
|
@@ -9,7 +9,7 @@
|
|
9
9
|
</div>
|
10
10
|
</div>
|
11
11
|
|
12
|
-
<div id="submenu" class="ui-corner-all">
|
12
|
+
<div id="submenu" class="ui-corner-all ui-widget-content">
|
13
13
|
<p>
|
14
14
|
<%= f.label t('activerecord.attributes.user.username') %><br />
|
15
15
|
<%= f.text_field :username, :class => 'login_password', :autofocus => true %>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<div id="content_detail" class="ui-corner-all">
|
1
|
+
<div id="content_detail" class="ui-corner-all ui-widget-content">
|
2
2
|
<h1 class="title"><%= t('page.edit_user_profile', :login_name => @user.username) -%></h1>
|
3
3
|
<div id="content_list">
|
4
4
|
<%= render 'page/required_field' %>
|
@@ -63,7 +63,7 @@
|
|
63
63
|
</div>
|
64
64
|
</div>
|
65
65
|
|
66
|
-
<div id="submenu" class="ui-corner-all">
|
66
|
+
<div id="submenu" class="ui-corner-all ui-widget-content">
|
67
67
|
<ul>
|
68
68
|
<li><%= link_to t('page.show'), my_account_path -%></li>
|
69
69
|
<% if current_user.has_role?('Librarian') %>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<div id="content_detail" class="ui-corner-all">
|
1
|
+
<div id="content_detail" class="ui-corner-all ui-widget-content">
|
2
2
|
<h1 class="title"><%= t('page.showing', :model => t('activerecord.models.user')) -%></h1>
|
3
3
|
<div id="content_list">
|
4
4
|
<p id="notice"><%= notice %></p>
|
@@ -44,7 +44,7 @@
|
|
44
44
|
</div>
|
45
45
|
</div>
|
46
46
|
|
47
|
-
<div id="submenu" class="ui-corner-all">
|
47
|
+
<div id="submenu" class="ui-corner-all ui-widget-content">
|
48
48
|
<% if defined?(EnjuCirculation) %>
|
49
49
|
<ul>
|
50
50
|
<%- current_user.user_group.user_group_has_checkout_types.each do |available_checkout_type| -%>
|
data/app/views/page/403.html.erb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
<div id="content_detail" class="ui-corner-all">
|
1
|
+
<div id="content_detail" class="ui-corner-all ui-widget-content">
|
2
2
|
<h1 class="title"><%= t('page.access_denied') -%></h1>
|
3
3
|
<div id="content_list">
|
4
4
|
<%= render 'page/search_form' %>
|
5
5
|
</div>
|
6
6
|
</div>
|
7
7
|
|
8
|
-
<div id="submenu" class="ui-corner-all">
|
8
|
+
<div id="submenu" class="ui-corner-all ui-widget-content">
|
9
9
|
</div>
|
data/app/views/page/404.html.erb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
<div id="content_detail" class="ui-corner-all">
|
1
|
+
<div id="content_detail" class="ui-corner-all ui-widget-content">
|
2
2
|
<h1 class="title"><%= t('page.not_found') -%></h1>
|
3
3
|
<div id="content_list">
|
4
4
|
<%= render 'page/search_form' %>
|
5
5
|
</div>
|
6
6
|
</div>
|
7
7
|
|
8
|
-
<div id="submenu" class="ui-corner-all">
|
8
|
+
<div id="submenu" class="ui-corner-all ui-widget-content">
|
9
9
|
</div>
|
data/app/views/page/500.html.erb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
<div id="content_detail" class="ui-corner-all">
|
1
|
+
<div id="content_detail" class="ui-corner-all ui-widget-content">
|
2
2
|
<h1 class="title"><%= t('page.internal_server_error') -%></h1>
|
3
3
|
<div id="content_list">
|
4
4
|
<%= render 'page/search_form' %>
|
5
5
|
</div>
|
6
6
|
</div>
|
7
7
|
|
8
|
-
<div id="submenu" class="ui-corner-all">
|
8
|
+
<div id="submenu" class="ui-corner-all ui-widget-content">
|
9
9
|
</div>
|
@@ -1,16 +1,16 @@
|
|
1
|
-
<div id="content_detail" class="ui-corner-all">
|
1
|
+
<div id="content_detail" class="ui-corner-all ui-widget-content">
|
2
2
|
<h1 class="title">About this system</h1>
|
3
3
|
<div id="content_list">
|
4
4
|
|
5
5
|
<ul>
|
6
|
-
<li>This integrated library system software "Next-L Enju Leaf" is developed by <a href="
|
6
|
+
<li>This integrated library system software "Next-L Enju Leaf" is developed by <a href="https://github.com/nabeta">Kosuke Tanabe</a> and <a href="http://www.next-l.jp/">Project Next-L</a>.</li>
|
7
7
|
<li>Next-L Enju Leaf is released under MIT license. For more information, visit <a href="https://github.com/next-l/enju_leaf">our project website</a>.</li>
|
8
8
|
</ul>
|
9
9
|
|
10
10
|
<h2>Contact information</h2>
|
11
11
|
|
12
12
|
<ul>
|
13
|
-
<li>Kosuke Tanabe: <%= mail_to '
|
13
|
+
<li>Kosuke Tanabe: <%= mail_to 'nabeta@fastmail.fm', nil, :replace_at => '_at_' -%></li>
|
14
14
|
<li>Project Next-L: <%= mail_to 'info@next-l.jp', nil, :replace_at => '_at_' -%></li>
|
15
15
|
</ul>
|
16
16
|
|
@@ -49,7 +49,7 @@
|
|
49
49
|
</div>
|
50
50
|
</div>
|
51
51
|
|
52
|
-
<div id="submenu" class="ui-corner-all">
|
52
|
+
<div id="submenu" class="ui-corner-all ui-widget-content">
|
53
53
|
<ul>
|
54
54
|
<li><a href="http://www.next-l.jp/">Project Next-L</a></li>
|
55
55
|
<li><a href="https://github.com/next-l/enju_leaf">this project on GitHub</a></li>
|
@@ -1,16 +1,16 @@
|
|
1
|
-
<div id="content_detail" class="ui-corner-all">
|
1
|
+
<div id="content_detail" class="ui-corner-all ui-widget-content">
|
2
2
|
<h1 class="title">このシステムについて</h1>
|
3
3
|
<div id="content_list">
|
4
4
|
|
5
5
|
<ul>
|
6
|
-
<li>この図書館システム"Next-L Enju Leaf"は、<a href="
|
6
|
+
<li>この図書館システム"Next-L Enju Leaf"は、<a href="https://github.com/nabeta">田辺浩介</a>と<a href="http://www.next-l.jp/">Project Next-L</a>によって開発されています。</li>
|
7
7
|
<li>Next-L Enju LeafはMITライセンスのもとに公開されています。詳しくは<a href="https://github.com/next-l/enju_leaf">プロジェクトのホームページ</a>をごらんください。</li>
|
8
8
|
</ul>
|
9
9
|
|
10
10
|
<h2>連絡先</h2>
|
11
11
|
|
12
12
|
<ul>
|
13
|
-
<li>田辺浩介: <%= mail_to '
|
13
|
+
<li>田辺浩介: <%= mail_to 'nabeta@fastmail.fm', nil, :replace_at => '_at_' -%></li>
|
14
14
|
<li>Project Next-L: <%= mail_to 'info@next-l.jp', nil, :replace_at => '_at_' -%></li>
|
15
15
|
</ul>
|
16
16
|
|
@@ -48,7 +48,7 @@
|
|
48
48
|
</div>
|
49
49
|
</div>
|
50
50
|
|
51
|
-
<div id="submenu" class="ui-corner-all">
|
51
|
+
<div id="submenu" class="ui-corner-all ui-widget-content">
|
52
52
|
<ul>
|
53
53
|
<li><a href="http://www.next-l.jp/">Project Next-L</a></li>
|
54
54
|
<li><a href="https://github.com/next-l/enju_leaf">GitHubでのプロジェクトのページ</a></li>
|