radiant-reader-extension 1.3.13 → 2.0.0.rc4
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +2 -2
- data/Rakefile +0 -19
- data/app/controllers/admin/group_invitations_controller.rb +78 -0
- data/app/controllers/admin/groups_controller.rb +8 -0
- data/app/controllers/admin/memberships_controller.rb +42 -0
- data/app/controllers/admin/messages_controller.rb +8 -3
- data/app/controllers/admin/permissions_controller.rb +42 -0
- data/app/controllers/admin/reader_configuration_controller.rb +0 -1
- data/app/controllers/admin/readers_controller.rb +1 -1
- data/app/controllers/password_resets_controller.rb +5 -5
- data/app/controllers/reader_action_controller.rb +13 -33
- data/app/controllers/reader_activations_controller.rb +4 -8
- data/app/controllers/reader_sessions_controller.rb +15 -26
- data/app/controllers/readers_controller.rb +26 -9
- data/app/helpers/reader_helper.rb +45 -17
- data/app/models/group.rb +80 -0
- data/app/models/membership.rb +13 -0
- data/app/models/message.rb +10 -7
- data/app/models/permission.rb +11 -0
- data/app/models/reader.rb +79 -35
- data/app/models/reader_notifier.rb +1 -0
- data/app/views/admin/group_invitations/new.html.haml +31 -0
- data/app/views/admin/group_invitations/preview.html.haml +58 -0
- data/app/views/admin/groups/_add_readers.html.haml +0 -0
- data/app/views/admin/groups/_form.html.haml +26 -0
- data/app/views/admin/groups/_list_head.html.haml +12 -0
- data/app/views/admin/groups/edit.html.haml +9 -0
- data/app/views/admin/groups/index.html.haml +44 -0
- data/app/views/admin/groups/new.html.haml +7 -0
- data/app/views/admin/groups/remove.html.haml +31 -0
- data/app/views/admin/groups/show.html.haml +74 -0
- data/app/views/admin/memberships/_reader.html.haml +9 -0
- data/app/views/admin/messages/_function.haml +31 -0
- data/app/views/admin/messages/_list_function.haml +7 -3
- data/app/views/admin/messages/_list_notes.html.haml +9 -0
- data/app/views/admin/messages/_message_description.html.haml +5 -1
- data/app/views/admin/messages/_message_group.html.haml +5 -0
- data/app/views/admin/messages/index.haml +4 -4
- data/app/views/admin/messages/show.html.haml +15 -15
- data/app/views/admin/pages/_listed.html.haml +16 -0
- data/app/views/admin/pages/_page_groups.html.haml +13 -0
- data/app/views/admin/permissions/_page.html.haml +24 -0
- data/app/views/admin/reader_configuration/edit.html.haml +3 -1
- data/app/views/admin/reader_configuration/show.html.haml +4 -2
- data/app/views/admin/readers/_form.html.haml +7 -7
- data/app/views/admin/readers/_password_fields.html.haml +6 -6
- data/app/views/admin/readers/_reader_groups.html.haml +7 -0
- data/app/views/admin/readers/edit.html.haml +2 -1
- data/app/views/admin/readers/index.html.haml +5 -2
- data/app/views/password_resets/create.html.haml +13 -8
- data/app/views/password_resets/edit.html.haml +26 -26
- data/app/views/password_resets/new.html.haml +28 -25
- data/app/views/reader_activations/_activation_required.haml +2 -2
- data/app/views/reader_activations/show.html.haml +11 -13
- data/app/views/reader_sessions/_login_form.html.haml +13 -12
- data/app/views/reader_sessions/new.html.haml +6 -8
- data/app/views/readers/_controls.html.haml +11 -9
- data/app/views/readers/_form.html.haml +32 -33
- data/app/views/readers/_memberships.html.haml +11 -0
- data/app/views/readers/edit.html.haml +11 -11
- data/app/views/readers/index.html.haml +9 -10
- data/app/views/readers/login.html.haml +10 -12
- data/app/views/readers/new.html.haml +11 -13
- data/app/views/readers/permission_denied.html.haml +7 -7
- data/app/views/readers/show.html.haml +7 -8
- data/app/views/shared/_standard_reader_parts.html.haml +14 -0
- data/app/views/site/not_allowed.html.haml +4 -0
- data/config/initializers/authlogic_connect_config.rb +12 -0
- data/config/initializers/radiant_config.rb +1 -0
- data/config/locales/en.yml +217 -177
- data/config/routes.rb +5 -0
- data/db/migrate/20090921125654_group_messages.rb +35 -0
- data/db/migrate/20091120083119_groups_public.rb +11 -0
- data/db/migrate/20110214101339_multiple_ownership.rb +13 -0
- data/lib/controller_extensions.rb +1 -1
- data/lib/group_tags.rb +65 -0
- data/lib/grouped_model.rb +125 -0
- data/lib/grouped_page.rb +39 -0
- data/lib/message_tags.rb +183 -0
- data/lib/radiant-reader-extension.rb +8 -0
- data/lib/reader_admin_ui.rb +29 -6
- data/lib/reader_tags.rb +7 -183
- data/lib/sanitize/config/generous.rb +49 -0
- data/lib/site_controller_extensions.rb +35 -0
- data/public/javascripts/reader.js +1 -1
- data/public/stylesheets/sass/reader.sass +18 -8
- data/radiant-reader-extension.gemspec +30 -176
- data/reader_extension.rb +31 -23
- data/spec/controllers/admin/messages_controller_spec.rb +1 -1
- data/spec/controllers/admin/readers_controller_spec.rb +0 -1
- data/spec/controllers/password_resets_controller_spec.rb +1 -1
- data/spec/controllers/reader_activations_controller_spec.rb +1 -1
- data/spec/controllers/readers_controller_spec.rb +67 -40
- data/spec/controllers/site_controller_spec.rb +63 -0
- data/spec/datasets/readers_dataset.rb +100 -11
- data/spec/models/group_spec.rb +46 -0
- data/spec/models/message_spec.rb +40 -15
- data/spec/models/page_spec.rb +81 -0
- data/spec/models/reader_notifier_spec.rb +1 -1
- data/spec/models/reader_spec.rb +17 -12
- metadata +99 -67
- data/.gitignore +0 -2
- data/VERSION +0 -1
- data/app/views/readers/_standard_parts.html.haml +0 -23
- data/spec/datasets/messages_dataset.rb +0 -49
- data/spec/datasets/reader_layouts_dataset.rb +0 -26
- data/spec/datasets/reader_sites_dataset.rb +0 -10
@@ -0,0 +1,31 @@
|
|
1
|
+
- include_stylesheet('admin/group')
|
2
|
+
%h1 Remove Group
|
3
|
+
|
4
|
+
%p
|
5
|
+
Are you sure you want to
|
6
|
+
%strong.warning
|
7
|
+
remove permanently
|
8
|
+
the group
|
9
|
+
= h @group.name
|
10
|
+
?
|
11
|
+
|
12
|
+
%p
|
13
|
+
The group has
|
14
|
+
= @group.readers.count
|
15
|
+
= pluralize(@group.readers.count, 'member')
|
16
|
+
and
|
17
|
+
= @group.pages.count
|
18
|
+
= pluralize(@group.pages.count, 'page')
|
19
|
+
\. The pages and readers will not be deleted - just dissociated from one another - and removing the group association from those pages may make them visible to everyone.
|
20
|
+
|
21
|
+
%table#groups.index{:cellspacing=>"0", :border=>"0", :cellpadding=>"0"}
|
22
|
+
%thead
|
23
|
+
= render :partial => 'list_head'
|
24
|
+
%tbody
|
25
|
+
= render :partial => 'listed', :locals => {:group => @group}
|
26
|
+
|
27
|
+
- form_for [:admin, @group], :html => { :method => 'delete' } do
|
28
|
+
%p.buttons
|
29
|
+
%input.button{:type=>"submit", :value=>"Delete Group"}/
|
30
|
+
or
|
31
|
+
= link_to 'Cancel', admin_groups_url
|
@@ -0,0 +1,74 @@
|
|
1
|
+
- include_stylesheet 'admin/reader_group'
|
2
|
+
- body_classes << "reversed"
|
3
|
+
|
4
|
+
- render_region :header do |header|
|
5
|
+
- header.title do
|
6
|
+
%h1
|
7
|
+
= t('reader_extension.group').titlecase + ":"
|
8
|
+
= @group.name
|
9
|
+
|
10
|
+
- render_region :main do |main|
|
11
|
+
- main.messages do
|
12
|
+
#group_messages.box
|
13
|
+
.actions
|
14
|
+
= link_to image('plus') + ' ' + t("reader_extension.create_new_message"), new_admin_group_message_url(@group), :class => 'action create'
|
15
|
+
%h3
|
16
|
+
=t('reader_extension.admin_messages').titlecase
|
17
|
+
- ['welcome', 'invitation'].each do |func|
|
18
|
+
- message = Message.functional(func, @group)
|
19
|
+
%p.ruled
|
20
|
+
%label
|
21
|
+
= t("reader_extension.#{func}_message")
|
22
|
+
- if message
|
23
|
+
%strong
|
24
|
+
= link_to message.subject, admin_message_url(message)
|
25
|
+
- else
|
26
|
+
= link_to image('plus') + ' ' + t("reader_extension.create_#{func}"), new_admin_group_message_url(@group, :function => func), :class => 'action create'
|
27
|
+
%h4
|
28
|
+
=t('reader_extension.other_messages').titlecase
|
29
|
+
- @group.messages.ordinary.each do |message|
|
30
|
+
%p.ruled
|
31
|
+
= link_to message.subject, admin_message_url(message)
|
32
|
+
%span.sent
|
33
|
+
- if message.sent_at
|
34
|
+
= t('reader_extension.last_sent')
|
35
|
+
= l(message.sent_at, :format => :short)
|
36
|
+
|
37
|
+
- main.pages do
|
38
|
+
#group_pages.box
|
39
|
+
%h3
|
40
|
+
=t('reader_extension.private_pages').titlecase
|
41
|
+
%ul
|
42
|
+
- page = Page.respond_to?(:homepage) ? Page.homepage : Page.find_by_parent_id(nil)
|
43
|
+
%div{:id => "page_holder_#{page.id}"}
|
44
|
+
= render :partial => 'admin/permissions/page', :object => page
|
45
|
+
|
46
|
+
- main.members do
|
47
|
+
#group_people.box
|
48
|
+
.actions
|
49
|
+
= link_to image('plus') + ' ' + t('reader_extension.add_members'), new_admin_group_group_invitation_url(@group), :class => 'action'
|
50
|
+
%h3
|
51
|
+
=t('reader_extension.group_members').titlecase
|
52
|
+
- readers = Reader.find(:all)
|
53
|
+
- total = readers.count
|
54
|
+
- column_length = (readers.count-1) / 2
|
55
|
+
- columns = [readers[0..column_length], readers[column_length+1..readers.count]]
|
56
|
+
- columns.each do |column|
|
57
|
+
%ul.column
|
58
|
+
- column.each do |reader|
|
59
|
+
%div{:id => "reader_holder_#{reader.id}"}
|
60
|
+
= render :partial => 'admin/memberships/reader', :object => reader
|
61
|
+
|
62
|
+
- render_region :footer do |footer|
|
63
|
+
- footer.notes do
|
64
|
+
#footnotes
|
65
|
+
%p
|
66
|
+
= t('reader_extension.private_page_explanation')
|
67
|
+
|
68
|
+
- footer.javascript do
|
69
|
+
:javascript
|
70
|
+
var h1 = $('group_pages').getHeight();
|
71
|
+
var h2 = $('group_people').getHeight();
|
72
|
+
var h = (h1 > h2) ? h1 : h2
|
73
|
+
$('group_people').setStyle({'height': h + 'px'});
|
74
|
+
$('group_pages').setStyle({'height': h + 'px'});
|
@@ -0,0 +1,9 @@
|
|
1
|
+
- reader ||= @reader
|
2
|
+
- group ||= @group
|
3
|
+
|
4
|
+
- if membership = group.membership_for(reader)
|
5
|
+
%li{:class => "fake_checkbox checked", :id => "reader_#{reader.id}"}
|
6
|
+
= link_to_remote reader.name, :url => admin_group_membership_url(group, membership), :method => 'delete', :loading => "$('reader_#{reader.id}').addClassName('waiting')", :update => "reader_holder_#{reader.id}"
|
7
|
+
- else
|
8
|
+
%li{:class => "fake_checkbox unchecked", :id => "reader_#{reader.id}"}
|
9
|
+
= link_to_remote reader.name, :url => admin_group_memberships_url(group, :reader_id => reader.id), :loading => "$('reader_#{reader.id}').addClassName('waiting')", :update => "reader_holder_#{reader.id}"
|
@@ -0,0 +1,31 @@
|
|
1
|
+
- if @message.administrative?
|
2
|
+
%p
|
3
|
+
- if @message.group
|
4
|
+
= t("reader_extension.group_#{@message.function}")
|
5
|
+
= t("reader_extension.sent_to_group")
|
6
|
+
- elsif @message.groups.any?
|
7
|
+
= t("reader_extension.group_#{@message.function}")
|
8
|
+
= t("reader_extension.sent_to_these_groups")
|
9
|
+
%ul
|
10
|
+
- @message.groups.each do |group|
|
11
|
+
%li= link_to group.name, admin_group_url(group)
|
12
|
+
- else
|
13
|
+
= t("reader_extension.#{@message.function}_sent_automatically")
|
14
|
+
%ul
|
15
|
+
%li
|
16
|
+
= link_to t('reader_extension.edit_message').titlecase, edit_admin_message_url(@message)
|
17
|
+
%li
|
18
|
+
- if @message.group
|
19
|
+
= link_to @message.group.name + ' ' + t('reader_extension.group_page'), admin_group_url(@message.group)
|
20
|
+
- else
|
21
|
+
= link_to t('reader_extension.reader_configuration_page').titlecase, admin_reader_configuration_url
|
22
|
+
|
23
|
+
- if @message.group
|
24
|
+
%p
|
25
|
+
= t("reader_extension.belongs_to_group", :name => @message.group.name)
|
26
|
+
- elsif @message.groups.any?
|
27
|
+
%p
|
28
|
+
= t("reader_extension.belongs_to_these_groups")
|
29
|
+
%ul
|
30
|
+
- @message.groups.each do |group|
|
31
|
+
%li= link_to group.name, admin_group_url(group)
|
@@ -1,3 +1,7 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
= message.function.description
|
1
|
+
%span.function
|
2
|
+
- if message.administrative?
|
3
|
+
= message.function.description
|
4
|
+
- if message.group
|
5
|
+
= t('reader_extension.for')
|
6
|
+
- if message.group
|
7
|
+
= link_to message.group.name, admin_group_url(message.group)
|
@@ -25,14 +25,14 @@
|
|
25
25
|
%td.message_sent
|
26
26
|
%p
|
27
27
|
- if message.sent_at
|
28
|
-
= t('last_sent')
|
28
|
+
= t('reader_extension.last_sent')
|
29
29
|
= l(message.sent_at, :format => :short)
|
30
30
|
- else
|
31
|
-
= t('never_sent')
|
31
|
+
= t('reader_extension.never_sent')
|
32
32
|
- tbody.modify_cell do
|
33
33
|
%td.actions
|
34
|
-
= link_to( image('delta') + ' ' + t('edit_message'), edit_admin_message_url(message), :class => "action" )
|
35
|
-
= link_to( image('minus') + ' ' + t('delete_message'), admin_message_url(message), {:method => :delete, :class => "action", :confirm => t('really_delete_message', :title => message.subject)})
|
34
|
+
= link_to( image('delta') + ' ' + t('reader_extension.edit_message'), edit_admin_message_url(message), :class => "action" )
|
35
|
+
= link_to( image('minus') + ' ' + t('reader_extension.delete_message'), admin_message_url(message), {:method => :delete, :class => "action", :confirm => t('reader_extension.really_delete_message', :title => message.subject)})
|
36
36
|
|
37
37
|
- render_region :bottom do |bottom|
|
38
38
|
- bottom.buttons do
|
@@ -6,7 +6,7 @@
|
|
6
6
|
- render_region :header do |header|
|
7
7
|
- header.title do
|
8
8
|
%h1
|
9
|
-
= t('preview_and_send_message')
|
9
|
+
= t('reader_extension.preview_and_send_message')
|
10
10
|
|
11
11
|
#preview
|
12
12
|
- render_region :preview do |preview|
|
@@ -26,44 +26,44 @@
|
|
26
26
|
- preview.buttons do
|
27
27
|
.preview_controls
|
28
28
|
%p
|
29
|
-
= link_to t('edit_message'), edit_admin_message_url(@message)
|
29
|
+
= link_to t('reader_extension.edit_message'), edit_admin_message_url(@message)
|
30
30
|
|
31
31
|
#deliver
|
32
32
|
- render_region :delivery do |delivery|
|
33
33
|
- delivery.function do
|
34
34
|
- if @message.administrative?
|
35
35
|
%p
|
36
|
-
= t("
|
36
|
+
= t("reader_extension.#{@message.function}_sent_automatically")
|
37
37
|
%ul
|
38
38
|
%li
|
39
|
-
= link_to t('edit_message').titlecase, edit_admin_message_url(@message)
|
39
|
+
= link_to t('reader_extension.edit_message').titlecase, edit_admin_message_url(@message)
|
40
40
|
%li
|
41
|
-
= link_to t('reader_configuration_page').titlecase, admin_reader_configuration_url
|
41
|
+
= link_to t('reader_extension.reader_configuration_page').titlecase, admin_reader_configuration_url
|
42
42
|
|
43
43
|
- delivery.options do
|
44
44
|
- unless @message.administrative?
|
45
45
|
- form_for :message, @message, :url => deliver_admin_message_url(@message), :html => {"data-onsubmit_status"=>"Sending email messages…"} do |f|
|
46
46
|
%h3
|
47
|
-
= t("send_to").titlecase + ":"
|
47
|
+
= t("reader_extension.send_to").titlecase + ":"
|
48
48
|
%p
|
49
49
|
= radio_button_tag 'delivery', 'all', true, :id => 'delivery_to_all', :disabled => @message.possible_readers.empty?
|
50
50
|
%label.checkbox{:for => 'delivery_to_all', :class => @message.possible_readers.empty? ? 'disabled' : ''}
|
51
|
-
= t('everyone')
|
52
|
-
= t('count_people', :count => @message.possible_readers.count)
|
51
|
+
= t('reader_extension.everyone')
|
52
|
+
= t('reader_extension.count_people', :count => @message.possible_readers.count)
|
53
53
|
%p
|
54
54
|
= radio_button_tag 'delivery', 'unsent', false, :id => 'delivery_to_unsent', :disabled => @message.undelivered_readers.empty?
|
55
55
|
%label.checkbox{:for => 'delivery_to_unsent', :class => @message.undelivered_readers.empty? ? 'disabled' : ''}
|
56
|
-
= t('everyone_unsent')
|
57
|
-
= t('count_people', :count => @message.undelivered_readers.count)
|
56
|
+
= t('reader_extension.everyone_unsent')
|
57
|
+
= t('reader_extension.count_people', :count => @message.undelivered_readers.count)
|
58
58
|
%p
|
59
59
|
= radio_button_tag 'delivery', 'inactive', false, :id => 'delivery_to_inactive', :disabled => @message.inactive_readers.empty?
|
60
60
|
%label.checkbox{:for => 'delivery_to_inactive', :class => @message.inactive_readers.empty? ? 'disabled' : ''}
|
61
|
-
= t('everyone_inactive')
|
62
|
-
= t('count_people', :count => @message.inactive_readers.count)
|
61
|
+
= t('reader_extension.everyone_inactive')
|
62
|
+
= t('reader_extension.count_people', :count => @message.inactive_readers.count)
|
63
63
|
|
64
64
|
%p.buttons
|
65
|
-
= submit_tag t('send_message')
|
66
|
-
= t('or')
|
67
|
-
= link_to t('cancel'), admin_messages_url
|
65
|
+
= submit_tag t('reader_extension.send_message')
|
66
|
+
= t('reader_extension.or')
|
67
|
+
= link_to t('reader_extension.cancel'), admin_messages_url
|
68
68
|
|
69
69
|
|
@@ -0,0 +1,16 @@
|
|
1
|
+
%tr.node{:id => "page-#{page.id}", :class =>"level-#{level}"}
|
2
|
+
- render_region :page, :locals => {:page => page, :level => level} do |node|
|
3
|
+
- node.title_column do
|
4
|
+
%td.page{:style => "padding-left: #{(level * 22) + 4}px"}
|
5
|
+
%span.w1
|
6
|
+
= image('page', :class => "icon", :alt => 'page-icon', :title => '')
|
7
|
+
%span.title
|
8
|
+
= link_to page.title, edit_admin_page_url(page)
|
9
|
+
- node.add_child_column do
|
10
|
+
%td.add-child
|
11
|
+
= link_to image('add-child', :alt => 'add child'), new_admin_page_child_url(page)
|
12
|
+
- node.remove_column do
|
13
|
+
%td.remove
|
14
|
+
= link_to image('remove', :alt => 'remove page'), remove_admin_page_url(page)
|
15
|
+
- page.children.each do |child|
|
16
|
+
= render :partial => 'admin/pages/listed', :locals => {:page => child, :level => level+1}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
- groups = Group.find(:all)
|
2
|
+
- if groups.any?
|
3
|
+
.set
|
4
|
+
%p
|
5
|
+
= t('reader_extension.permitted_groups')
|
6
|
+
- groups.each do |group|
|
7
|
+
= check_box_tag "page[group_ids][]", group.id, @page.has_inherited_group?(group), :id => "page_group_#{group.id}", :disabled => @page.group_is_inherited?(group)
|
8
|
+
- if @page.group_is_inherited?(group)
|
9
|
+
%label.checkbox{:for => "page_group_#{group.id}", :class => 'disabled', :title => t('reader_extension.inherited_group')}
|
10
|
+
= group.name
|
11
|
+
- else
|
12
|
+
%label.checkbox{:for => "page_group_#{group.id}"}
|
13
|
+
= group.name
|
@@ -0,0 +1,24 @@
|
|
1
|
+
- page ||= @page
|
2
|
+
- group ||= @group
|
3
|
+
|
4
|
+
- liclass = 'loose'
|
5
|
+
- liclass = 'attached' if page.has_group?(group)
|
6
|
+
- liclass = 'inherited' if page.group_is_inherited?(group)
|
7
|
+
|
8
|
+
- if permission = group.permission_for(page)
|
9
|
+
%li{:class => "fake_checkbox checked", :id => "page_#{page.id}"}
|
10
|
+
= link_to_remote page.title, :url => admin_group_permission_url(group, permission), :method => 'delete', :loading => "$('page_#{page.id}').addClassName('waiting')", :update => "page_holder_#{page.id}"
|
11
|
+
|
12
|
+
- elsif page.has_inherited_group?(group)
|
13
|
+
%li{:class => "fake_checkbox inherited", :id => "page_#{page.id}"}
|
14
|
+
= page.title
|
15
|
+
|
16
|
+
- else
|
17
|
+
%li{:class => "fake_checkbox unchecked", :id => "page_#{page.id}"}
|
18
|
+
= link_to_remote page.title, :url => admin_group_permissions_url(group, :page_id => page.id), :loading => "$('page_#{page.id}').addClassName('waiting')", :update => "page_holder_#{page.id}"
|
19
|
+
|
20
|
+
- if page.children.any?
|
21
|
+
%ul
|
22
|
+
- page.children.each do |child|
|
23
|
+
%div{:id => "page_holder_#{child.id}"}
|
24
|
+
= render :partial => 'admin/permissions/page', :object => child
|
@@ -11,11 +11,13 @@
|
|
11
11
|
- form.edit_registration do
|
12
12
|
%fieldset
|
13
13
|
%h3
|
14
|
-
= t('registration').titlecase
|
14
|
+
= t('reader_extension.registration').titlecase
|
15
15
|
%p
|
16
16
|
= edit_config('reader.allow_registration?')
|
17
17
|
%p
|
18
18
|
= edit_config('reader.require_confirmation?')
|
19
|
+
%p
|
20
|
+
= edit_config('reader.get_profile?')
|
19
21
|
%p
|
20
22
|
= edit_config('reader.use_honorifics?')
|
21
23
|
%p
|
@@ -7,11 +7,13 @@
|
|
7
7
|
%h3
|
8
8
|
.actions
|
9
9
|
= button_to t("edit"), edit_admin_reader_configuration_url, :method => :get
|
10
|
-
=t("reader_admin")
|
10
|
+
=t("reader_extension.reader_admin")
|
11
11
|
%p.ruled
|
12
12
|
= show_config 'reader.allow_registration?'
|
13
13
|
%p.ruled
|
14
14
|
= show_config 'reader.require_confirmation?'
|
15
|
+
%p.ruled
|
16
|
+
= show_config 'reader.get_profile?'
|
15
17
|
%p.ruled
|
16
18
|
= show_config 'reader.use_honorifics?'
|
17
19
|
%p.ruled
|
@@ -29,7 +31,7 @@
|
|
29
31
|
- messages.administration do
|
30
32
|
#message_settings.box
|
31
33
|
%h3
|
32
|
-
=t("reader_emails")
|
34
|
+
=t("reader_extension.reader_emails")
|
33
35
|
|
34
36
|
- MessageFunction.find_all.each do |func|
|
35
37
|
- message = Message.functional(func)
|
@@ -7,22 +7,22 @@
|
|
7
7
|
- render_region :form, :locals => {:f => f} do |form|
|
8
8
|
- form.edit_name do
|
9
9
|
%p
|
10
|
-
= f.label :name, t('name')
|
10
|
+
= f.label :name, t('reader_extension.name')
|
11
11
|
= f.text_field :name, :class => "textbox activate", :size => 32, :maxlength => 100
|
12
12
|
|
13
13
|
- form.edit_email do
|
14
14
|
%p
|
15
|
-
= f.label :email, t('email_address') , :class => "optional"
|
15
|
+
= f.label :email, t('reader_extension.email_address') , :class => "optional"
|
16
16
|
= f.text_field "email", :class => 'textbox', :size => 32, :maxlength => 255
|
17
17
|
|
18
18
|
- form.edit_username do
|
19
19
|
%p
|
20
|
-
= f.label :login, t('username') , :class => "optional"
|
20
|
+
= f.label :login, t('reader_extension.username') , :class => "optional"
|
21
21
|
= f.text_field "login", :class => 'textbox', :size => 32, :maxlength => 255
|
22
22
|
|
23
23
|
- form.edit_readername do
|
24
24
|
%p
|
25
|
-
= f.label :login, t('readername')
|
25
|
+
= f.label :login, t('reader_extension.readername')
|
26
26
|
= f.text_field "login", :class => "textbox", :size => 32, :maxlength => 40
|
27
27
|
|
28
28
|
- form.edit_password do
|
@@ -35,7 +35,7 @@
|
|
35
35
|
|
36
36
|
- form.edit_notes do
|
37
37
|
%p
|
38
|
-
= f.label :notes, t('notes'), :class => "optional"
|
38
|
+
= f.label :notes, t('reader_extension.notes'), :class => "optional"
|
39
39
|
~ f.text_area "notes", :size => "53x4", :class => "textarea"
|
40
40
|
|
41
41
|
= render_region :form_additions, :locals => {:f => f}
|
@@ -45,7 +45,7 @@
|
|
45
45
|
%p.buttons
|
46
46
|
= save_model_button(@reader)
|
47
47
|
= save_model_and_continue_editing_button(@reader)
|
48
|
-
= t('or')
|
49
|
-
= link_to t('cancel'), admin_readers_path
|
48
|
+
= t('reader_extension.or')
|
49
|
+
= link_to t('reader_extension.cancel'), admin_readers_path
|
50
50
|
- form_bottom.edit_timestamp do
|
51
51
|
= updated_stamp @reader
|
@@ -1,18 +1,18 @@
|
|
1
1
|
%p#display_password{:style=> (@reader.new_record? or !@reader.valid?) ? "display: none" : nil}
|
2
|
-
%label= t('password')
|
2
|
+
%label= t('reader_extension.password')
|
3
3
|
%span.value
|
4
4
|
•••••
|
5
|
-
%a.action{:href=>"#", :onclick=>" $('display_password').hide(); $('change_password').show()"}= t('change')
|
5
|
+
%a.action{:href=>"#", :onclick=>" $('display_password').hide(); $('change_password').show()"}= t('reader_extension.change')
|
6
6
|
.set#change_password{:style=> (!@reader.new_record? && @reader.valid?) ? "display: none" : nil}
|
7
7
|
%p
|
8
|
-
= f.label :password, t('new_password')
|
8
|
+
= f.label :password, t('reader_extension.new_password')
|
9
9
|
= f.password_field "password", :class => "textbox big", :value => "", :size => 15, :maxlength => 40
|
10
10
|
%p
|
11
|
-
= f.label :password_confirmation, t('password_confirmation')
|
11
|
+
= f.label :password_confirmation, t('reader_extension.password_confirmation')
|
12
12
|
= f.password_field "password_confirmation", :class => "textbox big", :value => "", :size => 15, :maxlength => 40
|
13
13
|
- unless @reader.new_record?
|
14
14
|
%span
|
15
|
-
= t('or')
|
16
|
-
%a{:href=>"#", :onclick=>" $('display_password').show(); $('change_password').hide()"}= t('cancel')
|
15
|
+
= t('reader_extension.or')
|
16
|
+
%a{:href=>"#", :onclick=>" $('display_password').show(); $('change_password').hide()"}= t('reader_extension.cancel')
|
17
17
|
|
18
18
|
|
@@ -0,0 +1,7 @@
|
|
1
|
+
%p
|
2
|
+
%label{:for=>"reader_groups"} Groups
|
3
|
+
- Group.find(:all).each do |group|
|
4
|
+
%span.checkbox
|
5
|
+
= check_box_tag "reader[group_ids][]", group.id, @reader.is_in?(group), :id => "reader_group_#{group.id}"
|
6
|
+
%label.checkbox{:for => "reader_group_#{group.id}"}
|
7
|
+
= group.name
|
@@ -1,8 +1,9 @@
|
|
1
|
-
- @page_title = @reader.name + ' ' + t('account') + ' - ' + default_page_title
|
1
|
+
- @page_title = @reader.name + ' ' + t('reader_extension.account') + ' - ' + default_page_title
|
2
2
|
- body_classes << 'edit_user'
|
3
3
|
|
4
4
|
- render_region :main do |main|
|
5
5
|
- main.edit_header do
|
6
6
|
%h1 Edit Reader
|
7
|
+
|
7
8
|
- main.edit_form do
|
8
9
|
= render :partial => 'form'
|
@@ -32,12 +32,15 @@
|
|
32
32
|
|
33
33
|
- tbody.description_cell do
|
34
34
|
%td.reader_description
|
35
|
-
=
|
35
|
+
= truncate_words(scrub_html(reader.description), 24)
|
36
36
|
|
37
37
|
- tbody.modify_cell do
|
38
38
|
%td.actions
|
39
39
|
- if admin?
|
40
|
-
|
40
|
+
- if reader.is_user?
|
41
|
+
%span.action.disabled= image('minus_disabled') + ' ' + t('remove')
|
42
|
+
- else
|
43
|
+
= link_to(image('minus') + ' ' + t('remove'), admin_reader_url(reader), :method => :delete, :class => 'action', :confirm => t('reader_extension.really_delete_reader', :name => reader.name))
|
41
44
|
|
42
45
|
|
43
46
|
- render_region :bottom do |bottom|
|
@@ -1,10 +1,15 @@
|
|
1
|
-
|
2
|
-
= t('
|
1
|
+
- content_for :title do
|
2
|
+
= t('reader_extension.reset_message_sent')
|
3
3
|
|
4
|
-
- content_for :
|
5
|
-
|
6
|
-
|
7
|
-
= t('reset_password')
|
4
|
+
- content_for :instructions do
|
5
|
+
%p
|
6
|
+
= t('reader_extension.reset_message_instructions')
|
8
7
|
|
9
|
-
- content_for :
|
10
|
-
|
8
|
+
- content_for :breadcrumbs do
|
9
|
+
= link_to t('reader_extension.home').titlecase, '/'
|
10
|
+
>
|
11
|
+
= t('reader_extension.reset_password')
|
12
|
+
|
13
|
+
= render :partial => 'shared/standard_reader_parts'
|
14
|
+
|
15
|
+
= yield :instructions
|
@@ -1,5 +1,3 @@
|
|
1
|
-
- render :partial => 'readers/standard_parts'
|
2
|
-
|
3
1
|
- content_for :form do
|
4
2
|
- if @reader
|
5
3
|
- form_for @reader, :url => password_reset_path, :method => :put, :html => {:class => 'friendly', :autocomplete => "off"} do |f|
|
@@ -7,64 +5,66 @@
|
|
7
5
|
- if @reader.errors.any?
|
8
6
|
%p.errornote
|
9
7
|
%strong
|
10
|
-
= t('sorry').titlecase
|
11
|
-
= t('form_problem') + '.'
|
8
|
+
= t('reader_extension.sorry').titlecase
|
9
|
+
= t('reader_extension.form_problem') + '.'
|
12
10
|
|
13
11
|
= hidden_field_tag :id, params[:id]
|
14
12
|
= hidden_field_tag :confirmation_code, @reader.perishable_token
|
15
13
|
|
16
14
|
%p
|
17
|
-
= f.label :password, t('new_password'), :class => 'required'
|
15
|
+
= f.label :password, t('reader_extension.new_password'), :class => 'required'
|
18
16
|
%br
|
19
17
|
= f.password_field :password, :class => 'titular'
|
20
18
|
|
21
19
|
%p
|
22
|
-
= f.label :password_confirmation, t('confirm_password'), :class => 'required'
|
20
|
+
= f.label :password_confirmation, t('reader_extension.confirm_password'), :class => 'required'
|
23
21
|
%br
|
24
22
|
= f.password_field :password_confirmation, :class => 'titular'
|
25
23
|
%p
|
26
|
-
= f.submit t('set_new_password')
|
24
|
+
= f.submit t('reader_extension.set_new_password')
|
27
25
|
|
28
26
|
%p
|
29
|
-
= t('password_not_yet_changed', :url => reader_login_url)
|
27
|
+
= t('reader_extension.password_not_yet_changed', :url => reader_login_url)
|
30
28
|
|
31
29
|
- else
|
32
30
|
- form_tag edit_password_reset_path, :method => 'GET', :class => 'friendly', :autocomplete => "off" do
|
33
31
|
= hidden_field_tag :id, params[:id]
|
34
32
|
%p
|
35
33
|
%label{:for => "confirmation_code"}
|
36
|
-
= t('confirmation_code')
|
34
|
+
= t('reader_extension.confirmation_code')
|
37
35
|
%br
|
38
36
|
= text_field_tag 'confirmation_code', '', :class => 'titular'
|
39
37
|
|
40
38
|
%p
|
41
|
-
= submit_tag t('continue')
|
39
|
+
= submit_tag t('reader_extension.continue')
|
42
40
|
|
43
41
|
%ul.actions
|
44
42
|
%li
|
45
|
-
= link_to t("restart_password_change"), new_password_reset_url
|
43
|
+
= link_to t("reader_extension.restart_password_change"), new_password_reset_url
|
46
44
|
|
47
45
|
- content_for :title do
|
48
46
|
- if @reader
|
49
|
-
= t('change_password')
|
47
|
+
= t('reader_extension.change_password')
|
50
48
|
- else
|
51
|
-
= t('enter_code')
|
49
|
+
= t('reader_extension.enter_code')
|
52
50
|
|
53
51
|
- content_for :introduction do
|
54
|
-
|
55
|
-
|
56
|
-
%
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
52
|
+
%div.introduction
|
53
|
+
- if @reader
|
54
|
+
%p
|
55
|
+
%strong
|
56
|
+
= t('reader_extension.hello').titlecase
|
57
|
+
= @reader.name + '!'
|
58
|
+
= t('reader_extension.new_password_instructions')
|
59
|
+
- else
|
60
|
+
%p.errornote
|
61
|
+
= t('reader_extension.sorry_reset_not_found')
|
63
62
|
|
64
|
-
|
65
63
|
- content_for :breadcrumbs do
|
66
|
-
= link_to t('home').titlecase, '/'
|
64
|
+
= link_to t('reader_extension.home').titlecase, '/'
|
67
65
|
>
|
68
|
-
= t('reset_password')
|
66
|
+
= t('reader_extension.reset_password')
|
67
|
+
|
68
|
+
= render :partial => 'shared/standard_reader_parts'
|
69
69
|
|
70
|
-
= yield :form
|
70
|
+
= yield :form
|