enju_seed 0.2.3 → 0.3.0.beta.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +17 -8
- data/app/assets/config/enju_seed_manifest.js +0 -0
- data/app/controllers/my_accounts_controller.rb +14 -13
- data/app/controllers/profiles_controller.rb +30 -29
- data/app/controllers/roles_controller.rb +2 -1
- data/app/models/concerns/enju_seed/enju_user.rb +22 -26
- data/app/models/concerns/master_model.rb +5 -6
- data/app/models/identity.rb +1 -1
- data/app/models/profile.rb +3 -3
- data/app/models/role.rb +2 -1
- data/app/models/user_has_role.rb +2 -2
- data/app/views/my_accounts/_edit_credential.html.slim +63 -0
- data/app/views/my_accounts/_form.html.slim +20 -0
- data/app/views/my_accounts/_show.html.slim +1 -0
- data/app/views/my_accounts/edit.html.slim +30 -0
- data/app/views/my_accounts/show.html+phone.slim +1 -0
- data/app/views/my_accounts/show.html.slim +57 -0
- data/app/views/profiles/_edit_credential.html.slim +67 -0
- data/app/views/profiles/_edit_profile.html.slim +40 -0
- data/app/views/profiles/_form.html.slim +12 -0
- data/app/views/profiles/_show.html.slim +1 -0
- data/app/views/profiles/edit.html.slim +30 -0
- data/app/views/profiles/index.html.slim +61 -0
- data/app/views/profiles/new.html.slim +65 -0
- data/app/views/profiles/show.html+phone.slim +1 -0
- data/app/views/profiles/show.html.slim +67 -0
- data/app/views/roles/_form.html.slim +16 -0
- data/app/views/roles/edit.html.slim +15 -0
- data/app/views/roles/index.html.slim +27 -0
- data/app/views/roles/new.html.slim +13 -0
- data/app/views/roles/show.html.slim +46 -0
- data/db/migrate/041_create_roles.rb +3 -3
- data/db/migrate/20130221154434_add_additional_attributes_to_user.rb +3 -3
- data/lib/enju_seed.rb +2 -3
- data/lib/enju_seed/engine.rb +1 -2
- data/lib/enju_seed/localized_name.rb +1 -3
- data/lib/enju_seed/version.rb +1 -1
- data/spec/controllers/my_accounts_controller_spec.rb +79 -79
- data/spec/controllers/profiles_controller_spec.rb +210 -210
- data/spec/controllers/roles_controller_spec.rb +47 -47
- data/spec/dummy/app/helpers/application_helper.rb +1 -1
- data/spec/dummy/app/models/user.rb +2 -2
- data/spec/dummy/bin/setup +8 -8
- data/spec/dummy/config/application.rb +2 -18
- data/spec/dummy/config/database.yml +70 -10
- data/spec/dummy/config/environment.rb +1 -1
- data/spec/dummy/config/environments/development.rb +24 -11
- data/spec/dummy/config/environments/production.rb +24 -17
- data/spec/dummy/config/environments/test.rb +6 -6
- data/spec/dummy/config/initializers/assets.rb +1 -1
- data/spec/dummy/config/initializers/friendly_id.rb +75 -75
- data/spec/dummy/db/migrate/001_create_agents.rb +6 -6
- data/spec/dummy/db/migrate/002_devise_create_users.rb +5 -6
- data/spec/dummy/db/migrate/005_create_manifestations.rb +12 -12
- data/spec/dummy/db/migrate/006_create_items.rb +5 -5
- data/spec/dummy/db/migrate/012_create_owns.rb +2 -2
- data/spec/dummy/db/migrate/015_create_creates.rb +2 -2
- data/spec/dummy/db/migrate/032_create_checkins.rb +1 -1
- data/spec/dummy/db/migrate/033_create_checkouts.rb +4 -4
- data/spec/dummy/db/migrate/035_create_reserves.rb +5 -5
- data/spec/dummy/db/migrate/047_create_produces.rb +2 -2
- data/spec/dummy/db/migrate/059_create_libraries.rb +6 -4
- data/spec/dummy/db/migrate/069_create_shelves.rb +2 -1
- data/spec/dummy/db/migrate/073_create_carrier_types.rb +1 -1
- data/spec/dummy/db/migrate/077_create_user_groups.rb +1 -1
- data/spec/dummy/db/migrate/080_create_library_groups.rb +2 -1
- data/spec/dummy/db/migrate/112_create_frequencies.rb +1 -1
- data/spec/dummy/db/migrate/117_create_form_of_works.rb +1 -1
- data/spec/dummy/db/migrate/120_create_baskets.rb +2 -1
- data/spec/dummy/db/migrate/121_create_checked_items.rb +3 -3
- data/spec/dummy/db/migrate/124_create_bookstores.rb +1 -1
- data/spec/dummy/db/migrate/125_create_donates.rb +2 -2
- data/spec/dummy/db/migrate/127_create_use_restrictions.rb +1 -1
- data/spec/dummy/db/migrate/129_create_item_has_use_restrictions.rb +2 -2
- data/spec/dummy/db/migrate/130_create_request_status_types.rb +1 -1
- data/spec/dummy/db/migrate/131_create_request_types.rb +1 -1
- data/spec/dummy/db/migrate/132_create_circulation_statuses.rb +1 -1
- data/spec/dummy/db/migrate/133_create_agent_merges.rb +1 -1
- data/spec/dummy/db/migrate/149_create_message_templates.rb +5 -5
- data/spec/dummy/db/migrate/154_create_messages.rb +2 -2
- data/spec/dummy/db/migrate/20080830154109_create_realizes.rb +2 -2
- data/spec/dummy/db/migrate/20080830172106_create_exemplifies.rb +13 -0
- data/spec/dummy/db/migrate/20080905191442_create_agent_types.rb +1 -1
- data/spec/dummy/db/migrate/20081006090811_create_subscriptions.rb +5 -2
- data/spec/dummy/db/migrate/20081006093246_create_subscribes.rb +2 -1
- data/spec/dummy/db/migrate/20081023092436_create_search_engines.rb +5 -5
- data/spec/dummy/db/migrate/20081025083323_create_countries.rb +8 -9
- data/spec/dummy/db/migrate/20081025083905_create_languages.rb +5 -6
- data/spec/dummy/db/migrate/20081027150907_create_picture_files.rb +1 -1
- data/spec/dummy/db/migrate/20081030023412_create_checkout_types.rb +1 -1
- data/spec/dummy/db/migrate/20081030023518_create_user_group_has_checkout_types.rb +8 -8
- data/spec/dummy/db/migrate/20081030023615_create_carrier_type_has_checkout_types.rb +3 -3
- data/spec/dummy/db/migrate/20081212075554_create_checkout_stat_has_manifestations.rb +4 -4
- data/spec/dummy/db/migrate/20081215094955_create_checkout_stat_has_users.rb +3 -3
- data/spec/dummy/db/migrate/20081216190517_create_reserve_stat_has_manifestations.rb +3 -3
- data/spec/dummy/db/migrate/20081220034117_create_reserve_stat_has_users.rb +2 -2
- data/spec/dummy/db/migrate/20090720091106_create_medium_of_performances.rb +1 -1
- data/spec/dummy/db/migrate/20090720091429_create_content_types.rb +1 -1
- data/spec/dummy/db/migrate/20090812151902_create_agent_relationship_types.rb +1 -1
- data/spec/dummy/db/migrate/20090831220301_create_lending_policies.rb +6 -6
- data/spec/dummy/db/migrate/20091025080447_create_licenses.rb +1 -1
- data/spec/dummy/db/migrate/20100607044753_create_manifestation_relationship_types.rb +1 -1
- data/spec/dummy/db/migrate/20110222073537_add_url_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20110318183304_add_valid_period_for_new_user_to_user_group.rb +1 -1
- data/spec/dummy/db/migrate/20110627035057_create_series_statement_merges.rb +3 -3
- data/spec/dummy/db/migrate/20110627122938_add_number_of_day_to_notify_overdue_to_user_group.rb +3 -3
- data/spec/dummy/db/migrate/20120125050502_add_depth_to_message.rb +0 -1
- data/spec/dummy/db/migrate/20120125152919_add_title_subseries_transcription_to_series_statement.rb +0 -1
- data/spec/dummy/db/migrate/20120129020544_add_budget_type_id_to_item.rb +0 -1
- data/spec/dummy/db/migrate/20120319120638_add_content_type_id_to_manifestation.rb +1 -2
- data/spec/dummy/db/migrate/20120319173203_create_accepts.rb +6 -3
- data/spec/dummy/db/migrate/20120510140958_add_closed_to_shelf.rb +1 -1
- data/spec/dummy/db/migrate/20130416054135_add_circulation_status_id_to_item.rb +2 -2
- data/spec/dummy/db/migrate/20130506175834_create_identifiers.rb +2 -2
- data/spec/dummy/db/migrate/20130519065638_add_lock_version_to_reserve.rb +1 -1
- data/spec/dummy/db/migrate/20130519065837_add_lock_version_to_checkin.rb +1 -1
- data/spec/dummy/db/migrate/20140518050147_create_reserve_transitions.rb +2 -2
- data/spec/dummy/db/migrate/20140518111006_create_message_transitions.rb +2 -2
- data/spec/dummy/db/migrate/20140518135713_create_message_request_transitions.rb +3 -3
- data/spec/dummy/db/migrate/20140519170214_create_resource_import_file_transitions.rb +4 -4
- data/spec/dummy/db/migrate/20140519171220_create_import_request_transitions.rb +3 -3
- data/spec/dummy/db/migrate/20140524020735_create_agent_import_file_transitions.rb +3 -3
- data/spec/dummy/db/migrate/20140524074813_create_user_import_file_transitions.rb +3 -3
- data/spec/dummy/db/migrate/20140528045518_create_user_checkout_stat_transitions.rb +3 -3
- data/spec/dummy/db/migrate/20140528045539_create_user_reserve_stat_transitions.rb +3 -3
- data/spec/dummy/db/migrate/20140528045600_create_manifestation_checkout_stat_transitions.rb +4 -4
- data/spec/dummy/db/migrate/20140528045617_create_manifestation_reserve_stat_transitions.rb +4 -4
- data/spec/dummy/db/migrate/20140614065404_create_resource_export_files.rb +0 -1
- data/spec/dummy/db/migrate/20140614141500_create_resource_export_file_transitions.rb +4 -4
- data/spec/dummy/db/migrate/20140709113413_create_user_export_files.rb +0 -1
- data/spec/dummy/db/migrate/20140709113905_create_user_export_file_transitions.rb +4 -4
- data/spec/dummy/db/migrate/20140810091231_add_checkout_icalendar_token_to_profile.rb +1 -1
- data/spec/dummy/db/migrate/20140810091417_add_save_checkout_history_to_profile.rb +1 -1
- data/spec/dummy/db/migrate/20140821151023_create_colors.rb +3 -1
- data/spec/dummy/db/migrate/20141029131633_create_periodicals.rb +11 -0
- data/spec/dummy/db/migrate/20150124152756_add_foreign_key_to_shelves_referencing_libraries.rb +6 -0
- data/spec/dummy/db/migrate/20150221063719_add_settings_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20150302110310_add_attachment_id_to_manifestation.rb +7 -0
- data/spec/dummy/db/migrate/20150304183215_add_picture_id_to_picture_file.rb +7 -0
- data/spec/dummy/db/migrate/20150305025906_add_resource_import_id_to_resource_import_file.rb +7 -0
- data/spec/dummy/db/migrate/20150305030046_add_resource_export_id_to_resource_export_file.rb +8 -0
- data/spec/dummy/db/migrate/20150305031709_add_agent_import_id_to_agent_import_file.rb +7 -0
- data/spec/dummy/db/migrate/20150305105231_add_attachment_fingerprint_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20150420145354_add_attachment_to_carrier_type.rb +8 -0
- data/spec/dummy/db/migrate/20150420145420_add_attachment_to_content_type.rb +8 -0
- data/spec/dummy/db/migrate/20150924115059_create_withdraws.rb +5 -3
- data/spec/dummy/db/migrate/20151213070943_add_translation_table_to_library_group.rb +2 -4
- data/spec/dummy/db/migrate/20151213072705_add_footer_banner_to_library_group.rb +2 -19
- data/spec/dummy/db/migrate/20151216123621_create_doi_records.rb +12 -0
- data/spec/dummy/db/migrate/20160319144230_create_issn_records.rb +12 -0
- data/spec/dummy/db/migrate/20160506144040_create_isbn_records.rb +12 -0
- data/spec/dummy/db/migrate/20160513000929_create_agent_names.rb +18 -0
- data/spec/dummy/db/migrate/20160801080612_add_most_recent_to_import_request_transitions.rb +9 -0
- data/spec/dummy/db/migrate/20160801080619_add_most_recent_to_resource_import_file_transitions.rb +9 -0
- data/spec/dummy/db/migrate/20160801080637_add_most_recent_to_resource_export_file_transitions.rb +9 -0
- data/spec/dummy/db/migrate/20160801080643_add_most_recent_to_agent_import_file_transitions.rb +9 -0
- data/spec/dummy/db/migrate/20161111175127_add_attachment_data_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20161111193255_add_attachment_data_to_carrier_type.rb +5 -0
- data/spec/dummy/db/migrate/20161111193346_add_attachment_data_to_content_type.rb +5 -0
- data/spec/dummy/db/migrate/20161112122706_add_attachment_data_to_resource_import_file.rb +5 -0
- data/spec/dummy/db/migrate/20161112122750_add_attachment_data_to_resource_export_file.rb +5 -0
- data/spec/dummy/db/migrate/20161112122814_add_attachment_data_to_agent_import_file.rb +5 -0
- data/spec/dummy/db/schema.rb +1418 -1402
- data/spec/factories/profile.rb +10 -10
- data/spec/factories/user.rb +10 -10
- data/spec/factories/user_group.rb +2 -2
- data/spec/fixtures/library_groups.yml +1 -0
- data/spec/models/profile_spec.rb +20 -19
- data/spec/models/role_spec.rb +7 -7
- data/spec/models/user_has_role_spec.rb +1 -2
- data/spec/models/user_spec.rb +25 -26
- data/spec/rails_helper.rb +7 -6
- data/spec/requests/profiles_spec.rb +3 -3
- data/spec/routing/profiles_routing_spec.rb +16 -18
- data/spec/routing/roles_routing_spec.rb +16 -18
- data/spec/routing/users_spec.rb +6 -7
- data/spec/spec_helper.rb +47 -49
- data/spec/support/controller_macros.rb +9 -9
- data/spec/views/my_accounts/show.html.erb_spec.rb +6 -6
- data/spec/views/profiles/edit.html.erb_spec.rb +7 -7
- data/spec/views/profiles/index.html.erb_spec.rb +3 -3
- data/spec/views/profiles/new.html.erb_spec.rb +5 -6
- data/spec/views/profiles/show.html.erb_spec.rb +3 -3
- metadata +323 -323
- data/app/views/my_accounts/_edit_credential.html.erb +0 -99
- data/app/views/my_accounts/_form.html.erb +0 -24
- data/app/views/my_accounts/_show.html.erb +0 -1
- data/app/views/my_accounts/edit.html.erb +0 -32
- data/app/views/my_accounts/show.html.erb +0 -49
- data/app/views/profiles/_edit_profile.html.erb +0 -42
- data/app/views/profiles/_form.html.erb +0 -15
- data/app/views/profiles/_show.html.erb +0 -1
- data/app/views/profiles/edit.html.erb +0 -33
- data/app/views/profiles/index.html.erb +0 -70
- data/app/views/profiles/new.html.erb +0 -88
- data/app/views/profiles/show.html+phone.erb +0 -1
- data/app/views/profiles/show.html.erb +0 -67
- data/app/views/roles/_form.html.erb +0 -19
- data/app/views/roles/edit.html.erb +0 -13
- data/app/views/roles/index.html.erb +0 -32
- data/app/views/roles/new.html.erb +0 -12
- data/app/views/roles/show.html.erb +0 -46
- data/lib/generators/enju_seed/update/update_generator.rb +0 -9
- data/spec/dummy/db/migrate/20170305064014_add_csv_charset_conversion_to_library_group.rb +0 -5
- data/spec/dummy/db/migrate/20171014084528_add_header_logo_to_library_group.rb +0 -5
- data/spec/dummy/db/migrate/20171126133835_rename_login_banner_to_old_login_banner.rb +0 -5
- data/spec/dummy/db/migrate/20171126135238_add_foreign_key_to_library_group_id_on_library.rb +0 -5
- data/spec/dummy/db/migrate/20180102162311_add_header_logo_meta_to_library_group.rb +0 -5
data/app/models/user_has_role.rb
CHANGED
@@ -3,8 +3,8 @@ class UserHasRole < ActiveRecord::Base
|
|
3
3
|
belongs_to :role
|
4
4
|
accepts_nested_attributes_for :role
|
5
5
|
|
6
|
-
# validates_uniqueness_of :role_id, scope: :user_id
|
7
|
-
# validates_presence_of :role_id, :user_id
|
6
|
+
# validates_uniqueness_of :role_id, scope: :user_id
|
7
|
+
# validates_presence_of :role_id, :user_id
|
8
8
|
end
|
9
9
|
|
10
10
|
# == Schema Information
|
@@ -0,0 +1,63 @@
|
|
1
|
+
= f.fields_for :user do |user_form|
|
2
|
+
#left_pane_detail
|
3
|
+
.form-group
|
4
|
+
= user_form.label :username
|
5
|
+
br
|
6
|
+
= profile.user.username
|
7
|
+
.form-group
|
8
|
+
= user_form.label :email
|
9
|
+
br
|
10
|
+
= user_form.text_field :email, class: 'form-control'
|
11
|
+
.form-group
|
12
|
+
= f.label :expired_at
|
13
|
+
br
|
14
|
+
- if current_user.has_role?('Librarian')
|
15
|
+
= f.text_field :expired_at, value: profile.expired_at.try(:strftime, "%Y-%m-%d"), class: 'form-control', placeholder: "#{t('page.example')}: 2011-04-12"
|
16
|
+
- else
|
17
|
+
= l(profile.expired_at) if profile.expired_at
|
18
|
+
.form-group
|
19
|
+
.checkbox-inline
|
20
|
+
= user_form.check_box :locked, disabled: 'disabled'
|
21
|
+
= user_form.label :locked
|
22
|
+
.form-group
|
23
|
+
= user_form.label t('activerecord.models.role')
|
24
|
+
br
|
25
|
+
= user_form.fields_for :user_has_role do |u|
|
26
|
+
- if current_user.has_role?('Administrator') and current_user != profile.user
|
27
|
+
= u.select(:role_id, @roles.collect{|r| [r.display_name.localize, r.id]}, {}, {class: 'form-control'})
|
28
|
+
- else
|
29
|
+
= u.select(:role_id, @roles.collect{|r| [r.display_name.localize, r.id]}, {}, {disabled: 'disabled', class: 'form-control'})
|
30
|
+
#right_pane_detail
|
31
|
+
.form-group
|
32
|
+
= f.label :full_name
|
33
|
+
br
|
34
|
+
= f.text_field :full_name, class: 'form-control'
|
35
|
+
.form-group
|
36
|
+
= f.label :full_name_transcription
|
37
|
+
br
|
38
|
+
= f.text_field :full_name_transcription, class: 'form-control'
|
39
|
+
- if current_user.has_role?('Librarian')
|
40
|
+
.form-group
|
41
|
+
= f.label t('activerecord.models.user_group')
|
42
|
+
br
|
43
|
+
= f.select(:user_group_id, @user_groups.collect{|u| [u.display_name.localize, u.id]}, {}, {class: 'form-control'})
|
44
|
+
.form-group
|
45
|
+
= f.label :user_number
|
46
|
+
br
|
47
|
+
- if current_user.has_role?('Librarian')
|
48
|
+
= f.text_field :user_number, class: 'form-control'
|
49
|
+
- else
|
50
|
+
= profile.user_number
|
51
|
+
- if current_user.has_role?('Librarian')
|
52
|
+
.form-group
|
53
|
+
= f.label t('activerecord.models.library')
|
54
|
+
br
|
55
|
+
= f.select(:library_id, @libraries.collect{|l| [l.display_name.localize, l.id]}, {}, {class: 'form-control'})
|
56
|
+
.form-group
|
57
|
+
= f.label t('role.required_role')
|
58
|
+
br
|
59
|
+
= f.select(:required_role_id, @roles.collect{|r| [r.display_name.localize, r.id]}, {}, {class: 'form-control'})
|
60
|
+
.form-group
|
61
|
+
= f.label :locale
|
62
|
+
br
|
63
|
+
= f.select(:locale, @available_languages.collect{|language| [language.display_name.localize, language.iso_639_1]}, {}, {class: 'form-control'})
|
@@ -0,0 +1,20 @@
|
|
1
|
+
= form_for(@user) do |f|
|
2
|
+
- if @user.errors.any?
|
3
|
+
#errorExplanation
|
4
|
+
h2
|
5
|
+
= pluralize(@user.errors.count, "error")
|
6
|
+
| prohibited this user from being saved:
|
7
|
+
ul
|
8
|
+
- @user.errors.full_messages.each do |msg|
|
9
|
+
li
|
10
|
+
= msg
|
11
|
+
.form-group
|
12
|
+
= f.label :username
|
13
|
+
br
|
14
|
+
= f.text_field :username
|
15
|
+
.form-group
|
16
|
+
= f.label :email
|
17
|
+
br
|
18
|
+
= f.email_field :email
|
19
|
+
.form-control
|
20
|
+
= f.submit class: 'btn btn-default'
|
@@ -0,0 +1 @@
|
|
1
|
+
= render 'page/index'
|
@@ -0,0 +1,30 @@
|
|
1
|
+
.row
|
2
|
+
#submenu.col-md-3
|
3
|
+
.panel.panel-default
|
4
|
+
.panel-heading
|
5
|
+
h2.panel-title
|
6
|
+
= t('activerecord.models.profile')
|
7
|
+
ul.list-group
|
8
|
+
li.list-group-item
|
9
|
+
= link_to t('page.show'), my_account_path
|
10
|
+
- if current_user.has_role?('Librarian')
|
11
|
+
li.list-group-item
|
12
|
+
= link_to t('page.listing', model: t('activerecord.models.user')), profiles_path
|
13
|
+
.col-md-9
|
14
|
+
.panel.panel-default
|
15
|
+
.panel-heading
|
16
|
+
h1.panel-title
|
17
|
+
= t('page.edit_user_profile', login_name: @profile.user.username)
|
18
|
+
.panel-body
|
19
|
+
= render 'page/required_field'
|
20
|
+
= simple_form_for(@profile, url: my_account_path) do |f|
|
21
|
+
.form-group
|
22
|
+
= f.error_messages
|
23
|
+
= render partial: 'edit_credential', locals: {f: f, profile: @profile}
|
24
|
+
.actions[style="clear: both"]
|
25
|
+
= f.submit class: 'btn btn-default'
|
26
|
+
.form-group
|
27
|
+
= f.label :keyword_list
|
28
|
+
br
|
29
|
+
= f.text_area :keyword_list, class: 'form-control'
|
30
|
+
= render partial: 'profiles/edit_profile', locals: {f: f, profile: @profile}
|
@@ -0,0 +1 @@
|
|
1
|
+
= render 'page/index'
|
@@ -0,0 +1,57 @@
|
|
1
|
+
.row
|
2
|
+
.col-md-3
|
3
|
+
.panel.panel-default
|
4
|
+
.panel-heading
|
5
|
+
h2.panel-title
|
6
|
+
= t('activerecord.models.profile')
|
7
|
+
- if defined?(EnjuCirculation)
|
8
|
+
ul.list-group
|
9
|
+
- current_user.profile.user_group.user_group_has_checkout_types.each do |available_checkout_type|
|
10
|
+
li.list-group-item
|
11
|
+
= available_checkout_type.checkout_type.display_name.localize
|
12
|
+
| :
|
13
|
+
= current_user.checked_item_count[:"#{available_checkout_type.checkout_type.name}"]
|
14
|
+
| /
|
15
|
+
= available_checkout_type.checkout_limit
|
16
|
+
ul.list-group
|
17
|
+
li.list-group-item
|
18
|
+
= link_to t('page.edit'), edit_my_account_path
|
19
|
+
li.list-group-item
|
20
|
+
= link_to t('page.password'), edit_user_registration_path
|
21
|
+
- if policy(current_user.profile).destroy?
|
22
|
+
li.list-group-item
|
23
|
+
= link_to t('page.destroy'), current_user.profile, data: {confirm: t('page.are_you_sure')}, method: :delete
|
24
|
+
- if defined?(EnjuSearchLog)
|
25
|
+
li.list-group-item
|
26
|
+
= link_to t('activerecord.models.search_history'), search_histories_path
|
27
|
+
- if defined?(EnjuCirculation)
|
28
|
+
li.list-group-item
|
29
|
+
= link_to t('activerecord.models.checkout'), checkouts_path
|
30
|
+
li.list-group-item
|
31
|
+
= link_to t('activerecord.models.reserve'), reserves_path
|
32
|
+
- if defined?(EnjuQuestion)
|
33
|
+
li.list-group-item
|
34
|
+
= link_to t('activerecord.models.question'), user_questions_path(current_user)
|
35
|
+
- if defined?(EnjuBookmark)
|
36
|
+
li.list-group-item
|
37
|
+
= link_to t('activerecord.models.bookmark'), bookmarks_path
|
38
|
+
- if defined?(EnjuPurchaseRequest)
|
39
|
+
li.list-group-item
|
40
|
+
= link_to t('activerecord.models.purchase_request'), purchase_requests_path
|
41
|
+
.col-md-9
|
42
|
+
.panel.panel-default
|
43
|
+
.panel-heading
|
44
|
+
h1.panel-title
|
45
|
+
= t('page.showing', model: t('activerecord.models.user'))
|
46
|
+
.panel-body
|
47
|
+
p#notice
|
48
|
+
= notice
|
49
|
+
h2.resource_title
|
50
|
+
| [U]
|
51
|
+
= current_user.username
|
52
|
+
p
|
53
|
+
= t('activerecord.attributes.profile.user_number')
|
54
|
+
| :
|
55
|
+
= current_user.profile.user_number
|
56
|
+
- if defined?(EnjuCirculation)
|
57
|
+
= render 'profiles/checkout_list', profile: current_user.profile
|
@@ -0,0 +1,67 @@
|
|
1
|
+
= f.fields_for :user do |user_form|
|
2
|
+
#left_pane_detail
|
3
|
+
.form-group
|
4
|
+
= user_form.label :username
|
5
|
+
br
|
6
|
+
= profile.user.username
|
7
|
+
.form-group
|
8
|
+
= user_form.label :email
|
9
|
+
br
|
10
|
+
= user_form.email_field :email, class: 'form-control'
|
11
|
+
.form-group
|
12
|
+
.checkbox-inline
|
13
|
+
= user_form.check_box :auto_generated_password
|
14
|
+
= user_form.label :auto_generated_password
|
15
|
+
.form-group
|
16
|
+
= f.label :expired_at
|
17
|
+
br
|
18
|
+
- if current_user.has_role?('Librarian')
|
19
|
+
= f.text_field :expired_at, value: profile.expired_at.try(:strftime, "%Y-%m-%d"), class: 'form-control', placeholder: "#{t('page.example')}: 2011-04-12"
|
20
|
+
- else
|
21
|
+
= l(profile.expired_at) if profile.expired_at
|
22
|
+
.form-group
|
23
|
+
.checkbox-inline
|
24
|
+
= user_form.check_box :locked
|
25
|
+
= user_form.label :locked
|
26
|
+
.form-group
|
27
|
+
= user_form.label t('activerecord.models.role')
|
28
|
+
br
|
29
|
+
= user_form.fields_for :user_has_role do |u|
|
30
|
+
- if current_user.has_role?('Administrator') and current_user != profile.user
|
31
|
+
= u.select(:role_id, @roles.collect{|r| [r.display_name.localize, r.id]}, {}, {class: 'form-control', disabled: 'disabled'})
|
32
|
+
- else
|
33
|
+
= u.select(:role_id, @roles.collect{|r| [r.display_name.localize, r.id]}, {}, {class: 'form-control', disabled: 'disabled'})
|
34
|
+
#right_pane_detail
|
35
|
+
.form-group
|
36
|
+
= f.label :full_name
|
37
|
+
br
|
38
|
+
= f.text_field :full_name, class: 'form-control'
|
39
|
+
.form-group
|
40
|
+
= f.label :full_name_transcription
|
41
|
+
br
|
42
|
+
= f.text_field :full_name_transcription, class: 'form-control'
|
43
|
+
- if current_user.has_role?('Librarian')
|
44
|
+
.form-group
|
45
|
+
= f.label t('activerecord.models.user_group')
|
46
|
+
br
|
47
|
+
= f.select(:user_group_id, @user_groups.collect{|u| [u.display_name.localize, u.id]}, {}, {class: 'form-control'})
|
48
|
+
.form-group
|
49
|
+
= f.label :user_number
|
50
|
+
br
|
51
|
+
- if current_user.has_role?('Librarian')
|
52
|
+
= f.text_field :user_number, class: 'form-control'
|
53
|
+
- else
|
54
|
+
= profile.user_number
|
55
|
+
- if current_user.has_role?('Librarian')
|
56
|
+
.form-group
|
57
|
+
= f.label t('activerecord.models.library')
|
58
|
+
br
|
59
|
+
= f.select(:library_id, @libraries.collect{|l| [l.display_name.localize, l.id]}, {}, {class: 'form-control'})
|
60
|
+
.form-group
|
61
|
+
= f.label t('role.required_role')
|
62
|
+
br
|
63
|
+
= f.select(:required_role_id, @roles.collect{|r| [r.display_name.localize, r.id]}, {}, {class: 'form-control'})
|
64
|
+
.form-group
|
65
|
+
= f.label :locale
|
66
|
+
br
|
67
|
+
= f.select(:locale, @available_languages.collect{|language| [language.display_name.localize, language.iso_639_1]}, {}, {class: 'form-control'})
|
@@ -0,0 +1,40 @@
|
|
1
|
+
- if defined?(EnjuCirculation)
|
2
|
+
.form-group
|
3
|
+
= f.label t('user.checkout_history_icalendar_url')
|
4
|
+
br
|
5
|
+
#feed_token
|
6
|
+
- if profile.checkout_icalendar_token?
|
7
|
+
= link_to checkouts_url(icalendar_token: profile.checkout_icalendar_token, format: :ics), checkouts_url(icalendar_token: profile.checkout_icalendar_token, format: :ics)
|
8
|
+
= f.hidden_field :checkout_icalendar_token
|
9
|
+
br
|
10
|
+
| <input onclick="$.ajax({data:'authenticity_token=' + encodeURIComponent('
|
11
|
+
= form_authenticity_token
|
12
|
+
| '), success:function(request){$('#feed_token').html(request);}, type:'get', url:'
|
13
|
+
= edit_profile_path(profile, mode: 'feed_token')
|
14
|
+
| '});" type="button" value="
|
15
|
+
= t('page.reset')
|
16
|
+
| " /> <input onclick="$.ajax({data:'authenticity_token=' + encodeURIComponent('
|
17
|
+
= form_authenticity_token
|
18
|
+
| '), success:function(request){$('#feed_token').html(request);}, type:'get', url:'
|
19
|
+
= edit_profile_path(profile, disable: true, mode: 'feed_token')
|
20
|
+
| '});" type="button" value="
|
21
|
+
= t('page.delete')
|
22
|
+
| " />
|
23
|
+
br
|
24
|
+
- if defined?(EnjuSearchLog)
|
25
|
+
.form-group
|
26
|
+
.checkbox-inline
|
27
|
+
= f.check_box :save_search_history
|
28
|
+
= f.label :save_search_history
|
29
|
+
- if defined?(EnjuCirculation)
|
30
|
+
.form-group
|
31
|
+
.checkbox-inline
|
32
|
+
= f.check_box :save_checkout_history
|
33
|
+
= f.label :save_checkout_history
|
34
|
+
- if current_user.has_role?('Librarian')
|
35
|
+
.form-group
|
36
|
+
= f.label :note
|
37
|
+
br
|
38
|
+
= f.text_area :note, class: 'form-control'
|
39
|
+
.form-group
|
40
|
+
= f.submit class: 'btn btn-default'
|
@@ -0,0 +1 @@
|
|
1
|
+
= render 'page/index'
|
@@ -0,0 +1,30 @@
|
|
1
|
+
.row
|
2
|
+
#submenu.col-md-3
|
3
|
+
.panel.panel-default
|
4
|
+
.panel-heading
|
5
|
+
.panel-body
|
6
|
+
ul
|
7
|
+
li
|
8
|
+
= link_to t('page.show'), @profile
|
9
|
+
li
|
10
|
+
= link_to t('page.listing', model: t('activerecord.models.profile')), profiles_path
|
11
|
+
- if policy(@profile).destroy?
|
12
|
+
li
|
13
|
+
= link_to t('page.destroy'), @profile, data: {confirm: t('page.are_you_sure')}, method: :delete
|
14
|
+
#content_list.col-md-9
|
15
|
+
.panel.panel-default
|
16
|
+
.panel-heading
|
17
|
+
h1.panel-title
|
18
|
+
= t('page.edit_user_profile', login_name: @profile.full_name)
|
19
|
+
.panel-body
|
20
|
+
= render 'page/required_field'
|
21
|
+
= simple_form_for(@profile, validate: true) do |f|
|
22
|
+
= f.error_messages
|
23
|
+
= render partial: 'profiles/edit_credential', locals: {f: f, profile: @profile}
|
24
|
+
.actions[style="clear: both"]
|
25
|
+
= f.submit
|
26
|
+
.field
|
27
|
+
= f.label :keyword_list
|
28
|
+
br
|
29
|
+
= f.text_area :keyword_list, class: 'resource_textarea'
|
30
|
+
= render partial: 'profiles/edit_profile', locals: {f: f, profile: @profile}
|
@@ -0,0 +1,61 @@
|
|
1
|
+
.row
|
2
|
+
#submenu.col-md-3
|
3
|
+
.panel.panel-default
|
4
|
+
.panel-heading
|
5
|
+
.panel-body
|
6
|
+
ul
|
7
|
+
- if current_user.try(:has_role?, 'Librarian')
|
8
|
+
li
|
9
|
+
= link_to t('page.new', model: t('activerecord.models.profile')), new_profile_path
|
10
|
+
li
|
11
|
+
= link_to t('page.new', model: t('activerecord.models.user_import_file')), new_user_import_file_path
|
12
|
+
li
|
13
|
+
= link_to t('page.listing', model: t('activerecord.models.user_import_file')), user_import_files_path
|
14
|
+
- if current_user.has_role?('Administrator')
|
15
|
+
li
|
16
|
+
= link_to t('activerecord.models.user_export_file'), user_export_files_path
|
17
|
+
#content_list.col-md-9
|
18
|
+
.panel.panel-default
|
19
|
+
.panel-heading
|
20
|
+
h1.panel-title
|
21
|
+
= t('page.listing', model: t('activerecord.models.profile'))
|
22
|
+
.panel-body
|
23
|
+
p#notice
|
24
|
+
= notice
|
25
|
+
.search_form
|
26
|
+
= form_for :profiles, url: profiles_path, html: {method: 'get'} do
|
27
|
+
p
|
28
|
+
= label_tag :query, t('page.search_term')
|
29
|
+
| :
|
30
|
+
= search_field_tag 'query', h(@query), class: 'search_form', placeholder: t('page.search_term')
|
31
|
+
= submit_tag t('page.search')
|
32
|
+
table.table.table-striped.index
|
33
|
+
tr
|
34
|
+
th
|
35
|
+
= t('activerecord.attributes.profile.user_number')
|
36
|
+
th
|
37
|
+
= t('activerecord.attributes.user.username')
|
38
|
+
= link_to image_tag('icons/arrow_up.png', size: '16x16', alt: t('page.asc')), url_for(params.permit.merge(sort_by: 'username', order: 'asc', only_path: true))
|
39
|
+
= link_to image_tag('icons/arrow_down.png', size: '16x16', alt: t('page.desc')), url_for(params.permit.merge(sort_by: 'username', order: 'desc', only_path: true))
|
40
|
+
th
|
41
|
+
= t('page.created_at')
|
42
|
+
= link_to image_tag('icons/arrow_up.png', size: '16x16', alt: t('page.asc')), url_for(params.permit.merge(sort_by: 'created_at', order: 'asc', only_path: true))
|
43
|
+
= link_to image_tag('icons/arrow_down.png', size: '16x16', alt: t('page.desc')), url_for(params.permit.merge(sort_by: 'created_at', order: 'desc', only_path: true))
|
44
|
+
th[style="width: 80px"]
|
45
|
+
- @profiles.each_with_index do |profile, i|
|
46
|
+
tr
|
47
|
+
td
|
48
|
+
- if profile.user_number?
|
49
|
+
= link_to profile.user_number, profile
|
50
|
+
- else
|
51
|
+
= link_to t('profile.no_number'), profile
|
52
|
+
td
|
53
|
+
= profile.user.try(:username)
|
54
|
+
br
|
55
|
+
= profile.full_name
|
56
|
+
td
|
57
|
+
= l(profile.created_at)
|
58
|
+
td
|
59
|
+
=> link_to t('page.show'), profile
|
60
|
+
= link_to t('page.edit'), edit_profile_path(profile) if policy(profile).update?
|
61
|
+
= paginate(@profiles)
|
@@ -0,0 +1,65 @@
|
|
1
|
+
.row
|
2
|
+
.col-md-3
|
3
|
+
.panel.panel-default
|
4
|
+
.panel-heading
|
5
|
+
h2.panel-title
|
6
|
+
= t('activerecord.models.profile')
|
7
|
+
ul
|
8
|
+
li
|
9
|
+
= link_to t('page.listing', model: t('activerecord.models.profile')), profiles_path
|
10
|
+
li
|
11
|
+
= link_to t('page.import'), new_user_import_file_path
|
12
|
+
.col-md-9
|
13
|
+
.panel.panel-default
|
14
|
+
.panel-heading
|
15
|
+
h1.panel-title
|
16
|
+
= t('page.new', model: t('activerecord.models.profile'))
|
17
|
+
.panel-body
|
18
|
+
= render 'page/required_field'
|
19
|
+
= simple_form_for(@profile, validate: true) do |f|
|
20
|
+
= f.error_messages
|
21
|
+
= f.fields_for :user do |user_form|
|
22
|
+
.form-group
|
23
|
+
= user_form.label :username
|
24
|
+
= user_form.text_field :username, class: 'form-control'
|
25
|
+
.form-group
|
26
|
+
= user_form.label :email
|
27
|
+
= user_form.email_field :email, class: 'form-control'
|
28
|
+
.form-group
|
29
|
+
= f.label :expired_at
|
30
|
+
= f.text_field :expired_at, class: 'form-control', placeholder: "#{t('page.example')}: 2011-04-12"
|
31
|
+
.form-group
|
32
|
+
= f.label :full_name
|
33
|
+
br
|
34
|
+
= f.text_field :full_name, class: 'form-control'
|
35
|
+
.form-group
|
36
|
+
= f.label :full_name_transcription
|
37
|
+
br
|
38
|
+
= f.text_field :full_name_transcription, class: 'form-control'
|
39
|
+
.form-group
|
40
|
+
= f.label :user_group_id
|
41
|
+
= f.select(:user_group_id, @user_groups.collect{|u| [u.display_name.localize, u.id]})
|
42
|
+
.form-group
|
43
|
+
= f.label t('activerecord.models.library')
|
44
|
+
= f.select(:library_id, @libraries.collect{|l| [l.display_name.localize, l.id]})
|
45
|
+
.form-group
|
46
|
+
= f.label :locale
|
47
|
+
= f.select(:locale, @available_languages.collect{|language| [language.display_name.localize, language.iso_639_1]})
|
48
|
+
- if defined?(EnjuSearchLog)
|
49
|
+
.form-group
|
50
|
+
= f.label :save_search_history
|
51
|
+
= f.check_box :save_search_history
|
52
|
+
- if defined?(EnjuCirculation)
|
53
|
+
.form-group
|
54
|
+
= f.label :save_checkout_history
|
55
|
+
= f.check_box :save_checkout_history
|
56
|
+
- if current_user.has_role?('Librarian')
|
57
|
+
.form-group
|
58
|
+
= f.label :note
|
59
|
+
br
|
60
|
+
= f.text_area :note, class: 'form-control'
|
61
|
+
.form-group
|
62
|
+
= f.label :user_number
|
63
|
+
= f.text_field :user_number, class: 'form-control'
|
64
|
+
.form-gruop
|
65
|
+
= f.submit t('user.sign_up'), class: 'btn btn-default'
|