quadro 0.5.6 → 0.5.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. checksums.yaml +8 -8
  2. data/README.md +3 -2
  3. data/app/assets/javascripts/quadro/application.js.coffee +2 -2
  4. data/app/assets/javascripts/quadro/quadro.js.coffee +6 -4
  5. data/app/assets/javascripts/quadro/widget.js.coffee +0 -2
  6. data/app/assets/stylesheets/quadro/application.css.sass +0 -1
  7. data/app/assets/stylesheets/quadro/quadro.css.sass +9 -0
  8. data/app/controllers/quadro/application_controller.rb +1 -0
  9. data/app/controllers/quadro/assets_controller.rb +15 -3
  10. data/app/controllers/quadro/pages_controller.rb +35 -6
  11. data/app/controllers/quadro/tools_controller.rb +1 -0
  12. data/app/controllers/quadro/widgets_controller.rb +6 -1
  13. data/app/models/quadro/page.rb +1 -1
  14. data/app/views/layouts/quadro/application.html.haml +1 -0
  15. data/app/views/layouts/quadro/devise.html.haml +2 -0
  16. data/app/views/quadro/assets/create.js.erb +0 -2
  17. data/app/views/quadro/assets/destroy.js.erb +0 -2
  18. data/app/views/quadro/assets/image/_image.html.haml +2 -2
  19. data/app/views/quadro/assets/slide/_slide.html.haml +2 -2
  20. data/app/views/quadro/assets/update.js.erb +1 -3
  21. data/app/views/quadro/pages/_edit.html.haml +3 -3
  22. data/app/views/quadro/pages/create.js.erb +3 -5
  23. data/app/views/quadro/pages/destroy.js.erb +0 -2
  24. data/app/views/quadro/pages/form.js.erb +0 -2
  25. data/app/views/quadro/pages/publish.js.erb +2 -2
  26. data/app/views/quadro/pages/unpublish.js.erb +2 -2
  27. data/app/views/quadro/pages/update.js.erb +1 -3
  28. data/app/views/quadro/shared/_navigation.html.haml +2 -3
  29. data/app/views/quadro/shared/_toolbar.html.haml +24 -41
  30. data/app/views/quadro/shared/templates/page/_list.html.haml +1 -1
  31. data/app/views/quadro/shared/templates/page/_thumbnail.html.haml +1 -1
  32. data/app/views/quadro/tools/sitemap_notifier.js.erb +0 -1
  33. data/app/views/quadro/users/update.js.erb +1 -3
  34. data/app/views/quadro/widgets/form/_toolbar.html.haml +1 -1
  35. data/app/views/quadro/widgets/gallery/_toolbar.html.haml +1 -1
  36. data/app/views/quadro/widgets/html/_toolbar.html.haml +1 -1
  37. data/app/views/quadro/widgets/map/_toolbar.html.haml +1 -1
  38. data/app/views/quadro/widgets/slider/_toolbar.html.haml +1 -1
  39. data/app/views/quadro/widgets/video/_toolbar.html.haml +1 -1
  40. data/app/views/users/mailer/reset_password_instructions.html.haml +5 -6
  41. data/app/views/users/mailer/unlock_instructions.html.haml +4 -5
  42. data/app/views/users/passwords/edit.html.haml +2 -2
  43. data/app/views/users/passwords/new.html.haml +2 -2
  44. data/app/views/users/sessions/new.html.haml +2 -2
  45. data/app/views/users/shared/_links.html.haml +6 -6
  46. data/app/views/users/unlocks/new.html.haml +2 -2
  47. data/config/locales/quadro.en.yml +47 -0
  48. data/lib/generators/quadro/install/templates/app/views/quadro/shared/_navigation.html.haml +3 -4
  49. data/lib/generators/quadro/install/templates/app/views/quadro/shared/templates/page/_list.html.haml +1 -1
  50. data/lib/generators/quadro/install/templates/app/views/quadro/shared/templates/page/_thumbnail.html.haml +1 -1
  51. data/lib/quadro/loader.rb +2 -0
  52. data/lib/quadro/version.rb +1 -1
  53. data/test/dummy/app/views/quadro/shared/templates/page/_list.html.haml +1 -1
  54. data/test/dummy/app/views/quadro/shared/templates/page/_thumbnail.html.haml +1 -1
  55. data/test/dummy/config/application.rb +0 -1
  56. data/test/dummy/log/development.log +0 -2
  57. metadata +102 -12
  58. data/app/assets/javascripts/quadro/message.js.coffee +0 -6
  59. data/app/assets/javascripts/quadro/plugins/humane.min.js +0 -11
  60. data/app/assets/stylesheets/quadro/plugins/humane-libnotify.min.css +0 -1
  61. data/config/locales/devise.en.yml +0 -60
  62. data/config/locales/kaminari.en.yml +0 -17
  63. data/config/locales/simple_form.en.yml +0 -26
  64. data/test/dummy/db/development.sqlite3 +0 -0
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YzllZWY2MzZmZjhkOWQ2M2UzMjU2MmM2YzhkNGNmN2UwYTJjNmYzYw==
4
+ N2EzM2YwMmQxZDFiYmY1MzhiMzgwNjQwNzA0YzJhNmY3MDNjYjI2Zg==
5
5
  data.tar.gz: !binary |-
