tr8n 3.1.8 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +2 -1
- data/.rspec +1 -0
- data/.rvmrc +1 -1
- data/.watchr +18 -0
- data/Gemfile.lock +16 -10
- data/app/assets/images/tr8n/minus_node.png +0 -0
- data/app/assets/images/tr8n/pixel.gif +0 -0
- data/app/assets/images/tr8n/plus_node.png +0 -0
- data/app/assets/javascripts/tr8n/tr8n.js +1 -0
- data/app/assets/javascripts/tr8n/tr8n_client_sdk.js +581 -425
- data/app/assets/stylesheets/tr8n/layout.css.scss +1 -1
- data/app/assets/stylesheets/tr8n/tr8n.css.scss +20 -0
- data/app/controllers/tr8n/admin/base_controller.rb +4 -1
- data/app/controllers/tr8n/admin/clientsdk_controller.rb +1 -1
- data/app/controllers/tr8n/admin/metrics_controller.rb +30 -0
- data/app/controllers/tr8n/api/v1/base_controller.rb +12 -0
- data/app/controllers/tr8n/api/v1/language_controller.rb +7 -5
- data/app/controllers/tr8n/awards_controller.rb +1 -1
- data/app/controllers/tr8n/base_controller.rb +12 -6
- data/app/controllers/tr8n/dashboard_controller.rb +1 -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/phrases_controller.rb +1 -1
- data/app/controllers/tr8n/translator_controller.rb +8 -0
- data/app/helpers/tr8n/admin/base_helper.rb +1 -1
- data/app/helpers/tr8n/base_helper.rb +1 -1
- data/app/helpers/tr8n/dashboard_helper.rb +1 -1
- 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 +19 -7
- 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 +1 -1
- data/app/models/tr8n/language_forum_message_filter.rb +1 -1
- data/app/models/tr8n/language_forum_topic.rb +1 -1
- data/app/models/tr8n/language_forum_topic_filter.rb +1 -1
- data/app/models/tr8n/language_metric.rb +1 -1
- data/app/models/tr8n/language_metric_filter.rb +1 -1
- data/app/models/tr8n/language_rule.rb +1 -1
- data/app/models/tr8n/language_rule_filter.rb +1 -1
- data/app/models/tr8n/language_user.rb +1 -1
- 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 +1 -1
- data/app/models/tr8n/numeric_rule.rb +35 -28
- data/app/models/tr8n/sync_log.rb +1 -1
- data/app/models/tr8n/sync_log_filter.rb +1 -1
- data/app/models/tr8n/total_language_metric.rb +1 -1
- data/app/models/tr8n/translation.rb +4 -3
- data/app/models/tr8n/translation_domain.rb +11 -3
- 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 +73 -36
- 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 +1 -1
- data/app/models/tr8n/translation_key_lock_filter.rb +1 -1
- data/app/models/tr8n/translation_key_source.rb +16 -5
- data/app/models/tr8n/translation_key_source_filter.rb +1 -1
- data/app/models/tr8n/translation_source.rb +12 -4
- data/app/models/tr8n/translation_source_filter.rb +1 -1
- data/app/models/tr8n/translation_source_language.rb +1 -1
- data/app/models/tr8n/translation_vote.rb +1 -1
- data/app/models/tr8n/translation_vote_filter.rb +1 -1
- data/app/models/tr8n/translator.rb +21 -5
- data/app/models/tr8n/translator_filter.rb +1 -1
- data/app/models/tr8n/translator_following.rb +1 -1
- data/app/models/tr8n/translator_following_filter.rb +1 -1
- data/app/models/tr8n/translator_log.rb +3 -3
- data/app/models/tr8n/translator_log_filter.rb +1 -1
- data/app/models/tr8n/translator_metric.rb +1 -1
- data/app/models/tr8n/translator_metric_filter.rb +1 -1
- data/app/models/tr8n/translator_report.rb +1 -1
- data/app/models/tr8n/translator_report_filter.rb +1 -1
- data/app/models/tr8n/value_rule.rb +1 -1
- data/app/views/tr8n/admin/clientsdk/index.html.erb +29 -29
- data/app/views/tr8n/admin/clientsdk/lb_samples.html.erb +1 -1
- data/app/views/tr8n/admin/metrics/_tabs.html.erb +22 -0
- data/app/views/tr8n/admin/metrics/index.html.erb +60 -0
- data/app/views/tr8n/common/_header.html.erb +3 -1
- data/app/views/tr8n/common/_language_selector.html.erb +4 -2
- data/app/views/tr8n/common/_scripts.html.erb +5 -0
- data/app/views/tr8n/common/_terms_of_service.html.erb +53 -0
- data/app/views/tr8n/help/credits.html.erb +4 -0
- data/app/views/tr8n/language/_select.html.erb +5 -1
- data/app/views/tr8n/translator/registration.html.erb +21 -0
- data/config/routes.rb +3 -1
- data/doc/classes.graffle +356 -7194
- data/lib/generators/tr8n/templates/config/tr8n/config.yml +9 -1
- data/lib/generators/tr8n/templates/config/tr8n/site/shortcuts.yml +1 -1
- data/lib/generators/tr8n/templates/config/tr8n/tokens/decorations.yml +4 -1
- data/lib/generators/tr8n/tr8n_generator.rb +1 -1
- data/lib/tasks/tr8n.rake +1 -1
- data/lib/tr8n.rb +23 -0
- data/lib/tr8n/active_dumper.rb +1 -1
- data/lib/tr8n/cache.rb +1 -8
- data/lib/tr8n/cache_adapters/memcached.rb +1 -1
- data/lib/tr8n/config.rb +37 -1
- data/lib/tr8n/dictionary.rb +1 -1
- data/lib/tr8n/engine.rb +4 -1
- data/lib/tr8n/exception.rb +1 -1
- data/lib/tr8n/extender.rb +1 -1
- data/lib/tr8n/extensions/action_controller_extension.rb +5 -4
- data/lib/tr8n/extensions/action_view_extension.rb +71 -20
- data/lib/tr8n/extensions/array_extension.rb +14 -1
- data/lib/tr8n/extensions/date_extension.rb +1 -1
- data/lib/tr8n/extensions/fixnum_extension.rb +1 -1
- data/lib/tr8n/extensions/hash_extension.rb +1 -1
- data/lib/tr8n/extensions/string_extension.rb +1 -1
- data/lib/tr8n/extensions/time_extension.rb +1 -1
- data/lib/tr8n/ip_address.rb +1 -1
- data/lib/tr8n/key_registration_exception.rb +1 -1
- data/lib/tr8n/keyboard_mapping.rb +1 -1
- data/lib/tr8n/logger.rb +1 -1
- data/lib/tr8n/railtie.rb +1 -1
- data/lib/tr8n/site_map.rb +1 -1
- data/lib/tr8n/site_map_section.rb +1 -1
- data/lib/tr8n/token.rb +1 -1
- data/lib/tr8n/token_exception.rb +1 -1
- data/lib/tr8n/tokenized_label.rb +2 -12
- data/lib/tr8n/tokens/data_token.rb +1 -1
- data/lib/tr8n/tokens/decoration_token.rb +1 -1
- data/lib/tr8n/tokens/hidden_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 +25 -1
- data/local/tr8n_server/app/models/user.rb +1 -0
- data/local/tr8n_server/config/environments/test.rb +1 -1
- data/local/tr8n_server/config/tr8n/config.yml +45 -39
- data/local/tr8n_server/config/tr8n/site/shortcuts.yml +1 -1
- data/local/tr8n_server/db/schema.rb +2 -0
- data/spec/controllers/awards_controller_spec.rb +22 -0
- data/spec/controllers/base_controller_spec.rb +6 -0
- data/spec/controllers/dashboard_controller_spec.rb +23 -0
- data/spec/controllers/forum_controller_spec.rb +23 -0
- data/spec/controllers/glossary_controller_spec.rb +22 -0
- data/spec/controllers/help_controller_spec.rb +22 -0
- data/spec/controllers/language_cases_controller_spec.rb +13 -0
- data/spec/controllers/language_controller_spec.rb +10 -0
- data/spec/controllers/phrases_controller_spec.rb +22 -0
- data/spec/controllers/translations_controller_spec.rb +23 -0
- data/spec/controllers/translator_controller_spec.rb +22 -0
- data/spec/lib/tokenized_label_spec.rb +42 -0
- data/spec/lib/tokens/data_token_spec.rb +49 -0
- data/spec/lib/tokens/decoration_token_spec.rb +49 -0
- data/spec/lib/tokens/hidden_token_spec.rb +53 -0
- data/spec/lib/tokens/method_token_spec.rb +61 -0
- data/spec/lib/tokens/transform_token_spec.rb +51 -0
- data/spec/models/tr8n/daily_language_metric_spec.rb +5 -0
- data/spec/models/tr8n/date_rule_spec.rb +5 -0
- data/spec/models/tr8n/gender_list_rule_spec.rb +5 -0
- data/spec/models/tr8n/gender_rule_spec.rb +141 -0
- data/spec/models/tr8n/glossary_spec.rb +5 -0
- data/spec/models/tr8n/ip_location_spec.rb +5 -0
- data/spec/models/tr8n/language_case_rule_spec.rb +5 -0
- data/spec/models/tr8n/language_case_spec.rb +5 -0
- data/spec/models/tr8n/language_case_value_map_spec.rb +5 -0
- data/spec/models/tr8n/language_forum_abuse_report_spec.rb +5 -0
- data/spec/models/tr8n/language_forum_message_spec.rb +5 -0
- data/spec/models/tr8n/language_forum_topic_spec.rb +5 -0
- data/spec/models/tr8n/language_metric_spec.rb +5 -0
- data/spec/models/tr8n/language_rule_spec.rb +5 -0
- data/spec/models/tr8n/language_spec.rb +79 -0
- data/spec/models/tr8n/language_user_spec.rb +5 -0
- data/spec/models/tr8n/list_rule_spec.rb +5 -0
- data/spec/models/tr8n/monthly_language_metric_spec.rb +5 -0
- data/spec/models/tr8n/numeric_rule_spec.rb +162 -0
- data/spec/models/tr8n/sync_log_spec.rb +5 -0
- data/spec/models/tr8n/total_language_metric_spec.rb +5 -0
- data/spec/models/tr8n/translation_domain_spec.rb +5 -0
- data/spec/models/tr8n/translation_key_comment_spec.rb +5 -0
- data/spec/models/tr8n/translation_key_lock_spec.rb +5 -0
- data/spec/models/tr8n/translation_key_source_spec.rb +5 -0
- data/spec/models/tr8n/translation_key_spec.rb +118 -0
- data/spec/models/tr8n/translation_source_language_spec.rb +5 -0
- data/spec/models/tr8n/translation_source_spec.rb +5 -0
- data/spec/models/tr8n/translation_spec.rb +5 -0
- data/spec/models/tr8n/translation_vote_spec.rb +5 -0
- data/spec/models/tr8n/translator_following_spec.rb +5 -0
- data/spec/models/tr8n/translator_log_spec.rb +5 -0
- data/spec/models/tr8n/translator_metric_spec.rb +5 -0
- data/spec/models/tr8n/translator_report_spec.rb +5 -0
- data/spec/models/tr8n/translator_spec.rb +140 -0
- data/spec/spec_helper.rb +26 -27
- data/tr8n.gemspec +3 -1
- metadata +173 -50
- data/local/tr8n_server/db/migrate/20110930041150_create_tr8n_tables.rb +0 -372
- data/spec/fake_app.rb +0 -50
- data/spec/lib/data_token_spec.rb +0 -26
- data/spec/lib/transform_token_spec.rb +0 -22
- data/spec/models/translation_key_spec.rb +0 -63
@@ -1,6 +1,6 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
#--
|
3
|
-
# Copyright (c) 2010-
|
3
|
+
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
4
4
|
#
|
5
5
|
# Permission is hereby granted, free of charge, to any person obtaining
|
6
6
|
# a copy of this software and associated documentation files (the
|
data/lib/tr8n/logger.rb
CHANGED
data/lib/tr8n/railtie.rb
CHANGED
data/lib/tr8n/site_map.rb
CHANGED
data/lib/tr8n/token.rb
CHANGED
data/lib/tr8n/token_exception.rb
CHANGED
data/lib/tr8n/tokenized_label.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#--
|
2
|
-
# Copyright (c) 2010-
|
2
|
+
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
3
|
#
|
4
4
|
# Permission is hereby granted, free of charge, to any person obtaining
|
5
5
|
# a copy of this software and associated documentation files (the
|
@@ -63,7 +63,7 @@ module Tr8n
|
|
63
63
|
hash
|
64
64
|
end
|
65
65
|
end
|
66
|
-
|
66
|
+
|
67
67
|
def tokens?
|
68
68
|
tokens.any?
|
69
69
|
end
|
@@ -125,16 +125,6 @@ module Tr8n
|
|
125
125
|
parts
|
126
126
|
end
|
127
127
|
end
|
128
|
-
|
129
|
-
def sanitized_tokens_hash
|
130
|
-
@sanitized_tokens_hash ||= begin
|
131
|
-
hash = {}
|
132
|
-
tokens.each do |token|
|
133
|
-
hash[token.sanitized_name] = token
|
134
|
-
end
|
135
|
-
hash
|
136
|
-
end
|
137
|
-
end
|
138
128
|
|
139
129
|
def allowed_token?(token)
|
140
130
|
not sanitized_tokens_hash[token.sanitized_name].nil?
|
data/lib/tr8n/version.rb
CHANGED
@@ -1,3 +1,27 @@
|
|
1
|
+
#--
|
2
|
+
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
+
# a copy of this software and associated documentation files (the
|
6
|
+
# "Software"), to deal in the Software without restriction, including
|
7
|
+
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
+
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
+
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
+
# the following conditions:
|
11
|
+
#
|
12
|
+
# The above copyright notice and this permission notice shall be
|
13
|
+
# included in all copies or substantial portions of the Software.
|
14
|
+
#
|
15
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
+
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
+
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
+
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
#++
|
23
|
+
|
24
|
+
|
1
25
|
module Tr8n
|
2
|
-
VERSION = "3.
|
26
|
+
VERSION = "3.2.0"
|
3
27
|
end
|
@@ -5,7 +5,7 @@ Tr8nServer::Application.configure do
|
|
5
5
|
# test suite. You never need to work with it otherwise. Remember that
|
6
6
|
# your test database is "scratch space" for the test suite and is wiped
|
7
7
|
# and recreated between test runs. Don't rely on the data there!
|
8
|
-
config.cache_classes =
|
8
|
+
config.cache_classes = false
|
9
9
|
|
10
10
|
# Configure static asset server for tests with Cache-Control for performance
|
11
11
|
config.serve_static_assets = true
|
@@ -7,11 +7,17 @@
|
|
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
|
-
defaults:
|
18
|
+
defaults:
|
13
19
|
enable_tr8n: true # enables the engine
|
14
|
-
enable_key_source_tracking: false # builds the site map sources
|
20
|
+
enable_key_source_tracking: false # builds the site map sources - must be enabled for the API
|
15
21
|
enable_key_caller_tracking: false # tracks all calls to labels with their traces - for debugging only
|
16
22
|
|
17
23
|
enable_glossary_hints: true # shows glossary in the translator
|
@@ -26,13 +32,16 @@ defaults:
|
|
26
32
|
enable_language_stats: true # shows percent completion of a language
|
27
33
|
|
28
34
|
enable_admin_translations: true # registers tr8n admin keys in the system
|
29
|
-
enable_admin_inline_mode:
|
35
|
+
enable_admin_inline_mode: true # allows tr8n engine sections to be inline translated
|
30
36
|
|
31
37
|
enable_language_cases: true # enables support for language cases
|
32
|
-
enable_client_sdk:
|
38
|
+
enable_client_sdk: true # allows javascript to use tr8nProxy object
|
39
|
+
enable_browser_cache: true # caches translations in the browser
|
33
40
|
|
34
41
|
enable_country_tracking: true # tracks and reports translator countries
|
35
42
|
|
43
|
+
enable_translator_tabs: true # enables translation tools tabs
|
44
|
+
|
36
45
|
#############################################################################
|
37
46
|
# Google translation suggestions is now a paid feature by Google.
|
38
47
|
#
|
@@ -45,7 +54,7 @@ defaults:
|
|
45
54
|
#############################################################################
|
46
55
|
enable_google_suggestions: false # uses google for suggestions
|
47
56
|
google_api_key: "YOUR GOOGLE API KEY" # get this API key from Google.
|
48
|
-
|
57
|
+
|
49
58
|
#############################################################################
|
50
59
|
# Featured languages can be added as a bottom strip bar on all pages using
|
51
60
|
#
|
@@ -66,7 +75,9 @@ defaults:
|
|
66
75
|
# translation. If the flag is set to false, then a user must be promoted to
|
67
76
|
# be a translator in order to submit or vote on translations.
|
68
77
|
#############################################################################
|
69
|
-
open_registration_mode:
|
78
|
+
open_registration_mode: true
|
79
|
+
enable_registration_disclaimer: false
|
80
|
+
registration_disclaimer_path: "/tr8n/common/terms_of_service"
|
70
81
|
|
71
82
|
#############################################################################
|
72
83
|
# Tr8n best run with caching enabled
|
@@ -88,7 +99,7 @@ defaults:
|
|
88
99
|
# You can also provide your own implementation of the adapter:
|
89
100
|
#
|
90
101
|
# cache_adapter: YOUR_CACHE_ADAPTER_CLASS
|
91
|
-
#
|
102
|
+
#
|
92
103
|
# Note: Make sure you enable config.class_caching in your environment file
|
93
104
|
#
|
94
105
|
#############################################################################
|
@@ -104,7 +115,7 @@ defaults:
|
|
104
115
|
#############################################################################
|
105
116
|
logger:
|
106
117
|
enabled: true
|
107
|
-
log_path: log/tr8n.log # location of the log file
|
118
|
+
log_path: "log/tr8n.log" # location of the log file
|
108
119
|
enable_paranoia_mode: true # logs every translator action
|
109
120
|
|
110
121
|
#############################################################################
|
@@ -114,7 +125,7 @@ defaults:
|
|
114
125
|
title: "Tr8n" # site title - provide your site title here
|
115
126
|
contact_email: "support@tr8n.net" # contact email for questions about translations
|
116
127
|
current_locale_method: "current_locale" # application controller method that sets and returns current locale
|
117
|
-
default_url: "/
|
128
|
+
default_url: "/" # default site url where to redirect the user if Tr8n is disabled
|
118
129
|
default_locale: "en-US" # locale of the site default language
|
119
130
|
sitemap_path: "/config/tr8n/site/sitemap.json" # location of the sitemap definition file
|
120
131
|
splash_screen: "/tr8n/common/splash_screen" # location of the Tr8n splash screen
|
@@ -138,7 +149,7 @@ defaults:
|
|
138
149
|
mugshot: mugshot
|
139
150
|
link: link
|
140
151
|
locale: locale
|
141
|
-
|
152
|
+
|
142
153
|
#############################################################################
|
143
154
|
# Rules Engine Settings
|
144
155
|
#############################################################################
|
@@ -148,33 +159,33 @@ defaults:
|
|
148
159
|
decoration_token_classes: ["Tr8n::Tokens::DecorationToken"]
|
149
160
|
allow_nil_token_values: true
|
150
161
|
numeric_rule:
|
151
|
-
token_suffixes: [count, num, age, hours, minutes, years, seconds]
|
152
|
-
object_method: to_i
|
162
|
+
token_suffixes: ["count", "num", "age", "hours", "minutes", "years", "seconds"]
|
163
|
+
object_method: "to_i"
|
153
164
|
gender_rule:
|
154
|
-
token_suffixes: [user, profile, actor, target]
|
155
|
-
object_method: gender
|
165
|
+
token_suffixes: ["user", "profile", "actor", "target", "partner"]
|
166
|
+
object_method: "gender"
|
156
167
|
method_values:
|
157
|
-
female: female
|
158
|
-
male: male
|
159
|
-
neutral: neutral
|
160
|
-
unknown: unknown
|
168
|
+
female: "female"
|
169
|
+
male: "male"
|
170
|
+
neutral: "neutral"
|
171
|
+
unknown: "unknown"
|
161
172
|
list_rule: # use list_rule if your site does not support user genders
|
162
|
-
object_method: size
|
163
|
-
token_suffixes: [list]
|
173
|
+
object_method: "size"
|
174
|
+
token_suffixes: ["list"]
|
164
175
|
gender_list_rule: # similiar to list rule, but works together with gender rule
|
165
|
-
object_method: size
|
166
|
-
token_suffixes: [list]
|
176
|
+
object_method: "size"
|
177
|
+
token_suffixes: ["list"]
|
167
178
|
date_rule:
|
168
|
-
token_suffixes: [date]
|
169
|
-
object_method: to_date
|
179
|
+
token_suffixes: ["date"]
|
180
|
+
object_method: "to_date"
|
170
181
|
value_rule:
|
171
182
|
token_suffixes: "*"
|
172
|
-
object_method: to_s
|
183
|
+
object_method: "to_s"
|
173
184
|
|
174
185
|
# minimal rank makes the translation acceptable for subsitution and counts towards the translator rank
|
175
186
|
translation_threshold: 1
|
176
187
|
|
177
|
-
viewing_user_token: viewing_user
|
188
|
+
viewing_user_token: "viewing_user"
|
178
189
|
translation_rank_styles:
|
179
190
|
-1000..-5: "color:red;font-weight:bold;"
|
180
191
|
-4..-1: "color:red;"
|
@@ -186,8 +197,11 @@ defaults:
|
|
186
197
|
#############################################################################
|
187
198
|
api:
|
188
199
|
enabled: true
|
189
|
-
response_encoding: json # options: xml, json
|
200
|
+
response_encoding: "json" # options: xml, json
|
190
201
|
allow_key_registration: true
|
202
|
+
skip_before_filters: [] # filters from application controller
|
203
|
+
before_filters: [] # filters from application controller
|
204
|
+
after_filters: [] # filters from application controller
|
191
205
|
|
192
206
|
#############################################################################
|
193
207
|
# Translator Roles - manager level is set at 1000 and anything above
|
@@ -243,11 +257,11 @@ defaults:
|
|
243
257
|
date_time: '%m/%d/%Y at %H:%M' # 01/03/1010 at 5:30
|
244
258
|
|
245
259
|
#############################################################################
|
246
|
-
# You can synchronize your translation keys and translations with
|
247
|
-
#
|
260
|
+
# You can synchronize your translation keys and translations with the
|
261
|
+
# tr8n.net service. This way you can get your site translated by
|
248
262
|
# millions of users from around the internet. Visit the following url and
|
249
263
|
# register as a developer, register your application and copy your app key
|
250
|
-
# in the
|
264
|
+
# and secret in the lines below:
|
251
265
|
#
|
252
266
|
# http://tr8n.net
|
253
267
|
#
|
@@ -265,20 +279,12 @@ defaults:
|
|
265
279
|
all_languages: false # use only enabled languages, or all languages
|
266
280
|
enable_push: false # allows translations to be pushed from the main server using the sync API
|
267
281
|
push_servers: ["tr8n.net"] # only allows those servers to push translations
|
268
|
-
|
282
|
+
|
269
283
|
#############################################################################
|
270
284
|
# Environment Settings
|
271
285
|
# You can overload any feature defined in the defaults for any environment
|
272
286
|
#############################################################################
|
273
287
|
development:
|
274
|
-
# synchronization:
|
275
|
-
# server: "http://localhost:3000" # alternative, regional locations will be available in the future
|
276
|
-
# key: "14ngS3YadRF54PArKR8mre3MJfPzJA0jxW2j2RJu" # replace this with your key
|
277
|
-
# secret: "ycFdAAQOEmxtpb8gE9M4gqQrgfU4SR1LetkXnLDZ" # replace this with your secret
|
278
|
-
# batch_size: 50 # how many kesy to send to the server at a time
|
279
|
-
# all_languages: false # use only enabled languages, or all languages
|
280
|
-
# enable_push: true # allows translations to be pushed from the main server using the sync API
|
281
|
-
# push_servers: ["localhost", "tr8n.net"] # only allows those servers to push translations
|
282
288
|
|
283
289
|
test:
|
284
290
|
|
@@ -8,7 +8,7 @@ Ctrl+Shift+I:
|
|
8
8
|
|
9
9
|
Ctrl+Shift+L:
|
10
10
|
description: Shows/hides language selector
|
11
|
-
script: "
|
11
|
+
script: "tr8nLightbox.show('/tr8n/language/select?lightbox=true', {height:500, width:400});"
|
12
12
|
|
13
13
|
Ctrl+Shift+A:
|
14
14
|
description: Displays all available languages
|
@@ -260,6 +260,7 @@ ActiveRecord::Schema.define(:version => 20111026230545) do
|
|
260
260
|
end
|
261
261
|
|
262
262
|
add_index "tr8n_translation_keys", ["key"], :name => "index_tr8n_translation_keys_on_key", :unique => true
|
263
|
+
add_index "tr8n_translation_keys", ["synced_at"], :name => "index_tr8n_translation_keys_on_synced_at"
|
263
264
|
|
264
265
|
create_table "tr8n_translation_source_languages", :force => true do |t|
|
265
266
|
t.integer "language_id"
|
@@ -304,6 +305,7 @@ ActiveRecord::Schema.define(:version => 20111026230545) do
|
|
304
305
|
end
|
305
306
|
|
306
307
|
add_index "tr8n_translations", ["created_at"], :name => "tr8n_trans_created_at"
|
308
|
+
add_index "tr8n_translations", ["synced_at"], :name => "index_tr8n_translations_on_synced_at"
|
307
309
|
add_index "tr8n_translations", ["translation_key_id", "translator_id", "language_id"], :name => "tr8n_trans_key_id_translator_id_lang_id"
|
308
310
|
add_index "tr8n_translations", ["translator_id"], :name => "r8n_trans_translator_id"
|
309
311
|
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require File.expand_path('../spec_helper', File.dirname(__FILE__))
|
2
|
+
|
3
|
+
describe Tr8n::AwardsController do
|
4
|
+
|
5
|
+
describe "guest user" do
|
6
|
+
it "should be redirect to homepage" do
|
7
|
+
get :index
|
8
|
+
response.should redirect_to('/')
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
describe "logged in user" do
|
13
|
+
it "should redirect the guest user to homepage" do
|
14
|
+
@user = User.create(:first_name => "Mike", :gender => "male")
|
15
|
+
request.session[:user_id] = @user.id
|
16
|
+
|
17
|
+
get :index
|
18
|
+
response.should be_success
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require File.expand_path('../spec_helper', File.dirname(__FILE__))
|
2
|
+
|
3
|
+
describe Tr8n::DashboardController do
|
4
|
+
|
5
|
+
describe "guest user" do
|
6
|
+
it "should be redirect to homepage" do
|
7
|
+
get :index
|
8
|
+
response.should redirect_to('/')
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
describe "logged in user" do
|
13
|
+
it "should redirect the guest user to homepage" do
|
14
|
+
@user = User.create(:first_name => "Mike", :gender => "male")
|
15
|
+
request.session[:user_id] = @user.id
|
16
|
+
|
17
|
+
get :index
|
18
|
+
response.should be_success
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
|
23
|
+
end
|