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.
Files changed (144) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/enju_leaf.js +1 -1
  3. data/app/assets/javascripts/mobile.js +1 -1
  4. data/app/assets/stylesheets/enju.css +0 -2
  5. data/app/assets/stylesheets/enju_leaf.css +4 -4
  6. data/app/assets/stylesheets/mobile.css +1 -1
  7. data/app/controllers/user_import_files_controller.rb +6 -0
  8. data/app/controllers/user_import_results_controller.rb +1 -1
  9. data/app/mailers/notifier.rb +1 -1
  10. data/app/models/profile.rb +18 -0
  11. data/app/models/user_import_file.rb +46 -30
  12. data/app/models/user_import_file_state_machine.rb +2 -2
  13. data/app/models/user_import_file_transition.rb +13 -0
  14. data/app/models/user_import_result.rb +12 -0
  15. data/app/views/devise/sessions/new.html.erb +2 -2
  16. data/app/views/my_accounts/edit.html.erb +2 -2
  17. data/app/views/my_accounts/show.html.erb +2 -2
  18. data/app/views/page/403.html.erb +2 -2
  19. data/app/views/page/404.html.erb +2 -2
  20. data/app/views/page/500.html.erb +2 -2
  21. data/app/views/page/about.en.html.erb +4 -4
  22. data/app/views/page/about.ja.html.erb +4 -4
  23. data/app/views/page/add_on.html.erb +2 -2
  24. data/app/views/page/advanced_search.html.erb +10 -4
  25. data/app/views/page/export.html.erb +3 -3
  26. data/app/views/page/import.html.erb +2 -2
  27. data/app/views/page/statistics.html.erb +2 -2
  28. data/app/views/roles/edit.html.erb +2 -2
  29. data/app/views/roles/index.html.erb +2 -2
  30. data/app/views/roles/new.html.erb +2 -2
  31. data/app/views/roles/show.html.erb +2 -2
  32. data/app/views/user_groups/edit.html.erb +2 -2
  33. data/app/views/user_groups/index.html.erb +2 -2
  34. data/app/views/user_groups/new.html.erb +2 -2
  35. data/app/views/user_groups/show.html.erb +2 -2
  36. data/app/views/user_import_files/index.html.erb +2 -2
  37. data/app/views/user_import_files/new.html.erb +19 -6
  38. data/app/views/user_import_files/show.html.erb +11 -1
  39. data/app/views/user_import_results/index.html.erb +4 -4
  40. data/app/views/user_import_results/{index.csv.erb → index.tsv.erb} +1 -1
  41. data/app/views/users/edit.html.erb +2 -2
  42. data/app/views/users/index.html.erb +2 -2
  43. data/app/views/users/new.html.erb +2 -2
  44. data/app/views/users/show.html.erb +2 -2
  45. data/app/workers/user_import_file_queue.rb +7 -0
  46. data/config/initializers/mime_types.rb +1 -0
  47. data/config/initializers/paperclip.rb +12 -0
  48. data/config/initializers/resque.rb +1 -0
  49. data/config/locales/translation_en.yml +3 -0
  50. data/config/locales/translation_ja.yml +3 -0
  51. data/db/migrate/20130221154434_add_additional_attributes_to_user.rb +0 -1
  52. data/db/migrate/20140110122216_create_user_import_files.rb +0 -1
  53. data/db/migrate/20140122054321_create_profiles.rb +0 -1
  54. data/db/migrate/20140628072217_add_user_encoding_to_user_import_file.rb +5 -0
  55. data/lib/enju_leaf/calculate_stat.rb +1 -1
  56. data/lib/enju_leaf/import_file.rb +56 -0
  57. data/lib/enju_leaf/version.rb +1 -1
  58. data/lib/generators/enju_leaf/setup/setup_generator.rb +0 -5
  59. data/lib/generators/enju_leaf/setup/templates/config/schedule.rb +0 -8
  60. data/spec/controllers/my_accounts_controller_spec.rb +1 -1
  61. data/spec/dummy/app/models/setting.rb +4 -0
  62. data/spec/dummy/db/development.sqlite3 +0 -0
  63. data/spec/dummy/db/schema.rb +2 -4
  64. data/spec/dummy/db/test.sqlite3 +0 -0
  65. data/spec/dummy/solr/default/data/index/_t.fdt +0 -0
  66. data/spec/dummy/solr/default/data/index/{_2h.fdx → _t.fdx} +0 -0
  67. data/spec/dummy/solr/default/data/index/{_2h.fnm → _t.fnm} +0 -0
  68. data/spec/dummy/solr/default/data/index/{_2h.nvd → _t.nvd} +0 -0
  69. data/spec/dummy/solr/default/data/index/{_2h.nvm → _t.nvm} +0 -0
  70. data/spec/dummy/solr/default/data/index/{_2h.si → _t.si} +0 -0
  71. data/spec/dummy/solr/default/data/index/{_2h_Lucene41_0.doc → _t_Lucene41_0.doc} +0 -0
  72. data/spec/dummy/solr/default/data/index/{_2h_Lucene41_0.pos → _t_Lucene41_0.pos} +0 -0
  73. data/spec/dummy/solr/default/data/index/{_2h_Lucene41_0.tim → _t_Lucene41_0.tim} +0 -0
  74. data/spec/dummy/solr/default/data/index/{_2h_Lucene41_0.tip → _t_Lucene41_0.tip} +0 -0
  75. data/spec/dummy/solr/default/data/index/segments.gen +0 -0
  76. data/spec/dummy/solr/default/data/index/segments_1p +0 -0
  77. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000050 +0 -0
  78. data/spec/dummy/solr/default/data/tlog/{tlog.0000000000000000177 → tlog.0000000000000000051} +0 -0
  79. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000052 +0 -0
  80. data/spec/dummy/solr/default/data/tlog/{tlog.0000000000000000179 → tlog.0000000000000000053} +0 -0
  81. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000054 +0 -0
  82. data/spec/dummy/solr/default/data/tlog/{tlog.0000000000000000181 → tlog.0000000000000000055} +0 -0
  83. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000056 +0 -0
  84. data/spec/dummy/solr/default/data/tlog/{tlog.0000000000000000183 → tlog.0000000000000000057} +0 -0
  85. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000058 +0 -0
  86. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000059 +0 -0
  87. data/spec/dummy/tmp/cache/4F7/F90/default_role +0 -0
  88. data/spec/dummy/tmp/cache/ACB/B20/manifestation_search_total +0 -0
  89. data/spec/dummy/tmp/cache/assets/test/sprockets/3f8d795856d1fdf902b0be679120571a +0 -0
  90. data/spec/dummy/tmp/cache/assets/test/sprockets/5998e66e374537d52eed3fe1ca5f2bfc +0 -0
  91. data/spec/dummy/tmp/cache/assets/test/sprockets/5ea4a1824e1d67da6c4fb9aeef9f49f4 +0 -0
  92. data/spec/dummy/tmp/cache/assets/test/sprockets/87f0cb69a0df1355e33cce3949919d5a +0 -0
  93. data/spec/dummy/tmp/cache/stdout +103 -0
  94. data/spec/dummy/tmp/pids/redis-test.pid +1 -0
  95. data/spec/fixtures/roles.yml +15 -15
  96. data/spec/fixtures/user_has_roles.yml +11 -11
  97. data/spec/fixtures/user_import_files.yml +20 -2
  98. data/spec/fixtures/user_import_results.yml +12 -0
  99. data/spec/models/role_spec.rb +14 -14
  100. data/spec/models/user_has_role_spec.rb +8 -8
  101. data/spec/models/user_import_file_spec.rb +30 -2
  102. data/spec/models/user_import_result_spec.rb +12 -0
  103. data/spec/models/user_spec.rb +19 -19
  104. data/spec/spec_helper.rb +3 -0
  105. data/spec/support/resque.rb +30 -0
  106. data/vendor/assets/javascripts/jquery.colorbox.js +5 -6
  107. data/{app/assets/javascripts/jquery.mobile-1.4.2.js → vendor/assets/javascripts/jquery.mobile-1.4.3.js} +460 -187
  108. data/{app/assets/stylesheets/jquery.mobile-1.4.2.css → vendor/assets/stylesheets/jquery.mobile-1.4.3.css} +22 -17
  109. metadata +107 -101
  110. data/app/assets/javascripts/profiles.js +0 -2
  111. data/app/assets/stylesheets/normalize.css +0 -406
  112. data/app/assets/stylesheets/profiles.css +0 -4
  113. data/app/assets/stylesheets/scaffolds.css.scss +0 -56
  114. data/app/helpers/profiles_helper.rb +0 -2
  115. data/app/views/layouts/patrons.html.erb +0 -26
  116. data/app/views/layouts/patrons.mobile.erb +0 -18
  117. data/app/views/profiles/_form.html.erb +0 -53
  118. data/app/views/profiles/edit.html.erb +0 -6
  119. data/app/views/profiles/index.html.erb +0 -43
  120. data/app/views/profiles/new.html.erb +0 -14
  121. data/app/views/profiles/show.html.erb +0 -54
  122. data/spec/dummy/private/system/user_import_files/user_imports/980/190/963/original/user_delete_file.tsv +0 -4
  123. data/spec/dummy/solr/default/data/index/_2h.fdt +0 -0
  124. data/spec/dummy/solr/default/data/index/segments_57 +0 -0
  125. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000176 +0 -0
  126. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000178 +0 -0
  127. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000180 +0 -0
  128. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000182 +0 -0
  129. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000184 +0 -0
  130. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000185 +0 -0
  131. data/spec/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  132. data/spec/dummy/tmp/cache/assets/test/sprockets/154f7b83f2da0e86effbe25f32135177 +0 -0
  133. data/spec/dummy/tmp/cache/assets/test/sprockets/1b984bdbd3204a51a82d0e01a1569e2d +0 -0
  134. data/spec/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  135. data/spec/dummy/tmp/cache/assets/test/sprockets/3054c50144654f9c7e57bb0639a276e9 +0 -0
  136. data/spec/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  137. data/spec/dummy/tmp/cache/assets/test/sprockets/3bd7a263237ba366f64d938fe5303757 +0 -0
  138. data/spec/dummy/tmp/cache/assets/test/sprockets/62899096da1a3e67660f3b88068be8c9 +0 -0
  139. data/spec/dummy/tmp/cache/assets/test/sprockets/65b2e4f67eab21b30217e29075f433b2 +0 -0
  140. data/spec/dummy/tmp/cache/assets/test/sprockets/87d24a3f43f175d4d17babe9203c79a7 +0 -0
  141. data/spec/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  142. data/spec/dummy/tmp/cache/assets/test/sprockets/d38d8658b30de1d068603968227680d4 +0 -0
  143. data/spec/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  144. 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: abf8301bf438bd48a00db3b8c08ed8892bb827cb
