translation_center 1.2.0 → 1.2.1

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 (71) hide show
  1. data/README.md +3 -2
  2. data/app/assets/stylesheets/translation_center/translation_keys.css +5 -0
  3. data/app/assets/stylesheets/translation_center/translations.css +0 -1
  4. data/app/helpers/translation_center/application_helper.rb +5 -0
  5. data/app/views/translation_center/translation_keys/_show.html.haml +2 -2
  6. data/app/views/translation_center/translation_keys/_show_keys.html.haml +5 -0
  7. data/app/views/translation_center/translations/_index.html.haml +1 -1
  8. data/app/views/translation_center/translations/_show.html.haml +9 -9
  9. data/lib/generators/translation_center/install/templates/config/translation_center.yml +1 -1
  10. data/lib/translation_center.rb +3 -0
  11. data/lib/translation_center/locale/en.yml +65 -0
  12. data/lib/translation_center/translation_helpers.rb +5 -3
  13. data/lib/translation_center/version.rb +1 -1
  14. data/test/dummy/app/assets/javascripts/{posts.js → articles.js} +0 -0
  15. data/test/dummy/app/assets/stylesheets/{posts.css → articles.css} +0 -0
  16. data/test/dummy/app/controllers/articles_controller.rb +85 -0
  17. data/test/dummy/app/helpers/articles_helper.rb +2 -0
  18. data/test/dummy/app/models/article.rb +5 -0
  19. data/test/dummy/app/models/user.rb +1 -5
  20. data/test/dummy/app/views/articles/_form.html.haml +16 -0
  21. data/test/dummy/app/views/articles/edit.html.haml +7 -0
  22. data/test/dummy/app/views/articles/index.html.haml +21 -0
  23. data/test/dummy/app/views/articles/new.html.haml +5 -0
  24. data/test/dummy/app/views/articles/show.html.haml +12 -0
  25. data/test/dummy/config/initializers/devise.rb +13 -5
  26. data/test/dummy/config/locales/devise.en.yml +48 -47
  27. data/test/dummy/config/locales/en.yml +0 -419
  28. data/test/dummy/config/routes.rb +4 -4
  29. data/test/dummy/config/translation_center.yml +45 -11
  30. data/test/dummy/db/migrate/{20121129070437_devise_create_users.rb → 20130410082611_devise_create_users.rb} +0 -1
  31. data/test/dummy/db/migrate/{20121121124501_create_posts.rb → 20130410082701_create_articles.rb} +2 -2
  32. data/test/dummy/db/migrate/{20121219092928182074_create_translation_center_categories.rb → 20130410084711234392_create_translation_center_categories.rb} +0 -0
  33. data/test/dummy/db/migrate/{20121219092928182741_create_translation_center_translation_keys.rb → 20130410084711235054_create_translation_center_translation_keys.rb} +0 -2
  34. data/test/dummy/db/migrate/{20121219092928183282_create_translation_center_translations.rb → 20130410084711235601_create_translation_center_translations.rb} +0 -0
  35. data/test/dummy/db/migrate/{20130103124224_install_audited.rb → 20130410084711235602_install_audited.rb} +0 -0
  36. data/test/dummy/db/migrate/{20130218091808_acts_as_votable_migration.rb → 20130410084711_acts_as_votable_migration.rb} +0 -0
  37. data/test/dummy/db/migrate/20130410113111070575_add_de_status_translation_center_translation_keys.rb +5 -0
  38. data/test/dummy/db/schema.rb +16 -18
  39. data/test/dummy/log/development.log +65885 -0
  40. data/test/dummy/test/fixtures/articles.yml +9 -0
  41. data/test/dummy/test/fixtures/users.yml +1 -1
  42. data/test/dummy/test/functional/articles_controller_test.rb +49 -0
  43. data/test/dummy/test/unit/article_test.rb +7 -0
  44. data/test/dummy/test/unit/helpers/articles_helper_test.rb +4 -0
  45. data/test/dummy/tmp/cache/assets/CD6/F30/sprockets%2F3d4924f68747fc1d600b4d7a0b181f20 +0 -0
  46. data/test/dummy/tmp/cache/assets/CDB/0B0/sprockets%2Fd44248d455dc32b5d0d0694193b9a3f3 +0 -0
  47. data/test/dummy/tmp/cache/assets/CEC/260/sprockets%2F5aac1d5511a4610034d1d00628abd48f +0 -0
  48. data/test/dummy/tmp/cache/assets/D20/350/sprockets%2F35207dd785a3f4e98ceeaf12894a5917 +0 -0
  49. data/test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  50. data/test/dummy/tmp/cache/assets/D3D/A50/sprockets%2F117dc38b0a178661ba6d8ab89dcd3654 +0 -0
  51. data/test/dummy/tmp/cache/assets/D4D/010/sprockets%2Fec636c8534d9e6236a1cd8d7a45e94a7 +0 -0
  52. data/test/dummy/tmp/cache/assets/D54/ED0/sprockets%2F71c9fa01091d432b131da3bb73faf3d4 +0 -0
  53. data/test/dummy/tmp/cache/assets/D7E/C10/sprockets%2Fd4ea295413a05aab4f4a3c04a380f3ca +0 -0
  54. data/test/dummy/tmp/cache/assets/D84/210/sprockets%2Fabd0103ccec2b428ac62c94e4c40b384 +0 -0
  55. data/test/dummy/tmp/cache/assets/D9C/E20/sprockets%2Fb865317c6a5e8d0a7287d5bbe5aeab34 +0 -0
  56. data/test/dummy/tmp/cache/assets/D9E/B80/sprockets%2F97e683d4fae31c45cfb5db8ad7151c31 +0 -0
  57. data/test/dummy/tmp/cache/assets/DA5/E10/sprockets%2F5832171b4dbe59aae921ccd70f9a9fd8 +0 -0
  58. data/test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
  59. data/test/dummy/tmp/pids/server.pid +1 -1
  60. metadata +55 -42
  61. data/test/dummy/app/controllers/posts_controller.rb +0 -84
  62. data/test/dummy/app/helpers/posts_helper.rb +0 -2
  63. data/test/dummy/app/models/post.rb +0 -3
  64. data/test/dummy/app/views/posts/_form.html.haml +0 -16
  65. data/test/dummy/app/views/posts/edit.html.haml +0 -7
  66. data/test/dummy/app/views/posts/index.html.haml +0 -22
  67. data/test/dummy/app/views/posts/new.html.haml +0 -5
  68. data/test/dummy/app/views/posts/show.html.haml +0 -12
  69. data/test/dummy/config/locales/ar.yml +0 -42
  70. data/test/dummy/config/locales/de.yml +0 -12
  71. data/test/dummy/db/migrate/20121219094037954653_add_ar_status_translation_center_translation_keys.rb +0 -5