6
- YmI2ZmU1ZDhhNjI1NDJlOTVhMmUwOGE5ZmY3M2E4OTNkMTFjOWRhZA==
6
+ MWRhZjYwN2I5ZDBlNzJiMWJkY2M1NjE2NzdhOGU0MjgzNDM3YjNlZQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NDlhMDdlYzBlZDg1Y2YxYmE0ZDQ2ZWIwZDk4YmY1YWJkN2I1ZTQ5YzdhNzA0
10
- YTY4MTY5Mzk1NzdmNTg3MzI5MzZmZmViZWE4NzlkYzNiYzdlMzViZDg4NjE2
11
- OWY0ODk3ZGM0M2EwYWNlMThlODVhNGEzYjgwYWE2MDgyYjRiNDY=
9
+ MTExMDc0Mzg0NzdjYTVjYmVhYWIyOTVkM2MwMGYyMzhlNDc3NzRmNGNkOWM1
10
+ MGQ5NWYzNTExZDAzZTU3ODg3NWVhZTY4ODVkNTA4ZWQ4NmY4M2ZhZWM4ZjA3
11
+ YzExMjA0ZTZjZWI2NzcxZDM5ZjlkNzU0ODZmMWE5MDI1MzJjZjA=
12
12
  data.tar.gz: !binary |-
13
- MjE1OGFiMTBlNmZhYjBlYmMyNmIwMTQzZDgxMTJmNjYzYjZhN2QyODc5MjZh
14
- OGYzMmQ5NTYyODRhZjJmZTVjMDIyMzkxYWVkZThhZjdhNWIwYWQ5MmQxZWI4
15
- Y2Y0MzI4YzEyNDc5YzEyMzRhNTUzMDE5NDZlZGQ4Y2YxM2FkMDc=
13
+ OWNlMDU3OThmZDg4YmEwMWI3MzRkNTg0Yzk3NTdlOTcxYzFlZGFkYzljZjli
14
+ OGQ1NTQzNjU2OWRhY2Q5MWI0MWExMTE2Y2ExNjU5MGJhMzUxZTc4MjJlOGZl
15
+ MzJhYmNkNWY3MzIyMDZhNDI0M2U5YzliN2M4MDc3MTQ5OGY4NWE=
data/README.md CHANGED
@@ -35,10 +35,11 @@ Current stable version.
35
35
 