4
- data.tar.gz: ece67d49714be04367a3fbf8e5ed8c7e41686d0c
3
+ metadata.gz: 0b0ced0c7c37efbcc18acbba33a9b271746cb4db
4
+ data.tar.gz: 248b5fa60c3f66e62c1e8d4990e9bcbe5852aec2
5
5
  SHA512:
6
- metadata.gz: 5c854e5b0ee69714f5023aab0359aacf57ebb2fe2554ef61fc5d85209ff2aa9622859927b16c7cdb395912bfef36ae7f2f137c254a9c9fa59d5058e8f45660c4
7
- data.tar.gz: ab3ed970a465ce237c9047752757589fb45fa9cd36bc45e77cf6874c7b9f6849e531397421196cd70f2ddcd4f6219919646f7ee580a6b7c2935ae886574d242b
6
+ metadata.gz: 430f7c4af4f3be4bc8010e9c73d106fd09d4d76dde7213f30c3678bc1b287f6ef7830fa3c6a2d32325e96cbe7e122aa3c65253f6d7b07947adad9aa22eb8f419
7
+ data.tar.gz: c858e6acea89946198177daf92149dc28b93cf046525fb7e8317c49b91c1cc993fd3615f4633ea232cc8accb73cdd4407242950e86edc48d8ca7db50c7ba3d16
@@ -1,4 +1,4 @@
1
- //= require jquery.ui.all
1
+ //= require jquery-ui
2
2
  //= require jquery.colorbox