data/README.md CHANGED
@@ -1,5 +1,6 @@
1
- ## Code Status
1
+ ## Translation Center Status
2
2
  [![Code Climate](https://codeclimate.com/github/BadrIT/translation_center.png)](https://codeclimate.com/github/BadrIT/translation_center)
3
+ [![Gem Version](https://badge.fury.io/rb/translation_center.png)](http://badge.fury.io/rb/translation_center)
3
4
 
4
5
  ## Introduction
5
6
 
@@ -33,7 +34,7 @@ Manage all app translations; collect stats, accept, add, edit, remove translatio
33
34
 
34
35
  ## Getting started
35
36
 
36
- TranslationCenter works with Rails 3.2 onwards. You can add it to your Gemfile with:
37
+ TranslationCenter works with Rails 3.1 onwards. You can add it to your Gemfile with:
37
38
 
38
39
  ```ruby
39
40
  gem 'translation_center'
@@ -40,4 +40,9 @@
40
40
 
41
41
  .key_editable {
42
42
  cursor: pointer;
43
+ }
44
+
45
+ .created_time {
46
+ font-size: 10px;
47
+ color: black;
43
48
  }
@@ -28,6 +28,5 @@
28
28
  }
29
29
 
30
30
  .votes_count {
31
- margin-left: 236px;
32
31
  margin-top: 13px;
33
32
  }
@@ -31,5 +31,10 @@ module TranslationCenter
31
31
  current_user.respond_to?(:can_admin_translations?) && current_user.can_admin_translations?
32
32
  end
33
33
 
34
+ # returns formated date
35
+ def format_date(date)
36
+ date.strftime('%e %b %Y')
37
+ end
38
+
34
39
  end
35
40
  end
@@ -8,11 +8,11 @@
8
8
  %span.badge.badge-info.pull-left.translations_count{ id: "translations_#{translation_key.id}_count"}
9
9
  = translation_key.translations.in(to_lang).count
10
10
  %span
11
- = t('.Translations')
11
+ = t('.translations')
12
12
 
13
13
  %li
14
14
  %a{"data-toggle" => "tab", :href => "#add_translations#{translation_key.id}"}
15
- = t('.Add/Edit_Translation')
15
+ = t('.add_edit_translation')
16
16
  .tab-content
17
17
 
18
18
  .tab-pane.active{ id: "translations#{translation_key.id}" }
@@ -5,6 +5,7 @@
5
5
  .translation_key_badge.badge-important{title: t('.untranslated')}
6
6
  - else
7
7
  .translation_key_badge.badge-warning{title: t('.waiting_acceptance')}
8
+
8
9
  - if translation_admin?
9
10
  %div
10
11
  = link_to '×', translation_key_path(translation_key), method: :delete, data: { confirm: t('actions.are_you_sure', :default => 'Are you sure?') }, class: 'close', remote: true
@@ -14,6 +15,10 @@
14
15
  %b
15
16
  %em
16
17
  = t(translation_key.name)
18
+ %span
19
+ %em.created_time
20
+ = t('.created_at')
21
+ = format_date(translation_key.created_at)
17
22
 
18
23
  %small
19
24
  %div{ 'data-key-id' => translation_key.id, class: "#{translation_admin? ? 'key_editable' : '' }"}
@@ -1,4 +1,4 @@
1
- = t('.sort_by:')
1
+ = t('.sort_by')
2
2
  %a.sort_by_date{ href: '#', 'data-key-id' => translation_key.id }
3
3
  = t('.date')
4
4
  %a.sort_by_votes{ href: '#', 'data-key-id' => translation_key.id }
@@ -14,21 +14,21 @@
14
14
  = t('.you')
15
15
  - else
16
16
  = translation.user.send(TranslationCenter::CONFIG['identifier_type'])
17
- = t('.on')
18
- = I18n.localize(translation.created_at, format: '%b, %d %Y')
17
+ = t('.on_date')
18
+ = format_date(translation.created_at)
19
19
  %div.translation_voting
20
- %a{href: '#'}
20
+ - if translation_admin?
21
+ = render 'translation_center/translations/accept_translation', translation: translation
22
+ .votes_count.badge.badge-success.pull-right
23
+ %span.count{ 'data-translation-id' => translation.id }
24
+ = translation.votes.count
25
+ = t('.votes')
26
+ %a.pull-right{href: '#'}
21
27
  - voted = current_user.voted_on?(translation)
22
28
  %span.badge.pull-left.translations_vote{ class: "#{voted ? 'badge-success' : ''}", 'data-translation-id' => translation.id, voted: voted.to_s}
23
29
  - if voted
24
30
  = t('.unvote')
25
31
  - else
26
32
  = t('.vote')
27
- - if translation_admin?
28
- = render 'translation_center/translations/accept_translation', translation: translation
29
- .votes_count.badge.badge-success
30
- %span.count{ 'data-translation-id' => translation.id }
31
- = translation.votes.count
32
- = t('.votes')
33
33
 
34
34
 
@@ -22,7 +22,7 @@ development:
22
22
  # "missing" to inspect only untranslated keys
23
23
  # "all" to enable inspector for translated and untranslated keys
24
24
  # "off" to turn off keys inspector
25
- inspector: 'all' # default missing
25
+ inspector: 'missing' # default missing
26
26
 
27
27
  # I18n.translate source
28
28
  i18n_source: 'db' # can be db or yaml; default is yaml
@@ -4,6 +4,9 @@ require "translation_center/translation_helpers"
4
4
  require "translation_center/translations_transfer"
5
5
 
6
6
  module TranslationCenter
7
+
8
+ # add translations for translations center
9
+ I18n.load_path += Dir[File.join(File.dirname(__FILE__), 'translation_center', 'locale', '*.yml')]
7
10
  end
8
11
 
9
12
 
@@ -0,0 +1,65 @@
1
+ en:
2
+ translation_center:
3
+ back_to_app: "Back To App"
4
+ categories:
5
+ category:
6
+ complete: Complete
7
+ keys: Keys
8
+ index:
9
+ categories: Categories
10
+ show:
11
+ all: All
12
+ pending: Pending
13
+ translated: Translated
14
+ untranslated: Untranslated
15
+ center:
16
+ activity:
17
+ ago: Ago
18
+ changes: Changes
19
+ key: Key
20
+ locale: Locale
21
+ time: Time
22
+ user: User
23
+ dashboard:
24
+ activity: Activity
25
+ all: All
26
+ controls: Controls
27
+ dashboard: Dashboard
28
+ language: Language
29
+ pending: Pending
30
+ progress: Progress
31
+ reset: Reset
32
+ search: Search
33
+ select_locale: "Select Locale"
34
+ these_actions_will_affect_existing_data: "These actions will affect existing data"
35
+ translated: Translated
36
+ untranslated: Untranslated
37
+ dashboard: Dashboard
38
+ search_keys: "Search Keys"
39
+ translate_to: "Translate To"
40
+ translation_center: "Translation Center"
41
+ translation_keys:
42
+ destroyed_successfully: "Destroyed Successfully"
43
+ show:
44
+ translations: Translations
45
+ add_edit_translation: "Add/Edit Translation"
46
+ back_to_category: "Back To Category"
47
+ destroy: Destroy
48
+ show_keys:
49
+ created_at: "created at"
50
+ translated: Translated
51
+ translation_keys:
52
+ no_translation_keys: "No Translation Keys"
53
+ translations:
54
+ accept_translation:
55
+ unaccept: Unaccept
56
+ index:
57
+ date: Date
58
+ sort_by: "Sort by"
59
+ votes: Votes
60
+ show:
61
+ by: by
62
+ on_date: "on date"
63
+ vote: Vote
64
+ votes: Votes
65
+ you: You
@@ -32,7 +32,7 @@ module TranslationCenter
32
32
  # wraps a span if inspector option is set to all
33
33
  def wrap_span(translation, translation_key)
34
34
  # put the inspector class if inspector is all and the key doesn't belongs to translation_center
35
- if TranslationCenter::CONFIG['inspector'] == 'all' && translation_key.name.split('.').first != 'translation_center'
35
+ if TranslationCenter::CONFIG['inspector'] == 'all' && translation_key.name.to_s.split('.').first != 'translation_center'
36
36
  "<span class='tc-inspector-key' data-type='#{translation_key.status(I18n.locale)}' data-id='#{translation_key.id}'> #{translation} </span>".html_safe
37
37
  else
38
38
  translation
@@ -41,7 +41,8 @@ module TranslationCenter
41
41
 
42
42
  def translate_with_adding(locale, key, options = {})
43
43
  # handle calling translation with a blank key
44
- return translate_without_adding(locale, key, options) if key.blank?
44
+ # or translation center tables don't exist
45
+ return translate_without_adding(locale, key, options) if key.blank? || !ActiveRecord::Base.connection.table_exists?('translation_center_translation_keys')
45
46
 
46
47
  # add the new key or update it
47
48
  translation_key = TranslationCenter::TranslationKey.find_or_create_by_name(key)
@@ -83,6 +84,7 @@ module I18n
83
84
  module Base
84
85
  # added another class to be used
85
86
  def html_message
87
+ category = keys.first
86
88
  key = keys.last.to_s.gsub('_', ' ').gsub(/\b('?[a-z])/) { $1.capitalize }
87
89
  translation_key = keys
88
90
  # remove locale
@@ -90,7 +92,7 @@ module I18n
90
92
 
91
93
  translation_key = TranslationCenter::TranslationKey.find_by_name(translation_key.join('.'))
92
94
  # don't put the inspector class if inspector is off or the key belongs to translation_center
93
- if TranslationCenter::CONFIG['inspector'] == 'off' || translation_key.name.split('.').first == 'translation_center'
95
+ if TranslationCenter::CONFIG['inspector'] == 'off' || category == 'translation_center'
94
96
  %(<span class="translation_missing" title="translation missing: #{keys.join('.')}">#{key}</span>)
95
97
  else
96
98
  %(<span class="translation_missing tc-inspector-key" data-type="#{translation_key.status(I18n.locale)}" data-id="#{translation_key.id}" title="translation missing: #{keys.join('.')}">#{key}</span>)
@@ -1,3 +1,3 @@
1
1
  module TranslationCenter
2
- VERSION = "1.2.0"
2
+ VERSION = "1.2.1"
3
3
  end
@@ -0,0 +1,85 @@
1
+ class ArticlesController < ApplicationController
2
+ before_filter :authenticate_user!
3
+
4
+ # GET /articles
5
+ # GET /articles.json
6
+ def index
7
+ @articles = Article.all
8
+
9
+ respond_to do |format|
10
+ format.html # index.html.erb
11
+ format.json { render json: @articles }
12
+ end
13
+ end
14
+
15
+ # GET /articles/1
16
+ # GET /articles/1.json
17
+ def show
18
+ @article = Article.find(params[:id])
19
+
20
+ respond_to do |format|
21
+ format.html # show.html.erb
22
+ format.json { render json: @article }
23
+ end
24
+ end
25
+
26
+ # GET /articles/new
27
+ # GET /articles/new.json
28
+ def new
29
+ @article = Article.new
30
+
31
+ respond_to do |format|
32
+ format.html # new.html.erb
33
+ format.json { render json: @article }
34
+ end
35
+ end
36
+
37
+ # GET /articles/1/edit
38
+ def edit
39
+ @article = Article.find(params[:id])
40
+ end
41
+
42
+ # POST /articles
43
+ # POST /articles.json
44
+ def create
45
+ @article = Article.new(params[:article])
46
+
47
+ respond_to do |format|
48
+ if @article.save
49
+ format.html { redirect_to @article, notice: 'Article was successfully created.' }
50
+ format.json { render json: @article, status: :created, location: @article }
51
+ else
52
+ format.html { render action: "new" }
53
+ format.json { render json: @article.errors, status: :unprocessable_entity }
54
+ end
55
+ end
56
+ end
57
+
58
+ # PUT /articles/1
59
+ # PUT /articles/1.json
60
+ def update
61
+ @article = Article.find(params[:id])
62
+
63
+ respond_to do |format|
64
+ if @article.update_attributes(params[:article])
65
+ format.html { redirect_to @article, notice: 'Article was successfully updated.' }
66
+ format.json { head :ok }
67
+ else
68
+ format.html { render action: "edit" }
69
+ format.json { render json: @article.errors, status: :unprocessable_entity }
70
+ end
71
+ end
72
+ end
73
+
74
+ # DELETE /articles/1
75
+ # DELETE /articles/1.json
76
+ def destroy
77
+ @article = Article.find(params[:id])
78
+ @article.destroy
79
+
80
+ respond_to do |format|
81
+ format.html { redirect_to articles_url }
82
+ format.json { head :ok }
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,2 @@
1
+ module ArticlesHelper
2
+ end
@@ -0,0 +1,5 @@
1
+ class Article < ActiveRecord::Base
2
+
3
+ attr_accessible :title, :content
4
+
5
+ end
@@ -7,14 +7,10 @@ class User < ActiveRecord::Base
7
7
 
8
8
  # Setup accessible (or protected) attributes for your model
9
9
  attr_accessible :email, :password, :password_confirmation, :remember_me
10
- # attr_accessible :title, :body
11
10
 
12
- acts_as_voter
13
11
  acts_as_translator
14
12
 
15
13
  def can_admin_translations?
16
- self.email != 'khaled@ok.com'
14
+ self.id == User.first.id
17
15
  end
18
-
19
-
20
16
  end
@@ -0,0 +1,16 @@
1
+ = form_for @article do |f|
2
+ - if @article.errors.any?
3
+ #error_explanation
4
+ %h2= "#{pluralize(@article.errors.count, "error")} prohibited this article from being saved:"
5
+ %ul
6
+ - @article.errors.full_messages.each do |msg|
7
+ %li= msg
8
+
9
+ .field
10
+ = f.label :title
11
+ = f.text_field :title
12
+ .field
13
+ = f.label :content
14
+ = f.text_area :content
15
+ .actions
16
+ = f.submit 'Save'
@@ -0,0 +1,7 @@
1
+ %h1 Editing article
2
+
3
+ = render 'form'
4
+
5
+ = link_to 'Show', @article
6
+ \|
7
+ = link_to 'Back', articles_path
@@ -0,0 +1,21 @@
1
+ %h1 Listing articles
2
+
3
+ %table
4
+ %tr
5
+ %th Title
6
+ %th Content
7
+ %th
8
+ %th
9
+ %th
10
+
11
+ - @articles.each do |article|
12
+ %tr
13
+ %td= article.title
14
+ %td= article.content
15
+ %td= link_to 'Show', article
16
+ %td= link_to 'Edit', edit_article_path(article)
17
+ %td= link_to 'Destroy', article, :method => :delete, :data => { :confirm => 'Are you sure?' }
18
+
19
+ %br
20
+
21
+ = link_to 'New Article', new_article_path
@@ -0,0 +1,5 @@
1
+ %h1 New article
2
+
3
+ = render 'form'
4
+
5
+ = link_to 'Back', articles_path
@@ -0,0 +1,12 @@
1
+ %p#notice= notice
2
+
3
+ %p
4
+ %b Title:
5
+ = @article.title
6
+ %p
7
+ %b Content:
8
+ = @article.content
9
+
10
+ = link_to 'Edit', edit_article_path(@article)
11
+ \|
12
+ = link_to 'Back', articles_path
@@ -82,7 +82,7 @@ Devise.setup do |config|
82
82
  config.stretches = Rails.env.test? ? 1 : 10
83
83
 
84
84
  # Setup a pepper to generate the encrypted password.
85
- # config.pepper = "9141e789f943c8b15f3e643b632a94305687f95a9095609d89acbc576c7b34cfe745332a4d7a90fb616ccceb934fe017c1532444dda675facfbe48a7fe1d5a73"
85
+ # config.pepper = "04916f04c90691d81f589fcb4c6a5b3ab711fc0fb33e1b061b4d0922ecb1feeee72d10bb61537350d8fa35a12513266c8b087714ae65b9e4a8ed9cc5aa56581a"
86
86
 
87
87
  # ==> Configuration for :confirmable
88
88
  # A period that the user is allowed to access the website even without
@@ -92,6 +92,14 @@ Devise.setup do |config|
92
92
  # the user cannot access the website without confirming his account.
93
93
  # config.allow_unconfirmed_access_for = 2.days
94
94
 
95
+ # A period that the user is allowed to confirm their account before their
96
+ # token becomes invalid. For example, if set to 3.days, the user can confirm
97
+ # their account within 3 days after the mail was sent, but on the fourth day
98
+ # their account can't be confirmed with the token any more.
99
+ # Default is nil, meaning there is no restriction on how long a user can take
100
+ # before confirming their account.
101
+ # config.confirm_within = 3.days
102
+
95
103
  # If true, requires any email changes to be confirmed (exactly the same way as
96
104
  # initial account confirmation) to be applied. Requires additional unconfirmed_email
97
105
  # db field (see migrations). Until confirmed new email is stored in
@@ -113,8 +121,8 @@ Devise.setup do |config|
113
121
  # config.rememberable_options = {}
114
122
 
115
123
  # ==> Configuration for :validatable
116
- # Range for password length. Default is 6..128.
117
- # config.password_length = 6..128
124
+ # Range for password length. Default is 8..128.
125
+ config.password_length = 8..128
118
126
 
119
127
  # Email regex used to validate email formats. It simply asserts that
120
128
  # an one (and only one) @ exists in the given string. This is mainly
@@ -125,7 +133,7 @@ Devise.setup do |config|
125
133
  # The time you want to timeout the user session without activity. After this
126
134
  # time the user will be asked for credentials again. Default is 30 minutes.
127
135
  # config.timeout_in = 30.minutes
128
-
136
+
129
137
  # If true, expires auth token on session timeout.
130
138
  # config.expire_auth_token_on_timeout = false
131
139
 
@@ -229,4 +237,4 @@ Devise.setup do |config|
229
237
  # When using omniauth, Devise cannot automatically set Omniauth path,
230
238
  # so you need to do it manually. For the users scope, it would be:
231
239
  # config.omniauth_path_prefix = "/my_engine/users/auth"
232
- end
240
+ end