36
36
  [![Gem Version](https://badge.fury.io/rb/quadro.png)](https://badge.fury.io/rb/quadro)
37
37
 
38
- ## Code Climate and Travis CI status
38
+ ## Code Climate, Hakiri and Travis CI status
39
39
 
40
40
  [![Code Climate](https://codeclimate.com/github/hugogilmar/quadro/badges/gpa.svg)](https://codeclimate.com/github/hugogilmar/quadro)
41
41
  [![Test Coverage](https://codeclimate.com/github/hugogilmar/quadro/badges/coverage.svg)](https://codeclimate.com/github/hugogilmar/quadro/coverage)
42
+ [![Security](https://hakiri.io/github/hugogilmar/quadro/develop.svg)](https://hakiri.io/github/hugogilmar/quadro/develop)
42
43
  [![Build Status](https://travis-ci.org/hugogilmar/quadro.svg?branch=master)](https://travis-ci.org/hugogilmar/quadro)
43
44
 
44
45
  ## Installation
@@ -147,7 +148,7 @@ You can also set a playlist:
147
148
  = widget_for :video, type: :video, src: "https://www.youtube.com/watch?v=YE7VzlLtp-4&list=PLcsq2jjTfJ_pEUj2Cl4MlXnpgpSQMTO-f"
148
149
  ```
149
150
 
150
- *Note: works the same with vimeo's videos and playlists.*
151
+ *Note: works the same with Vimeo's videos and playlists.*
151
152
 
152
153
  ## Working with page templates
153
154
 
@@ -12,17 +12,17 @@
12
12
  #= require summernote
13
13
  #= require jquery.slick
14
14
  #= require moment
15
+ #= require unobtrusive_flash
16
+ #= require unobtrusive_flash_bootstrap
15
17
  #= require quadro/plugins/jquery.fs.dropper.min
16
18
  #= require quadro/plugins/jasny-bootstrap.min
17
19
  #= require quadro/plugins/jquery.smartmenus.min
18
20
  #= require quadro/plugins/jquery.smartmenus.bootstrap.min
19
21
  #= require quadro/plugins/jquery.show_char_limit.min
20
22
  #= require quadro/plugins/pace.min
21
- #= require quadro/plugins/humane.min
22
23
  #= require quadro/plugins/lightbox.min
23
24
  #= require quadro/plugins/gmaps.min
24
25
  #= require quadro/plugins/bootstrap-datetimepicker.min
25
- #= require quadro/message
26
26
  #= require quadro/widget
27
27
  #= require quadro/uploader
28
28
  #= require quadro/quadro
@@ -20,14 +20,14 @@ $(document).ready ->
20
20
  uploader = new Uploader $(this)
21
21
 
22
22
  $('#quadro-airmode-on').on 'click', ->
23
- $('#quadro-airmode-off').removeClass 'active'
24
- $(this).addClass 'active'
23
+ $('#quadro-airmode-off').removeClass 'hidden'
24
+ $(this).addClass 'hidden'
25
25
  for widget in Object.keys(widgets)
26
26
  widgets[widget].switchAirmodeOn()
27
27
 
28
28
  $('#quadro-airmode-off').on 'click', ->
29
- $('#quadro-airmode-on').removeClass 'active'
30
- $(this).addClass 'active'
29
+ $('#quadro-airmode-on').removeClass 'hidden'
30
+ $(this).addClass 'hidden'
31
31
  for widget in Object.keys(widgets)
32
32
  widgets[widget].switchAirmodeOff()
33
33
 
@@ -41,3 +41,5 @@ $(document).ready ->
41
41
  $('#quadro-gallery').removeClass('collapsed').addClass('expanded')
42
42
  else
43
43
  $('#quadro-gallery').removeClass('expanded').addClass('collapsed')
44
+
45
+ UnobtrusiveFlash.flashOptions['timeout'] = 3000
@@ -52,10 +52,8 @@ class Widget
52
52
  widget:
53
53
  content: @content
54
54
  success: (data) ->
55
- new Message "Content updated"
56
55
  return
57
56
  error: ->
58
- new Message "Content not updated"
59
57
  return
60
58
  return
61
59
 
@@ -13,7 +13,6 @@
13
13
  @import quadro/plugins/jasny-bootstrap.min
14
14
  @import quadro/plugins/jquery.smartmenus.bootstrap.min
15
15
  @import quadro/plugins/pace.min
16
- @import quadro/plugins/humane-libnotify.min
17
16
  @import quadro/plugins/lightbox.min
18
17
  @import quadro/plugins/bootstrap-datetimepicker.min
19
18
  @import quadro/quadro
@@ -8,6 +8,14 @@ form
8
8
  span.status
9
9
  @extend .help-block
10
10
 
11
+ .unobtrusive-flash-container
12
+ position: fixed
13
+ top: 0px
14
+ left: 10%
15
+ width: 80%
16
+ z-index: 2000
17
+ padding: 8px 0px 0px
18
+
11
19
  #quadro-toolbar
12
20
  padding: 8px
13
21
 
@@ -35,6 +43,7 @@ form
35
43
  height: 0em
36
44
 
37
45
  #quadro-gallery.expanded
46
+ margin-bottom: 8px
38
47
  padding: 0px
39
48
  height: 25em
40
49
  +transition-property(height)
@@ -1,5 +1,6 @@
1
1
  module Quadro
2
2
  class ApplicationController < ActionController::Base
3
+ after_filter :prepare_unobtrusive_flash
3
4
  helper_method :widget, :asset, :interaction, :root, :parent, :page, :subpages, :geoip, :video, :user, :users
4
5
 
5
6
  def after_sign_in_path_for(_resource)
@@ -7,15 +7,27 @@ module Quadro
7
7
  respond_to :js, :json, :xml
8
8
 
9
9
  def create
10
- asset.save
10
+ if asset.save
11
+ flash[:notice] = t('flash.created')
12
+ else
13
+ flash[:alert] = t('flash.not_created')
14
+ end
11
15
  end
12
16
 
13
17
  def update
14
- asset.update_attributes(params[:asset])
18
+ if asset.update_attributes(params[:asset])
19
+ flash[:notice] = t('flash.updated')
20
+ else
21
+ flash[:alert] = t('flash.not_updated')
22
+ end
15
23
  end
16
24
 
17
25
  def destroy
18
- asset.destroy
26
+ if asset.destroy
27
+ flash[:notice] = t('flash.deleted')
28
+ else
29
+ flash[:alert] = t('flash.not_deleted')
30
+ end
19
31
  end
20
32
  end
21
33
  end
@@ -10,29 +10,58 @@ module Quadro
10
10
 
11
11
  def create
12
12
  page.author = current_user
13
- page.save
13
+ if page.save
14
+ flash[:notice] = t('flash.created')
15
+ else
16
+ flash[:alert] = t('flash.not_created')
17
+ end
14
18
  end
15
19
 
16
20
  def update
17
- page.update_attributes(params[:page])
21
+ if page.update_attributes(params[:page])
22
+ flash[:notice] = t('flash.updated')
23
+ else
24
+ flash[:alert] = t('flash.not_updated')
25
+ end
18
26
  end
19
27
 
20
28
  def destroy
21
- page.destroy unless page.is_root?
29
+ unless page.is_root?
30
+ if page.destroy
31
+ flash[:notice] = t('flash.deleted')
32
+ else
33
+ flash[:alert] = t('flash.not_deleted')
34
+ end
35
+ else
36
+ flash[:alert] = t('flash.could_not_be_deleted')
37
+ end
22
38
  end
23
39
 
24
40
  def form
25
41
  interaction.ip_address = request.remote_ip
26
42
  interaction.user_agent = request.user_agent
27
- interaction.update_attributes(content: params[:form])
43
+ interaction.content = params[:form]
44
+ if interaction.save
45
+ flash[:notice] = t('flash.created')
46
+ else
47
+ flash[:alert] = t('flash.not_created')
48
+ end
28
49
  end
29
50
 
30
51
  def publish
31
- page.publish!
52
+ if page.publish!
53
+ flash[:notice] = t('flash.published')
54
+ else
55
+ flash[:alert] = t('flash.not_published')
56
+ end
32
57
  end
33
58
 
34
59
  def unpublish
35
- page.unpublish!
60
+ if page.unpublish!
61
+ flash[:notice] = t('flash.unpublished')
62
+ else
63
+ flash[:alert] = t('flash.not_unpublished')
64
+ end
36
65
  end
37
66
 
38
67
  private
@@ -8,6 +8,7 @@ module Quadro
8
8
 
9
9
  def sitemap_notifier
10
10
  notifier.run(sitemap_url)
11
+ flash[:notice] = t('flash.notified')
11
12
  end
12
13
  end
13
14
  end
@@ -7,7 +7,12 @@ module Quadro
7
7
  respond_to :js, :json, :xml
8
8
 
9
9
  def update
10
- widget.update_attributes(params[:widget])
10
+ if widget.update_attributes(params[:widget])
11
+ flash[:notice] = t('flash.updated')
12
+ else
13
+ flash[:alert] = t('flash.not_updated')
14
+ end
15
+
11
16
  respond_with widget
12
17
  end
13
18
  end
@@ -6,7 +6,7 @@ module Quadro
6
6
  SITEMAP_PRIORITY = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0].freeze
7
7
 
8
8
  # attributes
9
- attr_accessible :title, :summary, :template, :frequency, :priority, :cover_attributes, :author_id
9
+ attr_accessible :title, :summary, :template, :frequency, :priority, :cover_attributes, :author_id, :published_at
10
10
  store :settings, accessors: [:template, :frequency, :priority]
11
11
 
12
12
  # validations
@@ -24,6 +24,7 @@
24
24
  = favicon_link_tag 'quadro/favicon.ico'
25
25
  = csrf_meta_tags
26
26
  %body(class="#{(user_signed_in? ? 'quadro-signed-in' : '')}")
27
+ .unobtrusive-flash-container
27
28
  = yield
28
29
  - if user_signed_in?
29
30
  = render 'quadro/shared/toolbar'
@@ -8,4 +8,6 @@
8
8
  = favicon_link_tag 'quadro/favicon.ico'
9
9
  = csrf_meta_tags
10
10
  %body
11
+ .unobtrusive-flash-container
11
12
  = yield
13
+ = javascript_include_tag 'quadro/application'
@@ -5,7 +5,5 @@
5
5
  <% when 'slide' %>
6
6
  $('.asset-list').filter('[data-assetable-type="<%= asset.assetable.class.to_s %>"],[data-assetable-id="<%= asset.assetable.id %>"]').append('<%= escape_javascript(render("quadro/assets/slide/slide", asset: asset, widget: widget, page: page))%>');
7
7
  <% end %>
8
- new Message('Asset created');
9
8
  <% else %>
10
- new Message('Asset not created');
11
9
  <% end %>
@@ -5,7 +5,5 @@
5
5
  <% when 'slide' %>
6
6
  $('#slide-<%= asset.id %>').remove();
7
7
  <% end %>
8
- new Message('Asset deleted');
9
8
  <% else %>
10
- new Message('Asset not deleted');
11
9
  <% end %>
@@ -5,6 +5,6 @@
5
5
  .pull-right
6
6
 
7
7
  = link_to (widget.present? ? edit_page_widget_asset_path(page_id: page.id, widget_id: widget.id, id: asset.id) : edit_page_asset_path(id: asset.id, page_id: page.id)), remote: true, class: "btn btn-link btn-xs" do
8
- %i.fa.fa-cog.text-muted
9
- = link_to (widget.present? ? page_widget_asset_path(page_id: page.id, widget_id: widget.id, id: asset.id) : page_asset_path(id: asset.id, page_id: page.id)), method: "delete", confirm: "Are you sure of delete this image?", remote: true, class: "btn btn-link btn-xs" do
8
+ %i.fa.fa-pencil.text-muted
9
+ = link_to (widget.present? ? page_widget_asset_path(page_id: page.id, widget_id: widget.id, id: asset.id) : page_asset_path(id: asset.id, page_id: page.id)), method: "delete", confirm: t('confirmation.image'), remote: true, class: "btn btn-link btn-xs" do
10
10
  %i.fa.fa-trash-o.text-danger
@@ -4,6 +4,6 @@
4
4
  .caption.clearfix
5
5
  .pull-right
6
6
  = link_to edit_page_widget_asset_path(id: asset.id, widget_id: widget.id, page_id: page.id), remote: true, class: "btn btn-link btn-xs" do
7
- %i.fa.fa-cog.text-muted
8
- = link_to page_widget_asset_path(id: asset.id, widget_id: widget.id, page_id: page.id), method: "delete", confirm: "Are you sure of delete this slide?", remote: true, class: "btn btn-link btn-xs" do
7
+ %i.fa.fa-pencil.text-muted
8
+ = link_to page_widget_asset_path(id: asset.id, widget_id: widget.id, page_id: page.id), method: "delete", confirm: t('confirmation.slide'), remote: true, class: "btn btn-link btn-xs" do
9
9
  %i.fa.fa-trash-o.text-danger
@@ -1,11 +1,10 @@
1
- <% if asset.errors.size > 0 %>
1
+ <% if asset.changed? %>
2
2
  <% case asset.type.constantize.short_name %>
3
3
  <% when 'image' %>
4
4
  $("#quadro-modal .modal-content").html("<%= escape_javascript(render('quadro/assets/image/form', asset: asset, page: page)) %>");
5
5
  <% when 'slide' %>
6
6
  $("#quadro-modal .modal-content").html("<%= escape_javascript(render('quadro/assets/slide/form', asset: asset, widget: widget, page: page)) %>");
7
7
  <% end %>
8
- new Message('Asset not updated');
9
8
  <% else %>
10
9
  <% case asset.type.constantize.short_name %>
11
10
  <% when 'image' %>
@@ -14,5 +13,4 @@
14
13
  $('#slide-<%= asset.id %>').replaceWith('<%= escape_javascript(render("quadro/assets/slide/slide", asset: asset, widget: widget, page: page))%>');
15
14
  <% end %>
16
15
  $("#quadro-modal").modal('hide');
17
- new Message('Asset updated');
18
16
  <% end %>
@@ -30,10 +30,10 @@
30
30
  = form.input :published_at, as: :string, input_html: { class: 'form-control' }
31
31
  .row
32
32
  .col-md-4
33
- = form.input :template, collection: page.templates, input_html: { class: 'form-control' }
33
+ = form.input :template, collection: page.templates, input_html: { class: 'form-control' }, include_blank: false
34
34
  .col-md-4
35
- = form.input :frequency, collection: Quadro::Page::SITEMAP_FREQUENCY, input_html: { class: 'form-control' }
35
+ = form.input :frequency, collection: Quadro::Page::SITEMAP_FREQUENCY, input_html: { class: 'form-control' }, include_blank: false
36
36
  .col-md-4
37
- = form.input :priority, collection: Quadro::Page::SITEMAP_PRIORITY, input_html: { class: 'form-control' }
37
+ = form.input :priority, collection: Quadro::Page::SITEMAP_PRIORITY, input_html: { class: 'form-control' }, include_blank: false
38
38
  .text-right
39
39
  = form.submit class: 'btn btn-primary'
@@ -1,7 +1,5 @@
1
- <% if page.errors.size > 0 %>
2
- $("#quadro-modal .modal-body").html("<%= escape_javascript(render('quadro/pages/new', page: page)) %>");
3
- new Message('Page not created');
4
- <% else %>
1
+ <% if page.persisted? %>
5
2
  $("#quadro-modal").modal('hide');
6
- new Message('Page created');
3
+ <% else %>
4
+ $("#quadro-modal .modal-body").html("<%= escape_javascript(render('quadro/pages/new', page: page)) %>");
7
5
  <% end %>
@@ -1,5 +1,3 @@
1
1
  <% if page.destroyed? %>
2
- new Message('Page deleted');
3
2
  <% else %>
4
- new Message('Page not deleted');
5
3
  <% end %>
@@ -1,6 +1,4 @@
1
1
  <% if interaction.persisted? %>
2
- new Message('Message sent');
3
2
  $('form#<%= interaction.interactable.name %>')[0].reset();
4
3
  <% else %>
5
- new Message('Message not sent');
6
4
  <% end %>
@@ -1,5 +1,5 @@
1
1
  <% if page.published? %>
2
- new Message('Page published');
2
+ $('#quadro-unpublish').removeClass('hidden');
3
+ $('#quadro-publish').addClass('hidden');
3
4
  <% else %>
4
- new Message('Page not published');
5
5
  <% end %>
@@ -1,5 +1,5 @@
1
1
  <% if page.unpublished? %>
2
- new Message('Page unpublished');
2
+ $('#quadro-publish').removeClass('hidden');
3
+ $('#quadro-unpublish').addClass('hidden');
3
4
  <% else %>
4
- new Message('Page not unpublished');
5
5
  <% end %>
@@ -1,7 +1,5 @@
1
- <% if page.errors.size > 0 %>
1
+ <% if page.changed? %>
2
2
  $("#quadro-modal .modal-content").html("<%= escape_javascript(render('quadro/pages/edit', page: page)) %>");
3
- new Message('Page not updated');
4
3
  <% else %>
5
4
  $("#quadro-modal").modal('hide');
6
- new Message('Page updated');
7
5
  <% end %>
@@ -2,16 +2,15 @@
2
2
  .container
3
3
  .navbar-header
4
4
  %button.navbar-toggle.collapsed(data-target='#navigation' data-toggle='collapse' type='button')
5
- %span.sr-only Toggle navigation
6
5
  %span.icon-bar
7
6
  %span.icon-bar
8
7
  %span.icon-bar
9
8
  = link_to root_path, class: 'navbar-brand' do
10
9
  = Quadro.config.site
11
10
  #navigation.collapse.navbar-collapse
11
+ = navigation_for root, class: "nav navbar-nav navbar-right"
12
12
  - unless user_signed_in?
13
13
  %ul.nav.navbar-nav.navbar-right
14
14
  %li
15
15
  = link_to new_user_session_path, rel: "nofollow" do
16
- Sign In
17
- = navigation_for root, class: "nav navbar-nav navbar-right"
16
+ = t('navigation.sign_in')
@@ -8,51 +8,34 @@
8
8
  .pull-left
9
9
  = link_to root_path, class: "quadro-brand" do
10
10
  = image_tag 'quadro/quadro-logo-mini.png'
11
- = link_to new_page_path(parent_id: page.id), remote: true, class: "btn btn-default btn-sm hidden-xs" do
11
+ = link_to new_page_path(parent_id: page.id), remote: true, id: "quadro-new", class: "btn btn-default btn-sm" do
12
12
  %i.fa.fa-plus
13
- New sub page
14
- = link_to edit_page_path(page.slug), remote: true, class: "btn btn-default btn-sm hidden-xs" do
13
+ %span.hidden-xs.hidden-sm= t('toolbar.new')
14
+ = link_to edit_page_path(page.slug), remote: true, id: "quadro-edit", class: "btn btn-default btn-sm" do
15
15
  %i.fa.fa-pencil
16
- Edit
17
- = link_to page_path(page.slug), remote: true, method: "delete", confirm: "Are you sure of delete this page?", class: "btn btn-default btn-sm hidden-xs" do
18
- %i.fa.fa-trash-o
19
- Delete
16
+ %span.hidden-xs.hidden-sm= t('toolbar.edit')
17
+ = link_to page_path(page.slug), remote: true, method: "delete", confirm: t('confirmation.page'), id: "quadro-delete", class: "btn btn-default btn-sm" do
18
+ %i.fa.fa-trash-o.text-danger
19
+ %span.hidden-xs.hidden-sm.text-danger= t('toolbar.delete')
20
20
  - unless page.is_root?
21
- - if page.published?
22
- = link_to unpublish_page_path(page.slug), remote: true, class: "btn btn-default btn-sm hidden-xs" do
23
- %i.fa.fa-eye-slash
24
- Unpublish
25
- - else
26
- = link_to publish_page_path(page.slug), remote: true, class: "btn btn-default btn-sm hidden-xs" do
27
- %i.fa.fa-eye
28
- Publish
29
- .btn-group.visible-xs-inline-block(role='group')
30
- = link_to new_page_path(parent_id: page.id), remote: true, class: "btn btn-default btn-sm" do
31
- %i.fa.fa-plus
32
- = link_to edit_page_path(page.slug), remote: true, class: "btn btn-default btn-sm" do
33
- %i.fa.fa-pencil
34
- = link_to page_path(page.slug), remote: true, method: "delete", confirm: "Are you sure of delete this page?", class: "btn btn-default btn-sm" do
35
- %i.fa.fa-trash-o
36
- - unless page.is_root?
37
- - if page.published?
38
- = link_to unpublish_page_path(page.slug), remote: true, class: "btn btn-default btn-sm" do
39
- %i.fa.fa-eye-slash
40
- - else
41
- = link_to publish_page_path(page.slug), remote: true, class: "btn btn-default btn-sm" do
42
- %i.fa.fa-eye
21
+ = link_to unpublish_page_path(page.slug), remote: true, id: "quadro-unpublish", class: "btn btn-default btn-sm #{page.unpublished? ? 'hidden' : ''}" do
22
+ %i.fa.fa-eye-slash
23
+ %span.hidden-xs.hidden-sm= t('toolbar.unpublish')
24
+ = link_to publish_page_path(page.slug), remote: true, id: "quadro-publish", class: "btn btn-default btn-sm #{page.published? ? 'hidden' : ''}" do
25
+ %i.fa.fa-eye
26
+ %span.hidden-xs.hidden-sm= t('toolbar.publish')
43
27
  .pull-right
44
28
  %a#quadro-save.btn.btn-default.btn-sm.hide
45
29
  %i.fa.fa-floppy-o
46
- Save changes
30
+ %span.hidden-xs.hidden-sm= t('toolbar.save')
47
31
  %a#quadro-gallery-toggle.btn.btn-default.btn-sm.hidden-xs.hidden-sm
48
32
  %i.fa.fa-picture-o
49
- Image gallery
50
- %span.hidden-xs.hidden-sm Editor:
51
- .btn-group.hidden-xs.hidden-sm(role='group')
52
- %button#quadro-airmode-off.btn.btn-default.btn-sm(type='button')
53
- %i.fa.fa-toggle-on
54
- %button#quadro-airmode-on.btn.btn-default.btn-sm.active(type='button')
55
- %i.fa.fa-toggle-off
33
+ %span= t('toolbar.gallery')
34
+ %span.hidden-xs.hidden-sm= t('toolbar.editor')
35
+ %button#quadro-airmode-off.btn.btn-default.btn-sm.hidden-xs.hidden-sm(type='button')
36
+ %i.fa.fa-toggle-on
37
+ %button#quadro-airmode-on.btn.btn-default.btn-sm.hidden-xs.hidden-sm.hidden(type='button')
38
+ %i.fa.fa-toggle-off
56
39
  .btn-group.dropup.hidden-xs
57
40
  %button.btn.btn-default.btn-sm.dropdown-toggle(type='button' data-toggle='dropdown')
58
41
  = gravatar_image_tag(current_user.email, alt: current_user.email, title: current_user.email, gravatar: { size: 16 }, class: 'img-rounded')
@@ -63,14 +46,14 @@
63
46
  %li
64
47
  = link_to sitemap_notifier_path, remote: true do
65
48
  %i.fa.fa-sitemap
66
- Notify sitemap.xml
49
+ = t('toolbar.sitemap')
67
50
  %li
68
51
  = link_to edit_user_path, remote: true do
69
52
  %i.fa.fa-user
70
- Edit user
53
+ = t('toolbar.profile')
71
54
  %li
72
55
  = link_to destroy_user_session_path, method: :delete do
73
56
  %i.fa.fa-sign-out
74
- Sign Out
57
+ = t('toolbar.sign_out')
75
58
  = link_to destroy_user_session_url, method: :delete, class: "btn btn-default btn-sm visible-xs-inline-block hidden-sm" do
76
- Sign Out
59
+ = t('toolbar.sign_out')
@@ -5,5 +5,5 @@
5
5
  .media-body
6
6
  %h4.media-heading
7
7
  = link_to page.title, page_path(page)
8
- %small.text-muted= l(page.published_at, format: :short)
8
+ %small.text-muted= l(page.published_at, format: :short) unless page.unpublished?
9
9
  %p= page.summary
@@ -5,5 +5,5 @@
5
5
  .caption
6
6
  %h2
7
7
  = link_to page.title, page_path(page)
8
- %small.text-muted= l(page.published_at, format: :short)
8
+ %small.text-muted= l(page.published_at, format: :short) unless page.unpublished?
9
9
  %p= page.summary
@@ -1 +0,0 @@
1
- new Message('Sitemap notified');
@@ -1,7 +1,5 @@
1
- <% if user.errors.size > 0 %>
1
+ <% if user.changed? %>
2
2
  $("#quadro-modal .modal-content").html("<%= escape_javascript(render('quadro/users/edit', user: user)) %>");
3
- new Message('User not updated');
4
3
  <% else %>
5
4
  $("#quadro-modal").modal('hide');
6
- new Message('User updated');
7
5
  <% end %>
@@ -4,4 +4,4 @@
4
4
  .text-muted.text-uppercase Form
5
5
  .pull-right
6
6
  %button.btn.btn-link.btn-xs
7
- %i.fa.fa-cog.text-muted
7
+ %i.fa.fa-pencil.text-muted
@@ -4,4 +4,4 @@
4
4
  .text-muted.text-uppercase Gallery
5
5
  .pull-right
6
6
  %button.btn.btn-link.btn-xs
7
- %i.fa.fa-cog.text-muted
7
+ %i.fa.fa-pencil.text-muted
@@ -4,4 +4,4 @@
4
4
  .text-muted.text-uppercase Html
5
5
  .pull-right
6
6
  %button.btn.btn-link.btn-xs
7
- %i.fa.fa-cog.text-muted
7
+ %i.fa.fa-pencil.text-muted
@@ -4,4 +4,4 @@
4
4
  .text-muted.text-uppercase Map
5
5
  .pull-right
6
6
  %button.btn.btn-link.btn-xs
7
- %i.fa.fa-cog.text-muted
7
+ %i.fa.fa-pencil.text-muted
@@ -4,4 +4,4 @@
4
4
  .text-muted.text-uppercase Slider
5
5
  .pull-right
6
6
  %button.btn.btn-link.btn-xs
7
- %i.fa.fa-cog.text-muted
7
+ %i.fa.fa-pencil.text-muted
@@ -4,4 +4,4 @@
4
4
  .text-muted.text-uppercase Video
5
5
  .pull-right
6
6
  %button.btn.btn-link.btn-xs
7
- %i.fa.fa-cog.text-muted
7
+ %i.fa.fa-pencil.text-muted
@@ -1,6 +1,5 @@
1
- %p
2
- Hello #{@resource.email}!
3
- %p Someone has requested a link to change your password. You can do this through the link below.
4
- %p= link_to 'Change my password', edit_password_url(@resource, reset_password_token: @token)
5
- %p If you didn't request this, please ignore this email.
6
- %p Your password won't change until you access the link above and create a new one.
1
+ %p= t('devise.mailer.reset_password_instructions.greeting', recipient: @resource.email)
2
+ %p= t('devise.mailer.reset_password_instructions.instruction')
3
+ %p= link_to t('devise.mailer.reset_password_instructions.action'), edit_password_url(@resource, reset_password_token: @token)
4
+ %p= t('devise.mailer.reset_password_instructions.instruction_2')
5
+ %p= t('devise.mailer.reset_password_instructions.instruction_3')
@@ -1,5 +1,4 @@
1
- %p
2
- Hello #{@resource.email}!
3
- %p Your account has been locked due to an excessive number of unsuccessful sign in attempts.
4
- %p Click the link below to unlock your account:
5
- %p= link_to 'Unlock my account', unlock_url(@resource, unlock_token: @token)
1
+ %p= t('devise.mailer.unlock_instructions.greeting', recipient: @resource.email)
2
+ %p= t('devise.mailer.unlock_instructions.message')
3
+ %p= t('devise.mailer.unlock_instructions.instruction')
4
+ %p= link_to t('devise.mailer.unlock_instructions.action'), unlock_url(@resource, unlock_token: @token)