tr8n 3.1.1 → 3.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +6 -3
- data/.rspec +2 -0
- data/Gemfile +3 -6
- data/Gemfile.lock +21 -6
- data/README.rdoc +61 -33
- data/Rakefile +1 -11
- data/app/assets/images/tr8n/photo_system.gif +0 -0
- data/app/assets/stylesheets/tr8n/application.css +42 -1
- data/{test/dummy/app/assets/stylesheets/components.css.scss → app/assets/stylesheets/tr8n/component.css.scss} +0 -0
- data/{test/dummy/app/assets/stylesheets → app/assets/stylesheets/tr8n}/layout.css.scss +0 -0
- data/app/assets/stylesheets/tr8n/tr8n.css.scss +16 -8
- data/app/controllers/tr8n/admin/base_controller.rb +1 -1
- data/app/controllers/tr8n/admin/clientsdk_controller.rb +1 -1
- data/app/controllers/tr8n/admin/domain_controller.rb +1 -1
- data/app/controllers/tr8n/admin/forum_controller.rb +1 -1
- data/app/controllers/tr8n/admin/glossary_controller.rb +1 -1
- data/app/controllers/tr8n/admin/language_controller.rb +1 -1
- data/app/controllers/tr8n/admin/translation_controller.rb +1 -1
- data/app/controllers/tr8n/admin/translation_key_controller.rb +5 -1
- data/app/controllers/tr8n/admin/translator_controller.rb +1 -1
- data/app/{helpers/tr8n/application_helper.rb → controllers/tr8n/api/v1/sync_controller.rb} +6 -3
- data/app/controllers/tr8n/awards_controller.rb +12 -12
- data/app/controllers/tr8n/base_controller.rb +140 -137
- data/app/controllers/tr8n/dashboard_controller.rb +2 -1
- data/app/controllers/tr8n/forum_controller.rb +1 -1
- data/app/controllers/tr8n/glossary_controller.rb +1 -1
- data/app/controllers/tr8n/help_controller.rb +1 -1
- data/app/controllers/tr8n/language_cases_controller.rb +43 -45
- data/app/controllers/tr8n/language_controller.rb +1 -1
- data/app/controllers/tr8n/phrases_controller.rb +1 -1
- data/app/controllers/tr8n/translations_controller.rb +1 -1
- data/app/controllers/tr8n/translator_controller.rb +1 -1
- data/app/helpers/tr8n/base_helper.rb +0 -4
- data/app/models/tr8n/base_filter.rb +1 -1
- data/app/models/tr8n/daily_language_metric.rb +1 -1
- data/app/models/tr8n/date_rule.rb +1 -1
- data/app/models/tr8n/gender_list_rule.rb +1 -1
- data/app/models/tr8n/gender_rule.rb +1 -1
- data/app/models/tr8n/glossary.rb +1 -1
- data/app/models/tr8n/glossary_filter.rb +1 -1
- data/app/models/tr8n/integration/ru/russian_gender_list_rule.rb +1 -1
- data/app/models/tr8n/integration/ru/russian_numeric_rule.rb +1 -1
- data/app/models/tr8n/ip_location.rb +1 -1
- data/app/models/tr8n/ip_location_filter.rb +1 -1
- data/app/models/tr8n/language.rb +17 -8
- data/app/models/tr8n/language_case.rb +1 -1
- data/app/models/tr8n/language_case_filter.rb +1 -1
- data/app/models/tr8n/language_case_rule.rb +1 -1
- data/app/models/tr8n/language_case_rule_filter.rb +1 -1
- data/app/models/tr8n/language_case_value_map.rb +1 -1
- data/app/models/tr8n/language_case_value_map_filter.rb +1 -1
- data/app/models/tr8n/language_filter.rb +1 -1
- data/app/models/tr8n/language_forum_abuse_report.rb +1 -1
- data/app/models/tr8n/language_forum_abuse_report_filter.rb +1 -1
- data/app/models/tr8n/language_forum_message.rb +2 -2
- data/app/models/tr8n/language_forum_message_filter.rb +1 -1
- data/app/models/tr8n/language_forum_topic.rb +3 -3
- data/app/models/tr8n/language_forum_topic_filter.rb +1 -1
- data/app/models/tr8n/language_metric.rb +2 -2
- data/app/models/tr8n/language_metric_filter.rb +1 -1
- data/app/models/tr8n/language_rule.rb +37 -2
- data/app/models/tr8n/language_rule_filter.rb +1 -1
- data/app/models/tr8n/language_user.rb +3 -3
- data/app/models/tr8n/language_user_filter.rb +1 -1
- data/app/models/tr8n/list_rule.rb +1 -1
- data/app/models/tr8n/monthly_language_metric.rb +2 -2
- data/app/models/tr8n/numeric_rule.rb +1 -1
- data/app/models/tr8n/sync_log.rb +76 -0
- data/app/{controllers/tr8n/application_controller.rb → models/tr8n/sync_log_filter.rb} +4 -3
- data/app/models/tr8n/total_language_metric.rb +5 -4
- data/app/models/tr8n/translation.rb +61 -13
- data/app/models/tr8n/translation_domain.rb +1 -1
- data/app/models/tr8n/translation_domain_filter.rb +1 -1
- data/app/models/tr8n/translation_filter.rb +1 -1
- data/app/models/tr8n/translation_key.rb +33 -5
- data/app/models/tr8n/translation_key_comment.rb +1 -1
- data/app/models/tr8n/translation_key_comment_filter.rb +1 -1
- data/app/models/tr8n/translation_key_filter.rb +1 -1
- data/app/models/tr8n/translation_key_lock.rb +2 -2
- data/app/models/tr8n/translation_key_lock_filter.rb +1 -1
- data/app/models/tr8n/translation_key_source.rb +2 -2
- data/app/models/tr8n/translation_key_source_filter.rb +1 -1
- data/app/models/tr8n/translation_source.rb +2 -2
- data/app/models/tr8n/translation_source_filter.rb +1 -1
- data/app/models/tr8n/translation_vote.rb +3 -4
- data/app/models/tr8n/translation_vote_filter.rb +1 -1
- data/app/models/tr8n/translator.rb +19 -5
- data/app/models/tr8n/translator_filter.rb +1 -1
- data/app/models/tr8n/translator_following.rb +2 -2
- data/app/models/tr8n/translator_following_filter.rb +1 -1
- data/app/models/tr8n/translator_log.rb +1 -1
- data/app/models/tr8n/translator_log_filter.rb +1 -1
- data/app/models/tr8n/translator_metric.rb +15 -21
- data/app/models/tr8n/translator_metric_filter.rb +1 -1
- data/app/models/tr8n/translator_report.rb +2 -2
- data/app/models/tr8n/translator_report_filter.rb +1 -1
- data/app/models/tr8n/value_rule.rb +1 -1
- data/app/views/tr8n/admin/common/_paginator.html.erb +29 -17
- data/app/views/tr8n/admin/translation_key/_tabs.html.erb +3 -1
- data/app/views/tr8n/admin/translation_key/sync_logs.html.erb +5 -0
- data/app/views/tr8n/awards/index.html.erb +0 -2
- data/app/views/tr8n/common/_paginator.html.erb +24 -6
- data/app/views/tr8n/common/_tabs.html.erb +9 -5
- data/app/views/tr8n/forum/_messages.html.erb +1 -1
- data/app/views/tr8n/forum/index.html.erb +1 -1
- data/app/views/tr8n/glossary/index.html.erb +2 -2
- data/app/views/tr8n/{home → help}/credits.html.erb +0 -0
- data/app/views/tr8n/{home → help}/license.html.erb +0 -0
- data/app/views/tr8n/language_cases/index.html.erb +2 -2
- data/app/views/tr8n/phrases/_comments_module.html.erb +1 -1
- data/app/views/tr8n/phrases/index.html.erb +2 -6
- data/app/views/tr8n/translations/_list.html.erb +2 -6
- data/config/routes.rb +2 -2
- data/config/tr8n/config.yml +48 -13
- data/config/tr8n/rules/default_language_cases.yml +272 -0
- data/config/tr8n/tokens/data.yml +3 -1
- data/db/migrate/20111003194443_create_tr8n_sync_tables.rb +22 -0
- data/db/migrate/20111011013640_add_remote_id_to_tr8n_translators.rb +5 -0
- data/doc/classes.graffle +7049 -5152
- data/doc/classes.pdf +0 -0
- data/lib/generators/tr8n/templates/{create_tr8n_tables.rb → db/create_tr8n_tables.rb} +0 -0
- data/lib/generators/tr8n/templates/layouts/tr8n.html.erb +49 -0
- data/lib/generators/tr8n/templates/layouts/tr8n_admin.html.erb +61 -0
- data/lib/generators/tr8n/tr8n_generator.rb +11 -4
- data/lib/tasks/{tr8n_tasks.rake → tr8n.rake} +4 -0
- data/{app/controllers/tr8n/home_controller.rb → lib/tr8n/cache_adapters/memcached.rb} +12 -15
- data/lib/tr8n/config.rb +96 -53
- data/lib/tr8n/extensions/action_controller_extension.rb +1 -1
- data/lib/tr8n/extensions/action_view_extension.rb +4 -28
- data/lib/tr8n/tokens/data_token.rb +1 -1
- data/lib/tr8n/tokens/method_token.rb +1 -1
- data/lib/tr8n/tokens/transform_token.rb +1 -1
- data/lib/tr8n/version.rb +1 -1
- data/{test/dummy → local/tr8n_server}/Rakefile +1 -1
- data/{test/dummy → local/tr8n_server}/app/assets/javascripts/application.js +0 -0
- data/{test/dummy → local/tr8n_server}/app/assets/stylesheets/admin.css +0 -0
- data/{test/dummy → local/tr8n_server}/app/assets/stylesheets/application.css +0 -0
- data/local/tr8n_server/app/assets/stylesheets/components.css.scss +211 -0
- data/local/tr8n_server/app/assets/stylesheets/layout.css.scss +143 -0
- data/{test/dummy → local/tr8n_server}/app/controllers/admin/admins_controller.rb +0 -0
- data/{test/dummy → local/tr8n_server}/app/controllers/admin/base_controller.rb +0 -0
- data/{test/dummy → local/tr8n_server}/app/controllers/admin/users_controller.rb +0 -0
- data/{test/dummy → local/tr8n_server}/app/controllers/application_controller.rb +5 -0
- data/{test/dummy → local/tr8n_server}/app/controllers/demo_controller.rb +0 -0
- data/local/tr8n_server/app/controllers/home_controller.rb +4 -0
- data/{test/dummy → local/tr8n_server}/app/controllers/login_controller.rb +1 -1
- data/{test/dummy → local/tr8n_server}/app/helpers/application_helper.rb +0 -0
- data/{test/dummy → local/tr8n_server}/app/helpers/home_helper.rb +0 -0
- data/{test/dummy → local/tr8n_server}/app/mailers/.gitkeep +0 -0
- data/{test/dummy → local/tr8n_server}/app/models/.gitkeep +0 -0
- data/{test/dummy → local/tr8n_server}/app/models/admin.rb +0 -0
- data/{test/dummy → local/tr8n_server}/app/models/admin_filter.rb +0 -0
- data/{test/dummy → local/tr8n_server}/app/models/user.rb +0 -0
- data/{test/dummy → local/tr8n_server}/app/views/admin/admins/index.html.erb +0 -0
- data/{test/dummy → local/tr8n_server}/app/views/admin/users/index.html.erb +0 -0
- data/{test/dummy → local/tr8n_server}/app/views/demo/index.rhtml +0 -0
- data/{test/dummy → local/tr8n_server}/app/views/demo/tokens.rhtml +0 -0
- data/{app/views/tr8n → local/tr8n_server/app/views}/home/index.html.erb +1 -2
- data/local/tr8n_server/app/views/kaminari/_first_page.html.erb +11 -0
- data/local/tr8n_server/app/views/kaminari/_gap.html.erb +8 -0
- data/local/tr8n_server/app/views/kaminari/_last_page.html.erb +11 -0
- data/local/tr8n_server/app/views/kaminari/_next_page.html.erb +11 -0
- data/local/tr8n_server/app/views/kaminari/_page.html.erb +12 -0
- data/local/tr8n_server/app/views/kaminari/_paginator.html.erb +23 -0
- data/local/tr8n_server/app/views/kaminari/_prev_page.html.erb +11 -0
- data/{test/dummy → local/tr8n_server}/app/views/layouts/_flashes.html.erb +0 -0
- data/{test/dummy → local/tr8n_server}/app/views/layouts/_footer.html.erb +3 -3
- data/{test/dummy → local/tr8n_server}/app/views/layouts/_header.html.erb +1 -1
- data/{test/dummy → local/tr8n_server}/app/views/layouts/admin.html.erb +0 -0
- data/{test/dummy → local/tr8n_server}/app/views/layouts/application.html.erb +0 -0
- data/local/tr8n_server/app/views/layouts/tr8n.html.erb +51 -0
- data/local/tr8n_server/app/views/layouts/tr8n_admin.html.erb +61 -0
- data/{test/dummy → local/tr8n_server}/app/views/login/index.html.erb +0 -0
- data/{test/dummy → local/tr8n_server}/app/views/login/register.html.erb +8 -13
- data/{test/dummy → local/tr8n_server}/config.ru +1 -1
- data/{test/dummy → local/tr8n_server}/config/application.rb +2 -1
- data/{test/dummy → local/tr8n_server}/config/boot.rb +0 -0
- data/{test/dummy → local/tr8n_server}/config/database.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/environment.rb +1 -1
- data/{test/dummy → local/tr8n_server}/config/environments/development.rb +3 -1
- data/{test/dummy → local/tr8n_server}/config/environments/production.rb +1 -1
- data/{test/dummy → local/tr8n_server}/config/environments/test.rb +1 -1
- data/{test/dummy → local/tr8n_server}/config/initializers/backtrace_silencers.rb +0 -0
- data/{test/dummy → local/tr8n_server}/config/initializers/inflections.rb +0 -0
- data/{test/dummy → local/tr8n_server}/config/initializers/mime_types.rb +0 -0
- data/{test/dummy → local/tr8n_server}/config/initializers/secret_token.rb +1 -1
- data/{test/dummy → local/tr8n_server}/config/initializers/session_store.rb +2 -2
- data/{test/dummy → local/tr8n_server}/config/initializers/wrap_parameters.rb +0 -0
- data/{test/dummy → local/tr8n_server}/config/locales/en.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/routes.rb +2 -2
- data/{test/dummy → local/tr8n_server}/config/tr8n/config.yml +40 -11
- data/{test/dummy → local/tr8n_server}/config/tr8n/data/ip_locations.csv +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_date_rules.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_gender_list_rules.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_gender_rules.yml +0 -0
- data/local/tr8n_server/config/tr8n/rules/default_language_cases.yml +272 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_list_rules.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_numeric_rules.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_value_rules.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/site/default_glossary.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/site/default_languages.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/site/features.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/site/shortcuts.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/site/sitemap.json +0 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/tokens/data.yml +2 -0
- data/{test/dummy → local/tr8n_server}/config/tr8n/tokens/decorations.yml +0 -0
- data/{test/dummy → local/tr8n_server}/config/will_filter/config.yml +0 -0
- data/{test/dummy → local/tr8n_server}/db/migrate/20101207014543_create_users.rb +0 -0
- data/{test/dummy → local/tr8n_server}/db/migrate/20110113223509_create_admins.rb +0 -0
- data/{test/dummy → local/tr8n_server}/db/migrate/20110930041143_create_will_filter_filters.rb +0 -0
- data/{test/dummy → local/tr8n_server}/db/migrate/20110930041150_create_tr8n_tables.rb +0 -0
- data/local/tr8n_server/db/migrate/20111003194443_create_tr8n_sync_tables.rb +22 -0
- data/local/tr8n_server/db/migrate/20111011013640_add_remote_id_to_tr8n_translators.rb +5 -0
- data/{test/dummy → local/tr8n_server}/db/schema.rb +15 -1
- data/{test/dummy → local/tr8n_server}/lib/assets/.gitkeep +0 -0
- data/{test/dummy → local/tr8n_server}/public/404.html +0 -0
- data/{test/dummy → local/tr8n_server}/public/422.html +0 -0
- data/{test/dummy → local/tr8n_server}/public/500.html +0 -0
- data/{test/dummy → local/tr8n_server}/public/favicon.ico +0 -0
- data/{test/dummy → local/tr8n_server}/script/rails +0 -0
- data/script/rails +1 -1
- data/spec/config/config_spec.rb +10 -0
- data/spec/fake_app.rb +50 -0
- data/spec/lib/data_token_spec.rb +26 -0
- data/spec/lib/transform_token_spec.rb +22 -0
- data/spec/models/translation_key_spec.rb +63 -0
- data/spec/spec_helper.rb +29 -0
- data/tr8n.gemspec +3 -1
- metadata +264 -245
- data/app/assets/images/tr8n/tr8n_logo.png +0 -0
- data/app/assets/images/tr8n/tr8n_logo2.gif +0 -0
- data/app/controllers/tr8n/login_controller.rb +0 -86
- data/app/views/layouts/_footer.html.erb +0 -15
- data/app/views/layouts/_header.html.erb +0 -12
- data/app/views/layouts/_html_head.html.erb +0 -5
- data/app/views/layouts/tr8n.html.erb +0 -21
- data/app/views/layouts/tr8n/application.html.erb +0 -14
- data/app/views/layouts/tr8n_admin.html.erb +0 -33
- data/app/views/tr8n/home/languages.html.erb +0 -7
- data/app/views/tr8n/login/index.html.erb +0 -33
- data/app/views/tr8n/login/register.html.erb +0 -57
- data/config/tr8n/rules/default_cases.yml +0 -141
- data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/actions.css.scssc +0 -0
- data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/buttons.css.scssc +0 -0
- data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/calendar.css.scssc +0 -0
- data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/exporter.css.scssc +0 -0
- data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/filter.css.scssc +0 -0
- data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/results.css.scssc +0 -0
- data/test/dummy/.sass-cache/3d45bab40fcae805deb2750a9342f5b355a9f2bf/components.css.scssc +0 -0
- data/test/dummy/.sass-cache/3d45bab40fcae805deb2750a9342f5b355a9f2bf/layout.css.scssc +0 -0
- data/test/dummy/.sass-cache/50f723c1dd802042d0091035528d53e6d5bc5b50/tr8n.css.scssc +0 -0
- data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/actions.css.scssc +0 -0
- data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/buttons.css.scssc +0 -0
- data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/calendar.css.scssc +0 -0
- data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/exporter.css.scssc +0 -0
- data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/filter.css.scssc +0 -0
- data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/results.css.scssc +0 -0
- data/test/dummy/app/assets/stylesheets/keyboard.css +0 -147
- data/test/dummy/config/tr8n/rules/default_cases.yml +0 -141
- data/test/dummy/log/.gitkeep +0 -0
- data/test/dummy/test/functional/home_controller_test.rb +0 -9
- data/test/dummy/test/unit/helpers/home_helper_test.rb +0 -4
- data/test/integration/navigation_test.rb +0 -10
- data/test/test_helper.rb +0 -10
- data/test/tr8n_test.rb +0 -7
File without changes
|
File without changes
|
@@ -19,7 +19,7 @@
|
|
19
19
|
</div>
|
20
20
|
|
21
21
|
<div style="margin-top:10px; margin-bottom:10px; border: 1px dotted #ccc; padding:10px;">
|
22
|
-
|
22
|
+
<%= tr8n_paginator_tag(@maps, :subject => 'case map') %>
|
23
23
|
|
24
24
|
<table>
|
25
25
|
<tr style="border-bottom:1px solid #ccc;">
|
@@ -46,7 +46,7 @@
|
|
46
46
|
|
47
47
|
</table>
|
48
48
|
|
49
|
-
|
49
|
+
<%= tr8n_paginator_tag(@maps, :subject => 'case map') %>
|
50
50
|
</div>
|
51
51
|
|
52
52
|
<%= render :partial => "/tr8n/common/footer" %>
|
@@ -8,7 +8,7 @@
|
|
8
8
|
<div class="section" id="comments_content">
|
9
9
|
<div style="margin-bottom:10px;">
|
10
10
|
<% if @comments.any? %>
|
11
|
-
<%=tr8n_paginator_tag(@comments, "comment")%>
|
11
|
+
<%=tr8n_paginator_tag(@comments, :subject => "comment")%>
|
12
12
|
|
13
13
|
<table style="width:100%; ">
|
14
14
|
<% @comments.each do |comment| %>
|
@@ -27,9 +27,7 @@
|
|
27
27
|
</div>
|
28
28
|
|
29
29
|
<div class="section">
|
30
|
-
|
31
|
-
<%= tr8n_paginator_tag(@translation_keys, 'phrase') %>
|
32
|
-
<% end %>
|
30
|
+
<%= tr8n_paginator_tag(@translation_keys, :subject => 'phrase') if @translation_keys.any? %>
|
33
31
|
|
34
32
|
<table style="width:100%">
|
35
33
|
<tr style="border-bottom:2px solid #ccc;">
|
@@ -72,9 +70,7 @@
|
|
72
70
|
<div style="text-align:left; padding-top:10px; font-size:12px;"><%=trla("No phrases found")%></div>
|
73
71
|
<% end %>
|
74
72
|
|
75
|
-
|
76
|
-
<%= render :partial => "/tr8n/common/paginator", :locals => {:objects => @translation_keys, :subject => 'phrase'} %>
|
77
|
-
<% end %>
|
73
|
+
<%= tr8n_paginator_tag(@translation_keys, :subject => 'phrase') if @translation_keys.any? %>
|
78
74
|
</div>
|
79
75
|
<%= render :partial => "/tr8n/common/footer" %>
|
80
76
|
|
@@ -1,6 +1,4 @@
|
|
1
|
-
|
2
|
-
<%= render :partial => "/tr8n/common/paginator", :locals => {:objects => translations, :subject => 'translation'} %>
|
3
|
-
<% end %>
|
1
|
+
<%= tr8n_paginator_tag(translations, :subject => 'translation') if mode == :list and translations.any? %>
|
4
2
|
|
5
3
|
<table style="width:100%;" cellpadding="5px" cellspacing="3px">
|
6
4
|
<tr style="border-bottom:1px solid #ccc;">
|
@@ -25,9 +23,7 @@
|
|
25
23
|
<div style="text-align:left; padding-top:10px; font-size:12px;"><%=trla("No translations found")%></div>
|
26
24
|
<% end %>
|
27
25
|
|
28
|
-
|
29
|
-
<%= render :partial => "/tr8n/common/paginator", :locals => {:objects => translations, :subject => 'translation'} %>
|
30
|
-
<% end %>
|
26
|
+
<%= tr8n_paginator_tag(translations, :subject => 'translation') if mode == :list and translations.any? %>
|
31
27
|
|
32
28
|
<% if [:edit, :view].include?(mode) %>
|
33
29
|
<script>
|
data/config/routes.rb
CHANGED
@@ -23,7 +23,7 @@
|
|
23
23
|
|
24
24
|
Tr8n::Engine.routes.draw do
|
25
25
|
[:awards, :chart, :dashboard, :forum, :glossary, :help, :language_cases,
|
26
|
-
:language, :phrases, :translations, :translator
|
26
|
+
:language, :phrases, :translations, :translator].each do |ctrl|
|
27
27
|
match "#{ctrl}(/:action)", :controller => "#{ctrl}"
|
28
28
|
end
|
29
29
|
|
@@ -37,7 +37,7 @@ Tr8n::Engine.routes.draw do
|
|
37
37
|
end
|
38
38
|
|
39
39
|
namespace :tr8n do
|
40
|
-
root :to => "
|
40
|
+
root :to => "dashboard#index"
|
41
41
|
namespace :admin do
|
42
42
|
root :to => "language#index"
|
43
43
|
end
|
data/config/tr8n/config.yml
CHANGED
@@ -7,6 +7,12 @@
|
|
7
7
|
# environment settings at the bottom of the file.
|
8
8
|
#
|
9
9
|
# Alternatively, you can overload any of the methods of Tr8n::Config
|
10
|
+
#
|
11
|
+
# If you would like to manage the configurations on the live site,
|
12
|
+
# try out the Registry gem, located here:
|
13
|
+
#
|
14
|
+
# http://www.github.com/berk/registry
|
15
|
+
#
|
10
16
|
#############################################################################
|
11
17
|
|
12
18
|
defaults: &defaults
|
@@ -63,11 +69,15 @@ defaults: &defaults
|
|
63
69
|
#
|
64
70
|
# For example:
|
65
71
|
#
|
66
|
-
#
|
67
|
-
#
|
68
|
-
#
|
69
|
-
#
|
70
|
-
#
|
72
|
+
# adapter: ActiveSupport::Cache
|
73
|
+
# store: memory_store # only for dev or test - single instance
|
74
|
+
# store: file_store # only for dev or test - single instance
|
75
|
+
# store: drb_store
|
76
|
+
# store: [mem_cache_store, 'localhost:11211'] # recommended
|
77
|
+
#
|
78
|
+
# If you choose to use memcached, don't forget to add the gem to your Gemfile:
|
79
|
+
#
|
80
|
+
# gem 'memcache-client'
|
71
81
|
#
|
72
82
|
# You can also provide your own implementation of the adapter:
|
73
83
|
#
|
@@ -76,7 +86,7 @@ defaults: &defaults
|
|
76
86
|
#############################################################################
|
77
87
|
caching:
|
78
88
|
enabled: false
|
79
|
-
adapter:
|
89
|
+
adapter: ActiveSupport::Cache
|
80
90
|
store: ['mem_cache_store', 'localhost:11211']
|
81
91
|
version: 1 # you can change the version to invalidate the cache
|
82
92
|
|
@@ -96,13 +106,13 @@ defaults: &defaults
|
|
96
106
|
title: "Tr8n" # site title - provide your site title here
|
97
107
|
contact_email: "admin@tr8n.org" # contact email for questions about translations
|
98
108
|
current_locale_method: "current_locale" # application controller method that sets and returns current locale
|
99
|
-
default_url: "/
|
109
|
+
default_url: "/" # default site url where to redirect the user if Tr8n is disabled
|
100
110
|
default_locale: "en-US" # locale of the site default language
|
101
111
|
sitemap_path: "/config/tr8n/site/sitemap.json" # location of the sitemap definition file
|
102
112
|
splash_screen: "/tr8n/common/splash_screen" # location of the Tr8n splash screen
|
103
|
-
tr8n_layout: "tr8n" # layout for the tr8n pages
|
113
|
+
tr8n_layout: "tr8n" # layout for the tr8n pages - change it to your layout
|
104
114
|
tr8n_helpers: [] # if you need to add extra helpers
|
105
|
-
admin_layout: "tr8n_admin" # layout to be used for the admin user interface
|
115
|
+
admin_layout: "tr8n_admin" # layout to be used for the admin user interface - change it to your layout
|
106
116
|
admin_helpers: [] # if you need to add extra helpers
|
107
117
|
before_filters: [] # filters from application controller
|
108
118
|
skip_before_filters: [] # filters from application controller
|
@@ -115,8 +125,8 @@ defaults: &defaults
|
|
115
125
|
id: "id"
|
116
126
|
name: "name"
|
117
127
|
gender: "gender"
|
118
|
-
admin: "admin?"
|
119
|
-
guest: "guest?"
|
128
|
+
admin: "admin?"
|
129
|
+
guest: "guest?" # if current_user is nil, the user is automatically a guest
|
120
130
|
mugshot: "mugshot"
|
121
131
|
link: "link"
|
122
132
|
locale: "locale"
|
@@ -198,8 +208,10 @@ defaults: &defaults
|
|
198
208
|
regular: 0
|
199
209
|
trusted: 50
|
200
210
|
professional: 100
|
201
|
-
manager: 1000
|
202
|
-
admin: 10000
|
211
|
+
manager: 1000 # reserved for translation tools
|
212
|
+
admin: 10000 # reserved for admin tools
|
213
|
+
application: 100000 # reserved for applications
|
214
|
+
system: 1000000 # reserved for system
|
203
215
|
|
204
216
|
default_translation_key_level: 0
|
205
217
|
#############################################################################
|
@@ -222,6 +234,29 @@ defaults: &defaults
|
|
222
234
|
monthname_abbr_year: '%b %d, %Y' # Jul 4, 2008
|
223
235
|
date_time: '%m/%d/%Y at %H:%M' # 01/03/1010 at 5:30
|
224
236
|
|
237
|
+
#############################################################################
|
238
|
+
# You can synchronize your translation keys and translations with the
|
239
|
+
# tr8n.net service. This way you can get your site translated by
|
240
|
+
# millions of users from around the internet. Visit the following url and
|
241
|
+
# register as a developer, register your application and copy your app key
|
242
|
+
# and secret in the lines below:
|
243
|
+
#
|
244
|
+
# http://tr8n.net
|
245
|
+
#
|
246
|
+
# To sychronize your translations run the following command:
|
247
|
+
#
|
248
|
+
# rake tr8n:sync
|
249
|
+
#
|
250
|
+
# You can run this command as often as your account on tr8n.net permits you.
|
251
|
+
#############################################################################
|
252
|
+
synchronization:
|
253
|
+
server: "http://tr8n.net" # alternative, regional locations will be available in the future
|
254
|
+
key: "iKjOrZjor68a4UeCD3Cq2r9t9ibBC4HnYoMNMrN7" # replace this with your key
|
255
|
+
secret: "iKjOrZjor68a4UeCD3Cq2r9t9ibBC4HnYoMNMrN7" # replace this with your secret
|
256
|
+
batch_size: 50 # how many kesy to send to the server at a time
|
257
|
+
create_rules: true # force rules creation, or skip translations for rules that don't exist
|
258
|
+
all_languages: false # use only enabled languages, or all languages
|
259
|
+
|
225
260
|
#############################################################################
|
226
261
|
# Environment Settings
|
227
262
|
# You can overload any feature defined in the defaults for any environment
|
@@ -0,0 +1,272 @@
|
|
1
|
+
#############################################################################
|
2
|
+
#
|
3
|
+
# Tr8n Default Language Cases
|
4
|
+
#
|
5
|
+
#############################################################################
|
6
|
+
|
7
|
+
en-US:
|
8
|
+
nom:
|
9
|
+
keyword: "nom"
|
10
|
+
latin_name: "Nominative"
|
11
|
+
native_name: "Nominative"
|
12
|
+
description: "Used for any noun or pronoun that is the subject of a verb"
|
13
|
+
application: "phrase"
|
14
|
+
obj:
|
15
|
+
keyword: "obj"
|
16
|
+
latin_name: "Objective"
|
17
|
+
native_name: "Objective"
|
18
|
+
description: "Used in the direct object, indirect object, object of preposition, object complement, and subject of an infinitive"
|
19
|
+
application: "phrase"
|
20
|
+
pos:
|
21
|
+
keyword: "pos"
|
22
|
+
latin_name: "Possessive"
|
23
|
+
native_name: "Possessive"
|
24
|
+
description: "Used to indicate possession (i.e., ownership). It is usually created by adding 's to the word"
|
25
|
+
application: "phrase"
|
26
|
+
rules:
|
27
|
+
1:
|
28
|
+
multipart: false
|
29
|
+
gender: none
|
30
|
+
part1: ends_in
|
31
|
+
value1: "s"
|
32
|
+
operation: append
|
33
|
+
operation_value: "'"
|
34
|
+
2:
|
35
|
+
multipart: false
|
36
|
+
gender: none
|
37
|
+
part1: does_not_end_in
|
38
|
+
value1: "s"
|
39
|
+
operation: append
|
40
|
+
operation_value: "'s"
|
41
|
+
ord:
|
42
|
+
keyword: "ord"
|
43
|
+
latin_name: "Ordinal"
|
44
|
+
native_name: "Ordinal"
|
45
|
+
description: "The adjective form of the cardinal numbers"
|
46
|
+
application: "phrase"
|
47
|
+
rules:
|
48
|
+
1:
|
49
|
+
multipart: true
|
50
|
+
gender: none
|
51
|
+
part1: ends_in
|
52
|
+
value1: "1"
|
53
|
+
operator: and
|
54
|
+
part2: does_not_end_in
|
55
|
+
value2: "11"
|
56
|
+
operation: append
|
57
|
+
operation_value: "st"
|
58
|
+
2:
|
59
|
+
multipart: true
|
60
|
+
gender: none
|
61
|
+
part1: ends_in
|
62
|
+
value1: "2"
|
63
|
+
operator: and
|
64
|
+
part2: does_not_end_in
|
65
|
+
value2: "12"
|
66
|
+
operation: append
|
67
|
+
operation_value: "nd"
|
68
|
+
3:
|
69
|
+
multipart: true
|
70
|
+
gender: none
|
71
|
+
part1: ends_in
|
72
|
+
value1: "3"
|
73
|
+
operator: and
|
74
|
+
part2: does_not_end_in
|
75
|
+
value2: "13"
|
76
|
+
operation: append
|
77
|
+
operation_value: "rd"
|
78
|
+
4:
|
79
|
+
multipart: false
|
80
|
+
gender: none
|
81
|
+
part1: ends_in
|
82
|
+
value1: "0,4,5,6,7,8,9,11,12,13"
|
83
|
+
operation: append
|
84
|
+
operation_value: "th"
|
85
|
+
times:
|
86
|
+
keyword: "times"
|
87
|
+
latin_name: "Iteration"
|
88
|
+
native_name: "Iteration"
|
89
|
+
description: "The iteration form of the cardinal numbers"
|
90
|
+
application: "phrase"
|
91
|
+
rules:
|
92
|
+
1:
|
93
|
+
multipart: true
|
94
|
+
gender: none
|
95
|
+
part1: is
|
96
|
+
value1: "1"
|
97
|
+
operation: replace
|
98
|
+
operation_value: "once"
|
99
|
+
2:
|
100
|
+
multipart: true
|
101
|
+
gender: none
|
102
|
+
part1: is
|
103
|
+
value1: "2"
|
104
|
+
operation: replace
|
105
|
+
operation_value: "twice"
|
106
|
+
3:
|
107
|
+
multipart: true
|
108
|
+
gender: none
|
109
|
+
part1: is
|
110
|
+
value1: "3"
|
111
|
+
operation: replace
|
112
|
+
operation_value: "thrice"
|
113
|
+
3:
|
114
|
+
multipart: false
|
115
|
+
gender: none
|
116
|
+
part1: is_not
|
117
|
+
value1: "1,2,3"
|
118
|
+
operation: append
|
119
|
+
operation_value: " times"
|
120
|
+
ordinal:
|
121
|
+
keyword: "ordinal"
|
122
|
+
latin_name: "Ordinal"
|
123
|
+
native_name: "Ordinal"
|
124
|
+
description: "The adjective form of the cardinal numbers"
|
125
|
+
application: "phrase"
|
126
|
+
rules:
|
127
|
+
1:
|
128
|
+
multipart: true
|
129
|
+
gender: none
|
130
|
+
part1: is
|
131
|
+
value1: "1"
|
132
|
+
operation: replace
|
133
|
+
operation_value: "first"
|
134
|
+
2:
|
135
|
+
multipart: true
|
136
|
+
gender: none
|
137
|
+
part1: is
|
138
|
+
value1: "2"
|
139
|
+
operation: replace
|
140
|
+
operation_value: "second"
|
141
|
+
3:
|
142
|
+
multipart: true
|
143
|
+
gender: none
|
144
|
+
part1: is
|
145
|
+
value1: "3"
|
146
|
+
operation: replace
|
147
|
+
operation_value: "third"
|
148
|
+
4:
|
149
|
+
multipart: true
|
150
|
+
gender: none
|
151
|
+
part1: ends_in
|
152
|
+
value1: "1"
|
153
|
+
operator: and
|
154
|
+
part2: does_not_end_in
|
155
|
+
value2: "11"
|
156
|
+
operation: append
|
157
|
+
operation_value: "st"
|
158
|
+
5:
|
159
|
+
multipart: true
|
160
|
+
gender: none
|
161
|
+
part1: ends_in
|
162
|
+
value1: "2"
|
163
|
+
operator: and
|
164
|
+
part2: does_not_end_in
|
165
|
+
value2: "12"
|
166
|
+
operation: append
|
167
|
+
operation_value: "nd"
|
168
|
+
6:
|
169
|
+
multipart: true
|
170
|
+
gender: none
|
171
|
+
part1: ends_in
|
172
|
+
value1: "3"
|
173
|
+
operator: and
|
174
|
+
part2: does_not_end_in
|
175
|
+
value2: "13"
|
176
|
+
operation: append
|
177
|
+
operation_value: "rd"
|
178
|
+
7:
|
179
|
+
multipart: false
|
180
|
+
gender: none
|
181
|
+
part1: ends_in
|
182
|
+
value1: "0,4,5,6,7,8,9,11,12,13"
|
183
|
+
operation: append
|
184
|
+
operation_value: "th"
|
185
|
+
|
186
|
+
ru:
|
187
|
+
case1:
|
188
|
+
keyword: "nom"
|
189
|
+
latin_name: "Nominativus"
|
190
|
+
native_name: "Именительный падеж"
|
191
|
+
description: "Есть - Кто? Что?"
|
192
|
+
application: "words"
|
193
|
+
case2:
|
194
|
+
keyword: "gen"
|
195
|
+
latin_name: "Genitivus"
|
196
|
+
native_name: "Родительный падеж"
|
197
|
+
description: "Нет - Кого? Чего?"
|
198
|
+
application: "words"
|
199
|
+
rules:
|
200
|
+
1:
|
201
|
+
multipart: false
|
202
|
+
gender: male
|
203
|
+
part1: ends_in
|
204
|
+
value1: "б, в, г, д, ж, з, к, л, м, н, п, р, с, т, ф, х, ц, ч, ш, щ"
|
205
|
+
operation: append
|
206
|
+
operation_value: "a"
|
207
|
+
2:
|
208
|
+
multipart: false
|
209
|
+
gender: male
|
210
|
+
part1: ends_in
|
211
|
+
value1: "й"
|
212
|
+
operation: replace
|
213
|
+
operation_value: "я"
|
214
|
+
3:
|
215
|
+
multipart: false
|
216
|
+
gender: female
|
217
|
+
part1: ends_in
|
218
|
+
value1: "а"
|
219
|
+
operation: replace
|
220
|
+
operation_value: "ы"
|
221
|
+
4:
|
222
|
+
multipart: false
|
223
|
+
gender: female
|
224
|
+
part1: ends_in
|
225
|
+
value1: "я"
|
226
|
+
operation: replace
|
227
|
+
operation_value: "и"
|
228
|
+
case3:
|
229
|
+
keyword: "dat"
|
230
|
+
latin_name: "Dativus"
|
231
|
+
native_name: "Дательный падеж"
|
232
|
+
description: "Рад - Кому? Чему?"
|
233
|
+
application: "words"
|
234
|
+
case4:
|
235
|
+
keyword: "acc"
|
236
|
+
latin_name: "Accusativus"
|
237
|
+
native_name: "Винительный падеж"
|
238
|
+
description: "Вижу - Кого? Что?"
|
239
|
+
application: "words"
|
240
|
+
case5:
|
241
|
+
keyword: "ins"
|
242
|
+
latin_name: "Instrumentalis"
|
243
|
+
native_name: "Творительный падеж"
|
244
|
+
description: "Доволен - Кем? Чем?"
|
245
|
+
application: "words"
|
246
|
+
case6:
|
247
|
+
keyword: "pre"
|
248
|
+
latin_name: "Prepositivus"
|
249
|
+
native_name: "Предложный падеж"
|
250
|
+
description: "Думаю - О ком? О чём?"
|
251
|
+
application: "words"
|
252
|
+
case7:
|
253
|
+
keyword: "pos"
|
254
|
+
latin_name: "Possessive"
|
255
|
+
native_name: "Притяжательный падеж"
|
256
|
+
description: "Чей?"
|
257
|
+
application: "words"
|
258
|
+
rules:
|
259
|
+
1:
|
260
|
+
multipart: false
|
261
|
+
gender: female
|
262
|
+
part1: ends_in
|
263
|
+
value1: "ва"
|
264
|
+
operation: replace
|
265
|
+
operation_value: "вой"
|
266
|
+
2:
|
267
|
+
multipart: false
|
268
|
+
gender: male
|
269
|
+
part1: ends_in
|
270
|
+
value1: "б, в, г, д, ж, з, к, л, м, н, п, р, с, т, ф, х, ц, ч, ш, щ"
|
271
|
+
operation: append
|
272
|
+
operation_value: "a"
|