3
3
  //= require jquery.highlight
4
4
  //= require jquery.shortcut
@@ -1,4 +1,4 @@
1
1
  //= require jquery
2
2
  //= require jquery_ujs
3
- //= require jquery.mobile-1.4.2
3
+ //= require jquery.mobile-1.4.3
4
4
  //= require jquery.colorbox
@@ -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.ui.button
9
- *= require jquery.ui.tabs
10
- *= require jquery.ui.menu
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.2
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
@@ -1,5 +1,5 @@
1
1
  class UserImportResultsController < InheritedResources::Base
2
- respond_to :html, :json, :csv
2
+ respond_to :html, :json, :tsv
3
3
  load_and_authorize_resource
4
4
  has_scope :file_id
5
5
  actions :index, :show, :destroy
@@ -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.agent.full_name
14
+ @sender_name = message.sender.username
15
15
  else
16
16
  @sender_name = LibraryGroup.system_name(message.receiver.locale)
17
17
  end
@@ -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 = 2
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
- reload
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 open_import_file
158
- tempfile = Tempfile.new('user_import_file')
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
- if defined?(CharlockHolmes::EncodingDetector)
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
- before_transition(from: :pending, to: :started) do |user_import_file|
13
- user_import_file.executed_at = Time.zone.now
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| -%>
@@ -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>
@@ -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>
@@ -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="http://mwr.mediacom.keio.ac.jp/~tanabe/">Kosuke Tanabe</a> and <a href="http://www.next-l.jp/">Project Next-L</a>.</li>
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 'tanabe@mwr.mediacom.keio.ac.jp', nil, :replace_at => '_at_' -%></li>
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="http://mwr.mediacom.keio.ac.jp/~tanabe/">田辺浩介</a>と<a href="http://www.next-l.jp/">Project Next-L</a>によって開発されています。</li>
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 'tanabe@mwr.mediacom.keio.ac.jp', nil, :replace_at => '_at_' -%></li>
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>