tr8n 3.1.1 → 3.1.2

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 (265) hide show
  1. data/.gitignore +6 -3
  2. data/.rspec +2 -0
  3. data/Gemfile +3 -6
  4. data/Gemfile.lock +21 -6
  5. data/README.rdoc +61 -33
  6. data/Rakefile +1 -11
  7. data/app/assets/images/tr8n/photo_system.gif +0 -0
  8. data/app/assets/stylesheets/tr8n/application.css +42 -1
  9. data/{test/dummy/app/assets/stylesheets/components.css.scss → app/assets/stylesheets/tr8n/component.css.scss} +0 -0
  10. data/{test/dummy/app/assets/stylesheets → app/assets/stylesheets/tr8n}/layout.css.scss +0 -0
  11. data/app/assets/stylesheets/tr8n/tr8n.css.scss +16 -8
  12. data/app/controllers/tr8n/admin/base_controller.rb +1 -1
  13. data/app/controllers/tr8n/admin/clientsdk_controller.rb +1 -1
  14. data/app/controllers/tr8n/admin/domain_controller.rb +1 -1
  15. data/app/controllers/tr8n/admin/forum_controller.rb +1 -1
  16. data/app/controllers/tr8n/admin/glossary_controller.rb +1 -1
  17. data/app/controllers/tr8n/admin/language_controller.rb +1 -1
  18. data/app/controllers/tr8n/admin/translation_controller.rb +1 -1
  19. data/app/controllers/tr8n/admin/translation_key_controller.rb +5 -1
  20. data/app/controllers/tr8n/admin/translator_controller.rb +1 -1
  21. data/app/{helpers/tr8n/application_helper.rb → controllers/tr8n/api/v1/sync_controller.rb} +6 -3
  22. data/app/controllers/tr8n/awards_controller.rb +12 -12
  23. data/app/controllers/tr8n/base_controller.rb +140 -137
  24. data/app/controllers/tr8n/dashboard_controller.rb +2 -1
  25. data/app/controllers/tr8n/forum_controller.rb +1 -1
  26. data/app/controllers/tr8n/glossary_controller.rb +1 -1
  27. data/app/controllers/tr8n/help_controller.rb +1 -1
  28. data/app/controllers/tr8n/language_cases_controller.rb +43 -45
  29. data/app/controllers/tr8n/language_controller.rb +1 -1
  30. data/app/controllers/tr8n/phrases_controller.rb +1 -1
  31. data/app/controllers/tr8n/translations_controller.rb +1 -1
  32. data/app/controllers/tr8n/translator_controller.rb +1 -1
  33. data/app/helpers/tr8n/base_helper.rb +0 -4
  34. data/app/models/tr8n/base_filter.rb +1 -1
  35. data/app/models/tr8n/daily_language_metric.rb +1 -1
  36. data/app/models/tr8n/date_rule.rb +1 -1
  37. data/app/models/tr8n/gender_list_rule.rb +1 -1
  38. data/app/models/tr8n/gender_rule.rb +1 -1
  39. data/app/models/tr8n/glossary.rb +1 -1
  40. data/app/models/tr8n/glossary_filter.rb +1 -1
  41. data/app/models/tr8n/integration/ru/russian_gender_list_rule.rb +1 -1
  42. data/app/models/tr8n/integration/ru/russian_numeric_rule.rb +1 -1
  43. data/app/models/tr8n/ip_location.rb +1 -1
  44. data/app/models/tr8n/ip_location_filter.rb +1 -1
  45. data/app/models/tr8n/language.rb +17 -8
  46. data/app/models/tr8n/language_case.rb +1 -1
  47. data/app/models/tr8n/language_case_filter.rb +1 -1
  48. data/app/models/tr8n/language_case_rule.rb +1 -1
  49. data/app/models/tr8n/language_case_rule_filter.rb +1 -1
  50. data/app/models/tr8n/language_case_value_map.rb +1 -1
  51. data/app/models/tr8n/language_case_value_map_filter.rb +1 -1
  52. data/app/models/tr8n/language_filter.rb +1 -1
  53. data/app/models/tr8n/language_forum_abuse_report.rb +1 -1
  54. data/app/models/tr8n/language_forum_abuse_report_filter.rb +1 -1
  55. data/app/models/tr8n/language_forum_message.rb +2 -2
  56. data/app/models/tr8n/language_forum_message_filter.rb +1 -1
  57. data/app/models/tr8n/language_forum_topic.rb +3 -3
  58. data/app/models/tr8n/language_forum_topic_filter.rb +1 -1
  59. data/app/models/tr8n/language_metric.rb +2 -2
  60. data/app/models/tr8n/language_metric_filter.rb +1 -1
  61. data/app/models/tr8n/language_rule.rb +37 -2
  62. data/app/models/tr8n/language_rule_filter.rb +1 -1
  63. data/app/models/tr8n/language_user.rb +3 -3
  64. data/app/models/tr8n/language_user_filter.rb +1 -1
  65. data/app/models/tr8n/list_rule.rb +1 -1
  66. data/app/models/tr8n/monthly_language_metric.rb +2 -2
  67. data/app/models/tr8n/numeric_rule.rb +1 -1
  68. data/app/models/tr8n/sync_log.rb +76 -0
  69. data/app/{controllers/tr8n/application_controller.rb → models/tr8n/sync_log_filter.rb} +4 -3
  70. data/app/models/tr8n/total_language_metric.rb +5 -4
  71. data/app/models/tr8n/translation.rb +61 -13
  72. data/app/models/tr8n/translation_domain.rb +1 -1
  73. data/app/models/tr8n/translation_domain_filter.rb +1 -1
  74. data/app/models/tr8n/translation_filter.rb +1 -1
  75. data/app/models/tr8n/translation_key.rb +33 -5
  76. data/app/models/tr8n/translation_key_comment.rb +1 -1
  77. data/app/models/tr8n/translation_key_comment_filter.rb +1 -1
  78. data/app/models/tr8n/translation_key_filter.rb +1 -1
  79. data/app/models/tr8n/translation_key_lock.rb +2 -2
  80. data/app/models/tr8n/translation_key_lock_filter.rb +1 -1
  81. data/app/models/tr8n/translation_key_source.rb +2 -2
  82. data/app/models/tr8n/translation_key_source_filter.rb +1 -1
  83. data/app/models/tr8n/translation_source.rb +2 -2
  84. data/app/models/tr8n/translation_source_filter.rb +1 -1
  85. data/app/models/tr8n/translation_vote.rb +3 -4
  86. data/app/models/tr8n/translation_vote_filter.rb +1 -1
  87. data/app/models/tr8n/translator.rb +19 -5
  88. data/app/models/tr8n/translator_filter.rb +1 -1
  89. data/app/models/tr8n/translator_following.rb +2 -2
  90. data/app/models/tr8n/translator_following_filter.rb +1 -1
  91. data/app/models/tr8n/translator_log.rb +1 -1
  92. data/app/models/tr8n/translator_log_filter.rb +1 -1
  93. data/app/models/tr8n/translator_metric.rb +15 -21
  94. data/app/models/tr8n/translator_metric_filter.rb +1 -1
  95. data/app/models/tr8n/translator_report.rb +2 -2
  96. data/app/models/tr8n/translator_report_filter.rb +1 -1
  97. data/app/models/tr8n/value_rule.rb +1 -1
  98. data/app/views/tr8n/admin/common/_paginator.html.erb +29 -17
  99. data/app/views/tr8n/admin/translation_key/_tabs.html.erb +3 -1
  100. data/app/views/tr8n/admin/translation_key/sync_logs.html.erb +5 -0
  101. data/app/views/tr8n/awards/index.html.erb +0 -2
  102. data/app/views/tr8n/common/_paginator.html.erb +24 -6
  103. data/app/views/tr8n/common/_tabs.html.erb +9 -5
  104. data/app/views/tr8n/forum/_messages.html.erb +1 -1
  105. data/app/views/tr8n/forum/index.html.erb +1 -1
  106. data/app/views/tr8n/glossary/index.html.erb +2 -2
  107. data/app/views/tr8n/{home → help}/credits.html.erb +0 -0
  108. data/app/views/tr8n/{home → help}/license.html.erb +0 -0
  109. data/app/views/tr8n/language_cases/index.html.erb +2 -2
  110. data/app/views/tr8n/phrases/_comments_module.html.erb +1 -1
  111. data/app/views/tr8n/phrases/index.html.erb +2 -6
  112. data/app/views/tr8n/translations/_list.html.erb +2 -6
  113. data/config/routes.rb +2 -2
  114. data/config/tr8n/config.yml +48 -13
  115. data/config/tr8n/rules/default_language_cases.yml +272 -0
  116. data/config/tr8n/tokens/data.yml +3 -1
  117. data/db/migrate/20111003194443_create_tr8n_sync_tables.rb +22 -0
  118. data/db/migrate/20111011013640_add_remote_id_to_tr8n_translators.rb +5 -0
  119. data/doc/classes.graffle +7049 -5152
  120. data/doc/classes.pdf +0 -0
  121. data/lib/generators/tr8n/templates/{create_tr8n_tables.rb → db/create_tr8n_tables.rb} +0 -0
  122. data/lib/generators/tr8n/templates/layouts/tr8n.html.erb +49 -0
  123. data/lib/generators/tr8n/templates/layouts/tr8n_admin.html.erb +61 -0
  124. data/lib/generators/tr8n/tr8n_generator.rb +11 -4
  125. data/lib/tasks/{tr8n_tasks.rake → tr8n.rake} +4 -0
  126. data/{app/controllers/tr8n/home_controller.rb → lib/tr8n/cache_adapters/memcached.rb} +12 -15
  127. data/lib/tr8n/config.rb +96 -53
  128. data/lib/tr8n/extensions/action_controller_extension.rb +1 -1
  129. data/lib/tr8n/extensions/action_view_extension.rb +4 -28
  130. data/lib/tr8n/tokens/data_token.rb +1 -1
  131. data/lib/tr8n/tokens/method_token.rb +1 -1
  132. data/lib/tr8n/tokens/transform_token.rb +1 -1
  133. data/lib/tr8n/version.rb +1 -1
  134. data/{test/dummy → local/tr8n_server}/Rakefile +1 -1
  135. data/{test/dummy → local/tr8n_server}/app/assets/javascripts/application.js +0 -0
  136. data/{test/dummy → local/tr8n_server}/app/assets/stylesheets/admin.css +0 -0
  137. data/{test/dummy → local/tr8n_server}/app/assets/stylesheets/application.css +0 -0
  138. data/local/tr8n_server/app/assets/stylesheets/components.css.scss +211 -0
  139. data/local/tr8n_server/app/assets/stylesheets/layout.css.scss +143 -0
  140. data/{test/dummy → local/tr8n_server}/app/controllers/admin/admins_controller.rb +0 -0
  141. data/{test/dummy → local/tr8n_server}/app/controllers/admin/base_controller.rb +0 -0
  142. data/{test/dummy → local/tr8n_server}/app/controllers/admin/users_controller.rb +0 -0
  143. data/{test/dummy → local/tr8n_server}/app/controllers/application_controller.rb +5 -0
  144. data/{test/dummy → local/tr8n_server}/app/controllers/demo_controller.rb +0 -0
  145. data/local/tr8n_server/app/controllers/home_controller.rb +4 -0
  146. data/{test/dummy → local/tr8n_server}/app/controllers/login_controller.rb +1 -1
  147. data/{test/dummy → local/tr8n_server}/app/helpers/application_helper.rb +0 -0
  148. data/{test/dummy → local/tr8n_server}/app/helpers/home_helper.rb +0 -0
  149. data/{test/dummy → local/tr8n_server}/app/mailers/.gitkeep +0 -0
  150. data/{test/dummy → local/tr8n_server}/app/models/.gitkeep +0 -0
  151. data/{test/dummy → local/tr8n_server}/app/models/admin.rb +0 -0
  152. data/{test/dummy → local/tr8n_server}/app/models/admin_filter.rb +0 -0
  153. data/{test/dummy → local/tr8n_server}/app/models/user.rb +0 -0
  154. data/{test/dummy → local/tr8n_server}/app/views/admin/admins/index.html.erb +0 -0
  155. data/{test/dummy → local/tr8n_server}/app/views/admin/users/index.html.erb +0 -0
  156. data/{test/dummy → local/tr8n_server}/app/views/demo/index.rhtml +0 -0
  157. data/{test/dummy → local/tr8n_server}/app/views/demo/tokens.rhtml +0 -0
  158. data/{app/views/tr8n → local/tr8n_server/app/views}/home/index.html.erb +1 -2
  159. data/local/tr8n_server/app/views/kaminari/_first_page.html.erb +11 -0
  160. data/local/tr8n_server/app/views/kaminari/_gap.html.erb +8 -0
  161. data/local/tr8n_server/app/views/kaminari/_last_page.html.erb +11 -0
  162. data/local/tr8n_server/app/views/kaminari/_next_page.html.erb +11 -0
  163. data/local/tr8n_server/app/views/kaminari/_page.html.erb +12 -0
  164. data/local/tr8n_server/app/views/kaminari/_paginator.html.erb +23 -0
  165. data/local/tr8n_server/app/views/kaminari/_prev_page.html.erb +11 -0
  166. data/{test/dummy → local/tr8n_server}/app/views/layouts/_flashes.html.erb +0 -0
  167. data/{test/dummy → local/tr8n_server}/app/views/layouts/_footer.html.erb +3 -3
  168. data/{test/dummy → local/tr8n_server}/app/views/layouts/_header.html.erb +1 -1
  169. data/{test/dummy → local/tr8n_server}/app/views/layouts/admin.html.erb +0 -0
  170. data/{test/dummy → local/tr8n_server}/app/views/layouts/application.html.erb +0 -0
  171. data/local/tr8n_server/app/views/layouts/tr8n.html.erb +51 -0
  172. data/local/tr8n_server/app/views/layouts/tr8n_admin.html.erb +61 -0
  173. data/{test/dummy → local/tr8n_server}/app/views/login/index.html.erb +0 -0
  174. data/{test/dummy → local/tr8n_server}/app/views/login/register.html.erb +8 -13
  175. data/{test/dummy → local/tr8n_server}/config.ru +1 -1
  176. data/{test/dummy → local/tr8n_server}/config/application.rb +2 -1
  177. data/{test/dummy → local/tr8n_server}/config/boot.rb +0 -0
  178. data/{test/dummy → local/tr8n_server}/config/database.yml +0 -0
  179. data/{test/dummy → local/tr8n_server}/config/environment.rb +1 -1
  180. data/{test/dummy → local/tr8n_server}/config/environments/development.rb +3 -1
  181. data/{test/dummy → local/tr8n_server}/config/environments/production.rb +1 -1
  182. data/{test/dummy → local/tr8n_server}/config/environments/test.rb +1 -1
  183. data/{test/dummy → local/tr8n_server}/config/initializers/backtrace_silencers.rb +0 -0
  184. data/{test/dummy → local/tr8n_server}/config/initializers/inflections.rb +0 -0
  185. data/{test/dummy → local/tr8n_server}/config/initializers/mime_types.rb +0 -0
  186. data/{test/dummy → local/tr8n_server}/config/initializers/secret_token.rb +1 -1
  187. data/{test/dummy → local/tr8n_server}/config/initializers/session_store.rb +2 -2
  188. data/{test/dummy → local/tr8n_server}/config/initializers/wrap_parameters.rb +0 -0
  189. data/{test/dummy → local/tr8n_server}/config/locales/en.yml +0 -0
  190. data/{test/dummy → local/tr8n_server}/config/routes.rb +2 -2
  191. data/{test/dummy → local/tr8n_server}/config/tr8n/config.yml +40 -11
  192. data/{test/dummy → local/tr8n_server}/config/tr8n/data/ip_locations.csv +0 -0
  193. data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_date_rules.yml +0 -0
  194. data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_gender_list_rules.yml +0 -0
  195. data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_gender_rules.yml +0 -0
  196. data/local/tr8n_server/config/tr8n/rules/default_language_cases.yml +272 -0
  197. data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_list_rules.yml +0 -0
  198. data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_numeric_rules.yml +0 -0
  199. data/{test/dummy → local/tr8n_server}/config/tr8n/rules/default_value_rules.yml +0 -0
  200. data/{test/dummy → local/tr8n_server}/config/tr8n/site/default_glossary.yml +0 -0
  201. data/{test/dummy → local/tr8n_server}/config/tr8n/site/default_languages.yml +0 -0
  202. data/{test/dummy → local/tr8n_server}/config/tr8n/site/features.yml +0 -0
  203. data/{test/dummy → local/tr8n_server}/config/tr8n/site/shortcuts.yml +0 -0
  204. data/{test/dummy → local/tr8n_server}/config/tr8n/site/sitemap.json +0 -0
  205. data/{test/dummy → local/tr8n_server}/config/tr8n/tokens/data.yml +2 -0
  206. data/{test/dummy → local/tr8n_server}/config/tr8n/tokens/decorations.yml +0 -0
  207. data/{test/dummy → local/tr8n_server}/config/will_filter/config.yml +0 -0
  208. data/{test/dummy → local/tr8n_server}/db/migrate/20101207014543_create_users.rb +0 -0
  209. data/{test/dummy → local/tr8n_server}/db/migrate/20110113223509_create_admins.rb +0 -0
  210. data/{test/dummy → local/tr8n_server}/db/migrate/20110930041143_create_will_filter_filters.rb +0 -0
  211. data/{test/dummy → local/tr8n_server}/db/migrate/20110930041150_create_tr8n_tables.rb +0 -0
  212. data/local/tr8n_server/db/migrate/20111003194443_create_tr8n_sync_tables.rb +22 -0
  213. data/local/tr8n_server/db/migrate/20111011013640_add_remote_id_to_tr8n_translators.rb +5 -0
  214. data/{test/dummy → local/tr8n_server}/db/schema.rb +15 -1
  215. data/{test/dummy → local/tr8n_server}/lib/assets/.gitkeep +0 -0
  216. data/{test/dummy → local/tr8n_server}/public/404.html +0 -0
  217. data/{test/dummy → local/tr8n_server}/public/422.html +0 -0
  218. data/{test/dummy → local/tr8n_server}/public/500.html +0 -0
  219. data/{test/dummy → local/tr8n_server}/public/favicon.ico +0 -0
  220. data/{test/dummy → local/tr8n_server}/script/rails +0 -0
  221. data/script/rails +1 -1
  222. data/spec/config/config_spec.rb +10 -0
  223. data/spec/fake_app.rb +50 -0
  224. data/spec/lib/data_token_spec.rb +26 -0
  225. data/spec/lib/transform_token_spec.rb +22 -0
  226. data/spec/models/translation_key_spec.rb +63 -0
  227. data/spec/spec_helper.rb +29 -0
  228. data/tr8n.gemspec +3 -1
  229. metadata +264 -245
  230. data/app/assets/images/tr8n/tr8n_logo.png +0 -0
  231. data/app/assets/images/tr8n/tr8n_logo2.gif +0 -0
  232. data/app/controllers/tr8n/login_controller.rb +0 -86
  233. data/app/views/layouts/_footer.html.erb +0 -15
  234. data/app/views/layouts/_header.html.erb +0 -12
  235. data/app/views/layouts/_html_head.html.erb +0 -5
  236. data/app/views/layouts/tr8n.html.erb +0 -21
  237. data/app/views/layouts/tr8n/application.html.erb +0 -14
  238. data/app/views/layouts/tr8n_admin.html.erb +0 -33
  239. data/app/views/tr8n/home/languages.html.erb +0 -7
  240. data/app/views/tr8n/login/index.html.erb +0 -33
  241. data/app/views/tr8n/login/register.html.erb +0 -57
  242. data/config/tr8n/rules/default_cases.yml +0 -141
  243. data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/actions.css.scssc +0 -0
  244. data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/buttons.css.scssc +0 -0
  245. data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/calendar.css.scssc +0 -0
  246. data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/exporter.css.scssc +0 -0
  247. data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/filter.css.scssc +0 -0
  248. data/test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/results.css.scssc +0 -0
  249. data/test/dummy/.sass-cache/3d45bab40fcae805deb2750a9342f5b355a9f2bf/components.css.scssc +0 -0
  250. data/test/dummy/.sass-cache/3d45bab40fcae805deb2750a9342f5b355a9f2bf/layout.css.scssc +0 -0
  251. data/test/dummy/.sass-cache/50f723c1dd802042d0091035528d53e6d5bc5b50/tr8n.css.scssc +0 -0
  252. data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/actions.css.scssc +0 -0
  253. data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/buttons.css.scssc +0 -0
  254. data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/calendar.css.scssc +0 -0
  255. data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/exporter.css.scssc +0 -0
  256. data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/filter.css.scssc +0 -0
  257. data/test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/results.css.scssc +0 -0
  258. data/test/dummy/app/assets/stylesheets/keyboard.css +0 -147
  259. data/test/dummy/config/tr8n/rules/default_cases.yml +0 -141
  260. data/test/dummy/log/.gitkeep +0 -0
  261. data/test/dummy/test/functional/home_controller_test.rb +0 -9
  262. data/test/dummy/test/unit/helpers/home_helper_test.rb +0 -4
  263. data/test/integration/navigation_test.rb +0 -10
  264. data/test/test_helper.rb +0 -10
  265. data/test/tr8n_test.rb +0 -7
@@ -0,0 +1,26 @@
1
+ require File.expand_path('../spec_helper', File.dirname(__FILE__))
2
+
3
+ describe Tr8n::Tokens::DataToken do
4
+ describe '#register_data_tokens' do
5
+
6
+ context "registering correct data tokens" do
7
+ it "should register all tokens" do
8
+ tokens = Tr8n::Tokens::DataToken.parse("Hello {user}")
9
+ tokens.count.should == 1
10
+ tokens.first.class.name.should == "Tr8n::Tokens::DataToken"
11
+
12
+ tokens = Tr8n::Tokens::DataToken.parse("{user} has {count} messages")
13
+ tokens.count.should == 2
14
+ tokens.first.class.name.should == "Tr8n::Tokens::DataToken"
15
+ end
16
+ end
17
+
18
+ context "registering incorrect data tokens" do
19
+ it "should not register any tokens" do
20
+ Tr8n::Tokens::DataToken.parse("Hello {user:}").count.should == 0
21
+ Tr8n::Tokens::DataToken.parse("Hello {}").count.should == 0
22
+ Tr8n::Tokens::DataToken.parse("Hello {user::}").count.should == 0
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,22 @@
1
+ require File.expand_path('../spec_helper', File.dirname(__FILE__))
2
+
3
+ describe Tr8n::Tokens::TransformToken do
4
+ describe '#register_data_tokens' do
5
+
6
+ context "registering correct transform tokens" do
7
+ it "should register all tokens" do
8
+ Tr8n::Tokens::TransformToken.parse("{user:gender|his,her}").count.should == 1
9
+ Tr8n::Tokens::TransformToken.parse("{count:number|message}").count.should == 1
10
+ Tr8n::Tokens::TransformToken.parse("{count:number||message}").count.should == 1
11
+ end
12
+ end
13
+
14
+ context "registering incorrect transform tokens" do
15
+ it "should not register any tokens" do
16
+ Tr8n::Tokens::TransformToken.parse("Hello {user}").count.should == 0
17
+ Tr8n::Tokens::TransformToken.parse("Hello {user:}").count.should == 0
18
+ Tr8n::Tokens::TransformToken.parse("Hello {user::}").count.should == 0
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,63 @@
1
+ require File.expand_path('../spec_helper', File.dirname(__FILE__))
2
+
3
+ describe Tr8n::TranslationKey do
4
+ describe '#creation' do
5
+
6
+ before :all do
7
+ @user = @translator = Tr8n::Translator.create!(:name => "Mike", :user_id => 0, :gender => "male")
8
+ @user2 = @translator2 = Tr8n::Translator.create!(:name => "Anna", :user_id => 0, :gender => "female")
9
+ @english = Tr8n::Language.create!(:locale => "en-US", :english_name => "English")
10
+ @russian = Tr8n::Language.create!(:locale => "ru", :english_name => "Russian")
11
+ @spanish = Tr8n::Language.create!(:locale => "es", :english_name => "Spanish")
12
+
13
+ Tr8n::Config.init(@english.locale, @translator)
14
+ end
15
+
16
+ context "creating new translation key" do
17
+ it "should create a unique hash" do
18
+ key = Tr8n::TranslationKey.find_or_create("Hello World", "We must start with this sentence!")
19
+ assert key.key
20
+ the_key = Tr8n::TranslationKey.find_or_create("Hello World", "We must start with this sentence!")
21
+ assert key.key, the_key.key
22
+ end
23
+ end
24
+
25
+ context "creating new translation key with tokens" do
26
+ it "should parse the tokens correctly" do
27
+ key = Tr8n::TranslationKey.find_or_create("Hello {user}, you have {count} messages in your inbox")
28
+
29
+ key.key.should_not be(nil)
30
+ key.translation_tokens.should_not be_empty
31
+ key.decoration_tokens.should be_empty
32
+ key.tokens.count.should == 2
33
+ key.tokens.collect{|t| t.sanitized_name}.should include("{user}", "{count}")
34
+ key.translation_tokens.collect{|t| t.sanitized_name}.should include("{user}", "{count}")
35
+ end
36
+ end
37
+
38
+ context "translating simple strings with default language" do
39
+ it "should return original value" do
40
+ key = Tr8n::TranslationKey.find_or_create("Hello World")
41
+ key.translate(@english).should == "Hello World"
42
+
43
+ key = Tr8n::TranslationKey.find_or_create("Hello {world}")
44
+ key.translate(@english, :world => "World").should == "Hello World"
45
+
46
+ key = Tr8n::TranslationKey.find_or_create("{hello_world}")
47
+ key.translate(@english, :hello_world => "Hello World").should == "Hello World"
48
+
49
+ key = Tr8n::TranslationKey.find_or_create("Dear {user:gender}")
50
+ key.translate(@english, :user => @user).should == "Dear Mike"
51
+ key.translate(@english, :user => [@user, @user.name]).should == "Dear Mike"
52
+ key.translate(@english, :user => [@user, :name]).should == "Dear Mike"
53
+ key.translate(@english, :user => [@user, lambda{|user| user.name}]).should == "Dear Mike"
54
+ key.translate(@english, :user => [@user, lambda{|user, tom| "#{user.name} and #{tom}"}, "Tom"]).should == "Dear Mike and Tom"
55
+
56
+ # key = Tr8n::TranslationKey.find_or_create("{user:gender} updated {user:gender|his,her} profile")
57
+ # key.translate(@english, {:user => @user}).should == "Mike updated his profile"
58
+ # key.translate(@english, {:user => @user2}).should == "Anna updated her profile"
59
+ end
60
+ end
61
+
62
+ end
63
+ end
@@ -0,0 +1,29 @@
1
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
3
+ require 'rails'
4
+ require 'kaminari'
5
+ require 'database_cleaner'
6
+ require 'will_filter'
7
+ require 'tr8n'
8
+
9
+ # Ensure we use 'syck' instead of 'psych' in 1.9.2
10
+ # RubyGems >= 1.5.0 uses 'psych' on 1.9.2, but
11
+ # Psych does not yet support YAML 1.1 merge keys.
12
+ # Merge keys is often used in mongoid.yml
13
+ # See: http://redmine.ruby-lang.org/issues/show/4300
14
+ if RUBY_VERSION >= '1.9.2'
15
+ YAML::ENGINE.yamler = 'syck'
16
+ end
17
+ require File.join(File.dirname(__FILE__), 'fake_app')
18
+
19
+ require 'rspec/rails'
20
+ # Requires supporting files with custom matchers and macros, etc,
21
+ # in ./support/ and its subdirectories.
22
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
23
+
24
+ RSpec.configure do |config|
25
+ config.mock_with :rr
26
+ config.before :all do
27
+ CreateAllTables.up unless ActiveRecord::Base.connection.table_exists? 'users'
28
+ end
29
+ end
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
16
16
  s.rubyforge_project = 'tr8n'
17
17
 
18
18
  s.files = `git ls-files`.split("\n")
19
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
+ s.test_files = `git ls-files -- {test,local,spec,features}/*`.split("\n")
20
20
  s.extra_rdoc_files = ['README.rdoc']
21
21
  s.require_paths = ['lib']
22
22
 
@@ -27,6 +27,7 @@ Gem::Specification.new do |s|
27
27
  s.add_dependency 'kaminari', ['>= 0']
28
28
  s.add_dependency 'sass', ['>= 0']
29
29
  s.add_dependency 'coffee-script', ['>= 0']
30
+ s.add_development_dependency 'pry', ['>= 0']
30
31
  s.add_development_dependency 'bundler', ['>= 1.0.0']
31
32
  s.add_development_dependency 'sqlite3', ['>= 0']
32
33
  s.add_development_dependency 'rspec', ['>= 0']
@@ -36,4 +37,5 @@ Gem::Specification.new do |s|
36
37
  s.add_development_dependency 'steak', ['>= 0']
37
38
  s.add_development_dependency 'capybara', ['>= 0']
38
39
  s.add_development_dependency 'database_cleaner', ['>= 0']
40
+ s.add_development_dependency 'memcache-client', ['>= 1.8.5']
39
41
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tr8n
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.1
4
+ version: 3.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,12 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-10-01 00:00:00.000000000 -07:00
12
+ date: 2011-10-25 00:00:00.000000000 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
17
- requirement: &2168678360 !ruby/object:Gem::Requirement
17
+ requirement: &2152761660 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 3.1.0
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *2168678360
25
+ version_requirements: *2152761660
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: will_filter
28
- requirement: &2168669460 !ruby/object:Gem::Requirement
28
+ requirement: &2152761080 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: 3.1.2
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *2168669460
36
+ version_requirements: *2152761080
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: kaminari
39
- requirement: &2168668300 !ruby/object:Gem::Requirement
39
+ requirement: &2152760560 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '0'
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *2168668300
47
+ version_requirements: *2152760560
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: sass
50
- requirement: &2168667260 !ruby/object:Gem::Requirement
50
+ requirement: &2152760080 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '0'
56
56
  type: :runtime
57
57
  prerelease: false
58
- version_requirements: *2168667260
58
+ version_requirements: *2152760080
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: coffee-script
61
- requirement: &2168666080 !ruby/object:Gem::Requirement
61
+ requirement: &2152759580 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,10 +66,21 @@ dependencies:
66
66
  version: '0'
67
67
  type: :runtime
68
68
  prerelease: false
69
- version_requirements: *2168666080
69
+ version_requirements: *2152759580
70
+ - !ruby/object:Gem::Dependency
71
+ name: pry
72
+ requirement: &2152759080 !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ type: :development
79
+ prerelease: false
80
+ version_requirements: *2152759080
70
81
  - !ruby/object:Gem::Dependency
71
82
  name: bundler
72
- requirement: &2168664920 !ruby/object:Gem::Requirement
83
+ requirement: &2152758600 !ruby/object:Gem::Requirement
73
84
  none: false
74
85
  requirements:
75
86
  - - ! '>='
@@ -77,10 +88,10 @@ dependencies:
77
88
  version: 1.0.0
78
89
  type: :development
79
90
  prerelease: false
80
- version_requirements: *2168664920
91
+ version_requirements: *2152758600
81
92
  - !ruby/object:Gem::Dependency
82
93
  name: sqlite3
83
- requirement: &2168663760 !ruby/object:Gem::Requirement
94
+ requirement: &2152758120 !ruby/object:Gem::Requirement
84
95
  none: false
85
96
  requirements:
86
97
  - - ! '>='
@@ -88,10 +99,10 @@ dependencies:
88
99
  version: '0'
89
100
  type: :development
90
101
  prerelease: false
91
- version_requirements: *2168663760
102
+ version_requirements: *2152758120
92
103
  - !ruby/object:Gem::Dependency
93
104
  name: rspec
94
- requirement: &2168662920 !ruby/object:Gem::Requirement
105
+ requirement: &2152757600 !ruby/object:Gem::Requirement
95
106
  none: false
96
107
  requirements:
97
108
  - - ! '>='
@@ -99,10 +110,10 @@ dependencies:
99
110
  version: '0'
100
111
  type: :development
101
112
  prerelease: false
102
- version_requirements: *2168662920
113
+ version_requirements: *2152757600
103
114
  - !ruby/object:Gem::Dependency
104
115
  name: rspec-rails
105
- requirement: &2168660200 !ruby/object:Gem::Requirement
116
+ requirement: &2152757120 !ruby/object:Gem::Requirement
106
117
  none: false
107
118
  requirements:
108
119
  - - ! '>='
@@ -110,10 +121,10 @@ dependencies:
110
121
  version: '0'
111
122
  type: :development
112
123
  prerelease: false
113
- version_requirements: *2168660200
124
+ version_requirements: *2152757120
114
125
  - !ruby/object:Gem::Dependency
115
126
  name: factory_girl
116
- requirement: &2168656600 !ruby/object:Gem::Requirement
127
+ requirement: &2152756560 !ruby/object:Gem::Requirement
117
128
  none: false
118
129
  requirements:
119
130
  - - ! '>='
@@ -121,10 +132,10 @@ dependencies:
121
132
  version: '0'
122
133
  type: :development
123
134
  prerelease: false
124
- version_requirements: *2168656600
135
+ version_requirements: *2152756560
125
136
  - !ruby/object:Gem::Dependency
126
137
  name: rr
127
- requirement: &2168655340 !ruby/object:Gem::Requirement
138
+ requirement: &2152756080 !ruby/object:Gem::Requirement
128
139
  none: false
129
140
  requirements:
130
141
  - - ! '>='
@@ -132,10 +143,10 @@ dependencies:
132
143
  version: '0'
133
144
  type: :development
134
145
  prerelease: false
135
- version_requirements: *2168655340
146
+ version_requirements: *2152756080
136
147
  - !ruby/object:Gem::Dependency
137
148
  name: steak
138
- requirement: &2168652020 !ruby/object:Gem::Requirement
149
+ requirement: &2152755520 !ruby/object:Gem::Requirement
139
150
  none: false
140
151
  requirements:
141
152
  - - ! '>='
@@ -143,10 +154,10 @@ dependencies:
143
154
  version: '0'
144
155
  type: :development
145
156
  prerelease: false
146
- version_requirements: *2168652020
157
+ version_requirements: *2152755520
147
158
  - !ruby/object:Gem::Dependency
148
159
  name: capybara
149
- requirement: &2168648840 !ruby/object:Gem::Requirement
160
+ requirement: &2152755020 !ruby/object:Gem::Requirement
150
161
  none: false
151
162
  requirements:
152
163
  - - ! '>='
@@ -154,10 +165,10 @@ dependencies:
154
165
  version: '0'
155
166
  type: :development
156
167
  prerelease: false
157
- version_requirements: *2168648840
168
+ version_requirements: *2152755020
158
169
  - !ruby/object:Gem::Dependency
159
170
  name: database_cleaner
160
- requirement: &2168647240 !ruby/object:Gem::Requirement
171
+ requirement: &2152754520 !ruby/object:Gem::Requirement
161
172
  none: false
162
173
  requirements:
163
174
  - - ! '>='
@@ -165,7 +176,18 @@ dependencies:
165
176
  version: '0'
166
177
  type: :development
167
178
  prerelease: false
168
- version_requirements: *2168647240
179
+ version_requirements: *2152754520
180
+ - !ruby/object:Gem::Dependency
181
+ name: memcache-client
182
+ requirement: &2152753940 !ruby/object:Gem::Requirement
183
+ none: false
184
+ requirements:
185
+ - - ! '>='
186
+ - !ruby/object:Gem::Version
187
+ version: 1.8.5
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: *2152753940
169
191
  description: Crowd-sourced translation and localization engine for Rails.
170
192
  email:
171
193
  - theiceberk@gmail.com
@@ -175,6 +197,7 @@ extra_rdoc_files:
175
197
  - README.rdoc
176
198
  files:
177
199
  - .gitignore
200
+ - .rspec
178
201
  - .rvmrc
179
202
  - Gemfile
180
203
  - Gemfile.lock
@@ -509,6 +532,7 @@ files:
509
532
  - app/assets/images/tr8n/medals/silver.png
510
533
  - app/assets/images/tr8n/pencil.png
511
534
  - app/assets/images/tr8n/photo_silhouette.gif
535
+ - app/assets/images/tr8n/photo_system.gif
512
536
  - app/assets/images/tr8n/plus.png
513
537
  - app/assets/images/tr8n/random.png
514
538
  - app/assets/images/tr8n/random2.png
@@ -536,8 +560,6 @@ files:
536
560
  - app/assets/images/tr8n/top_right_stem.png
537
561
  - app/assets/images/tr8n/tr8n_loading.gif
538
562
  - app/assets/images/tr8n/tr8n_logo.jpg
539
- - app/assets/images/tr8n/tr8n_logo.png
540
- - app/assets/images/tr8n/tr8n_logo2.gif
541
563
  - app/assets/images/tr8n/tr8n_logo2.png
542
564
  - app/assets/images/tr8n/tr8n_logo_wiki.png
543
565
  - app/assets/images/tr8n/tr8n_logo_wiki2.png
@@ -553,8 +575,10 @@ files:
553
575
  - app/assets/javascripts/tr8n/tr8n_client_sdk.js
554
576
  - app/assets/javascripts/tr8n/tr8n_prototype_effects.js
555
577
  - app/assets/stylesheets/tr8n/application.css
578
+ - app/assets/stylesheets/tr8n/component.css.scss
556
579
  - app/assets/stylesheets/tr8n/keyboard_1_36.css
557
580
  - app/assets/stylesheets/tr8n/keyboard_1_44.css
581
+ - app/assets/stylesheets/tr8n/layout.css.scss
558
582
  - app/assets/stylesheets/tr8n/tr8n.css.scss
559
583
  - app/controllers/tr8n/admin/base_controller.rb
560
584
  - app/controllers/tr8n/admin/clientsdk_controller.rb
@@ -567,24 +591,21 @@ files:
567
591
  - app/controllers/tr8n/admin/translator_controller.rb
568
592
  - app/controllers/tr8n/api/v1/base_controller.rb
569
593
  - app/controllers/tr8n/api/v1/language_controller.rb
594
+ - app/controllers/tr8n/api/v1/sync_controller.rb
570
595
  - app/controllers/tr8n/api/v1/translation_controller.rb
571
596
  - app/controllers/tr8n/api/v1/translator_controller.rb
572
- - app/controllers/tr8n/application_controller.rb
573
597
  - app/controllers/tr8n/awards_controller.rb
574
598
  - app/controllers/tr8n/base_controller.rb
575
599
  - app/controllers/tr8n/dashboard_controller.rb
576
600
  - app/controllers/tr8n/forum_controller.rb
577
601
  - app/controllers/tr8n/glossary_controller.rb
578
602
  - app/controllers/tr8n/help_controller.rb
579
- - app/controllers/tr8n/home_controller.rb
580
603
  - app/controllers/tr8n/language_cases_controller.rb
581
604
  - app/controllers/tr8n/language_controller.rb
582
- - app/controllers/tr8n/login_controller.rb
583
605
  - app/controllers/tr8n/phrases_controller.rb
584
606
  - app/controllers/tr8n/translations_controller.rb
585
607
  - app/controllers/tr8n/translator_controller.rb
586
608
  - app/helpers/tr8n/admin/base_helper.rb
587
- - app/helpers/tr8n/application_helper.rb
588
609
  - app/helpers/tr8n/base_helper.rb
589
610
  - app/helpers/tr8n/dashboard_helper.rb
590
611
  - app/models/tr8n/base_filter.rb
@@ -621,6 +642,8 @@ files:
621
642
  - app/models/tr8n/list_rule.rb
622
643
  - app/models/tr8n/monthly_language_metric.rb
623
644
  - app/models/tr8n/numeric_rule.rb
645
+ - app/models/tr8n/sync_log.rb
646
+ - app/models/tr8n/sync_log_filter.rb
624
647
  - app/models/tr8n/total_language_metric.rb
625
648
  - app/models/tr8n/translation.rb
626
649
  - app/models/tr8n/translation_domain.rb
@@ -649,12 +672,6 @@ files:
649
672
  - app/models/tr8n/translator_report.rb
650
673
  - app/models/tr8n/translator_report_filter.rb
651
674
  - app/models/tr8n/value_rule.rb
652
- - app/views/layouts/_footer.html.erb
653
- - app/views/layouts/_header.html.erb
654
- - app/views/layouts/_html_head.html.erb
655
- - app/views/layouts/tr8n.html.erb
656
- - app/views/layouts/tr8n/application.html.erb
657
- - app/views/layouts/tr8n_admin.html.erb
658
675
  - app/views/tr8n/admin/clientsdk/index.html.erb
659
676
  - app/views/tr8n/admin/clientsdk/lb_samples.html.erb
660
677
  - app/views/tr8n/admin/common/_footer.html.erb
@@ -696,6 +713,7 @@ files:
696
713
  - app/views/tr8n/admin/translation_key/lb_merge.html.erb
697
714
  - app/views/tr8n/admin/translation_key/lb_update.html.erb
698
715
  - app/views/tr8n/admin/translation_key/locks.html.erb
716
+ - app/views/tr8n/admin/translation_key/sync_logs.html.erb
699
717
  - app/views/tr8n/admin/translation_key/view.html.erb
700
718
  - app/views/tr8n/admin/translator/_list.html.erb
701
719
  - app/views/tr8n/admin/translator/_tabs.html.erb
@@ -743,6 +761,7 @@ files:
743
761
  - app/views/tr8n/help/advanced_tools.html.erb
744
762
  - app/views/tr8n/help/awards.html.erb
745
763
  - app/views/tr8n/help/creating_translations.html.erb
764
+ - app/views/tr8n/help/credits.html.erb
746
765
  - app/views/tr8n/help/dashboard.html.erb
747
766
  - app/views/tr8n/help/discussions.html.erb
748
767
  - app/views/tr8n/help/help.html.erb
@@ -751,6 +770,7 @@ files:
751
770
  - app/views/tr8n/help/language_selector.html.erb
752
771
  - app/views/tr8n/help/lb_credits.html.erb
753
772
  - app/views/tr8n/help/lb_shortcuts.html.erb
773
+ - app/views/tr8n/help/license.html.erb
754
774
  - app/views/tr8n/help/management.html.erb
755
775
  - app/views/tr8n/help/phrases.html.erb
756
776
  - app/views/tr8n/help/ranks.html.erb
@@ -758,10 +778,6 @@ files:
758
778
  - app/views/tr8n/help/site_map.html.erb
759
779
  - app/views/tr8n/help/translations.html.erb
760
780
  - app/views/tr8n/help/voting_on_translations.html.erb
761
- - app/views/tr8n/home/credits.html.erb
762
- - app/views/tr8n/home/index.html.erb
763
- - app/views/tr8n/home/languages.html.erb
764
- - app/views/tr8n/home/license.html.erb
765
781
  - app/views/tr8n/language/_basic_info.html.erb
766
782
  - app/views/tr8n/language/_edit_language_case_rules.html.erb
767
783
  - app/views/tr8n/language/_edit_language_cases.html.erb
@@ -792,8 +808,6 @@ files:
792
808
  - app/views/tr8n/language_cases/_manager_header.html.erb
793
809
  - app/views/tr8n/language_cases/index.html.erb
794
810
  - app/views/tr8n/language_cases/manager.html.erb
795
- - app/views/tr8n/login/index.html.erb
796
- - app/views/tr8n/login/register.html.erb
797
811
  - app/views/tr8n/phrases/_breadcrumb.html.erb
798
812
  - app/views/tr8n/phrases/_comment.html.erb
799
813
  - app/views/tr8n/phrases/_comments_module.html.erb
@@ -821,10 +835,10 @@ files:
821
835
  - config/routes.rb
822
836
  - config/tr8n/config.yml
823
837
  - config/tr8n/data/ip_locations.csv
824
- - config/tr8n/rules/default_cases.yml
825
838
  - config/tr8n/rules/default_date_rules.yml
826
839
  - config/tr8n/rules/default_gender_list_rules.yml
827
840
  - config/tr8n/rules/default_gender_rules.yml
841
+ - config/tr8n/rules/default_language_cases.yml
828
842
  - config/tr8n/rules/default_list_rules.yml
829
843
  - config/tr8n/rules/default_numeric_rules.yml
830
844
  - config/tr8n/rules/default_value_rules.yml
@@ -836,6 +850,8 @@ files:
836
850
  - config/tr8n/tokens/data.yml
837
851
  - config/tr8n/tokens/decorations.yml
838
852
  - db/migrate/20100405201417_create_tr8n_tables.rb
853
+ - db/migrate/20111003194443_create_tr8n_sync_tables.rb
854
+ - db/migrate/20111011013640_add_remote_id_to_tr8n_translators.rb
839
855
  - doc/README_FOR_APP
840
856
  - doc/cheat sheet.docx
841
857
  - doc/cheat sheet.pdf
@@ -845,12 +861,15 @@ files:
845
861
  - doc/integration.doc
846
862
  - doc/integration.docx
847
863
  - doc/pixel client sdk.graffle
848
- - lib/generators/tr8n/templates/create_tr8n_tables.rb
864
+ - lib/generators/tr8n/templates/db/create_tr8n_tables.rb
865
+ - lib/generators/tr8n/templates/layouts/tr8n.html.erb
866
+ - lib/generators/tr8n/templates/layouts/tr8n_admin.html.erb
849
867
  - lib/generators/tr8n/tr8n_generator.rb
850
- - lib/tasks/tr8n_tasks.rake
868
+ - lib/tasks/tr8n.rake
851
869
  - lib/tr8n.rb
852
870
  - lib/tr8n/active_dumper.rb
853
871
  - lib/tr8n/cache.rb
872
+ - lib/tr8n/cache_adapters/memcached.rb
854
873
  - lib/tr8n/config.rb
855
874
  - lib/tr8n/dictionary.rb
856
875
  - lib/tr8n/engine.rb
@@ -880,103 +899,103 @@ files:
880
899
  - lib/tr8n/tokens/method_token.rb
881
900
  - lib/tr8n/tokens/transform_token.rb
882
901
  - lib/tr8n/version.rb
902
+ - local/tr8n_server/Rakefile
903
+ - local/tr8n_server/app/assets/javascripts/application.js
904
+ - local/tr8n_server/app/assets/stylesheets/admin.css
905
+ - local/tr8n_server/app/assets/stylesheets/application.css
906
+ - local/tr8n_server/app/assets/stylesheets/components.css.scss
907
+ - local/tr8n_server/app/assets/stylesheets/layout.css.scss
908
+ - local/tr8n_server/app/controllers/admin/admins_controller.rb
909
+ - local/tr8n_server/app/controllers/admin/base_controller.rb
910
+ - local/tr8n_server/app/controllers/admin/users_controller.rb
911
+ - local/tr8n_server/app/controllers/application_controller.rb
912
+ - local/tr8n_server/app/controllers/demo_controller.rb
913
+ - local/tr8n_server/app/controllers/home_controller.rb
914
+ - local/tr8n_server/app/controllers/login_controller.rb
915
+ - local/tr8n_server/app/helpers/application_helper.rb
916
+ - local/tr8n_server/app/helpers/home_helper.rb
917
+ - local/tr8n_server/app/mailers/.gitkeep
918
+ - local/tr8n_server/app/models/.gitkeep
919
+ - local/tr8n_server/app/models/admin.rb
920
+ - local/tr8n_server/app/models/admin_filter.rb
921
+ - local/tr8n_server/app/models/user.rb
922
+ - local/tr8n_server/app/views/admin/admins/index.html.erb
923
+ - local/tr8n_server/app/views/admin/users/index.html.erb
924
+ - local/tr8n_server/app/views/demo/index.rhtml
925
+ - local/tr8n_server/app/views/demo/tokens.rhtml
926
+ - local/tr8n_server/app/views/home/index.html.erb
927
+ - local/tr8n_server/app/views/kaminari/_first_page.html.erb
928
+ - local/tr8n_server/app/views/kaminari/_gap.html.erb
929
+ - local/tr8n_server/app/views/kaminari/_last_page.html.erb
930
+ - local/tr8n_server/app/views/kaminari/_next_page.html.erb
931
+ - local/tr8n_server/app/views/kaminari/_page.html.erb
932
+ - local/tr8n_server/app/views/kaminari/_paginator.html.erb
933
+ - local/tr8n_server/app/views/kaminari/_prev_page.html.erb
934
+ - local/tr8n_server/app/views/layouts/_flashes.html.erb
935
+ - local/tr8n_server/app/views/layouts/_footer.html.erb
936
+ - local/tr8n_server/app/views/layouts/_header.html.erb
937
+ - local/tr8n_server/app/views/layouts/admin.html.erb
938
+ - local/tr8n_server/app/views/layouts/application.html.erb
939
+ - local/tr8n_server/app/views/layouts/tr8n.html.erb
940
+ - local/tr8n_server/app/views/layouts/tr8n_admin.html.erb
941
+ - local/tr8n_server/app/views/login/index.html.erb
942
+ - local/tr8n_server/app/views/login/register.html.erb
943
+ - local/tr8n_server/config.ru
944
+ - local/tr8n_server/config/application.rb
945
+ - local/tr8n_server/config/boot.rb
946
+ - local/tr8n_server/config/database.yml
947
+ - local/tr8n_server/config/environment.rb
948
+ - local/tr8n_server/config/environments/development.rb
949
+ - local/tr8n_server/config/environments/production.rb
950
+ - local/tr8n_server/config/environments/test.rb
951
+ - local/tr8n_server/config/initializers/backtrace_silencers.rb
952
+ - local/tr8n_server/config/initializers/inflections.rb
953
+ - local/tr8n_server/config/initializers/mime_types.rb
954
+ - local/tr8n_server/config/initializers/secret_token.rb
955
+ - local/tr8n_server/config/initializers/session_store.rb
956
+ - local/tr8n_server/config/initializers/wrap_parameters.rb
957
+ - local/tr8n_server/config/locales/en.yml
958
+ - local/tr8n_server/config/routes.rb
959
+ - local/tr8n_server/config/tr8n/config.yml
960
+ - local/tr8n_server/config/tr8n/data/ip_locations.csv
961
+ - local/tr8n_server/config/tr8n/rules/default_date_rules.yml
962
+ - local/tr8n_server/config/tr8n/rules/default_gender_list_rules.yml
963
+ - local/tr8n_server/config/tr8n/rules/default_gender_rules.yml
964
+ - local/tr8n_server/config/tr8n/rules/default_language_cases.yml
965
+ - local/tr8n_server/config/tr8n/rules/default_list_rules.yml
966
+ - local/tr8n_server/config/tr8n/rules/default_numeric_rules.yml
967
+ - local/tr8n_server/config/tr8n/rules/default_value_rules.yml
968
+ - local/tr8n_server/config/tr8n/site/default_glossary.yml
969
+ - local/tr8n_server/config/tr8n/site/default_languages.yml
970
+ - local/tr8n_server/config/tr8n/site/features.yml
971
+ - local/tr8n_server/config/tr8n/site/shortcuts.yml
972
+ - local/tr8n_server/config/tr8n/site/sitemap.json
973
+ - local/tr8n_server/config/tr8n/tokens/data.yml
974
+ - local/tr8n_server/config/tr8n/tokens/decorations.yml
975
+ - local/tr8n_server/config/will_filter/config.yml
976
+ - local/tr8n_server/db/migrate/20101207014543_create_users.rb
977
+ - local/tr8n_server/db/migrate/20110113223509_create_admins.rb
978
+ - local/tr8n_server/db/migrate/20110930041143_create_will_filter_filters.rb
979
+ - local/tr8n_server/db/migrate/20110930041150_create_tr8n_tables.rb
980
+ - local/tr8n_server/db/migrate/20111003194443_create_tr8n_sync_tables.rb
981
+ - local/tr8n_server/db/migrate/20111011013640_add_remote_id_to_tr8n_translators.rb
982
+ - local/tr8n_server/db/schema.rb
983
+ - local/tr8n_server/db/test.sqlite3
984
+ - local/tr8n_server/lib/assets/.gitkeep
985
+ - local/tr8n_server/log/.gitkeep
986
+ - local/tr8n_server/log/tr8n.log
987
+ - local/tr8n_server/public/404.html
988
+ - local/tr8n_server/public/422.html
989
+ - local/tr8n_server/public/500.html
990
+ - local/tr8n_server/public/favicon.ico
991
+ - local/tr8n_server/script/rails
883
992
  - script/rails
884
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/actions.css.scssc
885
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/buttons.css.scssc
886
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/calendar.css.scssc
887
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/exporter.css.scssc
888
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/filter.css.scssc
889
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/results.css.scssc
890
- - test/dummy/.sass-cache/3d45bab40fcae805deb2750a9342f5b355a9f2bf/components.css.scssc
891
- - test/dummy/.sass-cache/3d45bab40fcae805deb2750a9342f5b355a9f2bf/layout.css.scssc
892
- - test/dummy/.sass-cache/50f723c1dd802042d0091035528d53e6d5bc5b50/tr8n.css.scssc
893
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/actions.css.scssc
894
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/buttons.css.scssc
895
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/calendar.css.scssc
896
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/exporter.css.scssc
897
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/filter.css.scssc
898
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/results.css.scssc
899
- - test/dummy/Rakefile
900
- - test/dummy/app/assets/javascripts/application.js
901
- - test/dummy/app/assets/stylesheets/admin.css
902
- - test/dummy/app/assets/stylesheets/application.css
903
- - test/dummy/app/assets/stylesheets/components.css.scss
904
- - test/dummy/app/assets/stylesheets/keyboard.css
905
- - test/dummy/app/assets/stylesheets/layout.css.scss
906
- - test/dummy/app/controllers/admin/admins_controller.rb
907
- - test/dummy/app/controllers/admin/base_controller.rb
908
- - test/dummy/app/controllers/admin/users_controller.rb
909
- - test/dummy/app/controllers/application_controller.rb
910
- - test/dummy/app/controllers/demo_controller.rb
911
- - test/dummy/app/controllers/login_controller.rb
912
- - test/dummy/app/helpers/application_helper.rb
913
- - test/dummy/app/helpers/home_helper.rb
914
- - test/dummy/app/mailers/.gitkeep
915
- - test/dummy/app/models/.gitkeep
916
- - test/dummy/app/models/admin.rb
917
- - test/dummy/app/models/admin_filter.rb
918
- - test/dummy/app/models/user.rb
919
- - test/dummy/app/views/admin/admins/index.html.erb
920
- - test/dummy/app/views/admin/users/index.html.erb
921
- - test/dummy/app/views/demo/index.rhtml
922
- - test/dummy/app/views/demo/tokens.rhtml
923
- - test/dummy/app/views/layouts/_flashes.html.erb
924
- - test/dummy/app/views/layouts/_footer.html.erb
925
- - test/dummy/app/views/layouts/_header.html.erb
926
- - test/dummy/app/views/layouts/admin.html.erb
927
- - test/dummy/app/views/layouts/application.html.erb
928
- - test/dummy/app/views/login/index.html.erb
929
- - test/dummy/app/views/login/register.html.erb
930
- - test/dummy/config.ru
931
- - test/dummy/config/application.rb
932
- - test/dummy/config/boot.rb
933
- - test/dummy/config/database.yml
934
- - test/dummy/config/environment.rb
935
- - test/dummy/config/environments/development.rb
936
- - test/dummy/config/environments/production.rb
937
- - test/dummy/config/environments/test.rb
938
- - test/dummy/config/initializers/backtrace_silencers.rb
939
- - test/dummy/config/initializers/inflections.rb
940
- - test/dummy/config/initializers/mime_types.rb
941
- - test/dummy/config/initializers/secret_token.rb
942
- - test/dummy/config/initializers/session_store.rb
943
- - test/dummy/config/initializers/wrap_parameters.rb
944
- - test/dummy/config/locales/en.yml
945
- - test/dummy/config/routes.rb
946
- - test/dummy/config/tr8n/config.yml
947
- - test/dummy/config/tr8n/data/ip_locations.csv
948
- - test/dummy/config/tr8n/rules/default_cases.yml
949
- - test/dummy/config/tr8n/rules/default_date_rules.yml
950
- - test/dummy/config/tr8n/rules/default_gender_list_rules.yml
951
- - test/dummy/config/tr8n/rules/default_gender_rules.yml
952
- - test/dummy/config/tr8n/rules/default_list_rules.yml
953
- - test/dummy/config/tr8n/rules/default_numeric_rules.yml
954
- - test/dummy/config/tr8n/rules/default_value_rules.yml
955
- - test/dummy/config/tr8n/site/default_glossary.yml
956
- - test/dummy/config/tr8n/site/default_languages.yml
957
- - test/dummy/config/tr8n/site/features.yml
958
- - test/dummy/config/tr8n/site/shortcuts.yml
959
- - test/dummy/config/tr8n/site/sitemap.json
960
- - test/dummy/config/tr8n/tokens/data.yml
961
- - test/dummy/config/tr8n/tokens/decorations.yml
962
- - test/dummy/config/will_filter/config.yml
963
- - test/dummy/db/migrate/20101207014543_create_users.rb
964
- - test/dummy/db/migrate/20110113223509_create_admins.rb
965
- - test/dummy/db/migrate/20110930041143_create_will_filter_filters.rb
966
- - test/dummy/db/migrate/20110930041150_create_tr8n_tables.rb
967
- - test/dummy/db/schema.rb
968
- - test/dummy/lib/assets/.gitkeep
969
- - test/dummy/log/.gitkeep
970
- - test/dummy/public/404.html
971
- - test/dummy/public/422.html
972
- - test/dummy/public/500.html
973
- - test/dummy/public/favicon.ico
974
- - test/dummy/script/rails
975
- - test/dummy/test/functional/home_controller_test.rb
976
- - test/dummy/test/unit/helpers/home_helper_test.rb
977
- - test/integration/navigation_test.rb
978
- - test/test_helper.rb
979
- - test/tr8n_test.rb
993
+ - spec/config/config_spec.rb
994
+ - spec/fake_app.rb
995
+ - spec/lib/data_token_spec.rb
996
+ - spec/lib/transform_token_spec.rb
997
+ - spec/models/translation_key_spec.rb
998
+ - spec/spec_helper.rb
980
999
  - tr8n.gemspec
981
1000
  has_rdoc: true
982
1001
  homepage: https://github.com/berk/will_filter
@@ -994,7 +1013,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
994
1013
  version: '0'
995
1014
  segments:
996
1015
  - 0
997
- hash: 889035191949528445
1016
+ hash: -1522090754670524227
998
1017
  required_rubygems_version: !ruby/object:Gem::Requirement
999
1018
  none: false
1000
1019
  requirements:
@@ -1003,7 +1022,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1003
1022
  version: '0'
1004
1023
  segments:
1005
1024
  - 0
1006
- hash: 889035191949528445
1025
+ hash: -1522090754670524227
1007
1026
  requirements: []
1008
1027
  rubyforge_project: tr8n
1009
1028
  rubygems_version: 1.6.2
@@ -1011,99 +1030,99 @@ signing_key:
1011
1030
  specification_version: 3
1012
1031
  summary: Crowd-sourced translation engine for Rails.
1013
1032
  test_files:
1014
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/actions.css.scssc
1015
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/buttons.css.scssc
1016
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/calendar.css.scssc
1017
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/exporter.css.scssc
1018
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/filter.css.scssc
1019
- - test/dummy/.sass-cache/32be4db30d38349a3a6e662df9bb5599dc8033b9/results.css.scssc
1020
- - test/dummy/.sass-cache/3d45bab40fcae805deb2750a9342f5b355a9f2bf/components.css.scssc
1021
- - test/dummy/.sass-cache/3d45bab40fcae805deb2750a9342f5b355a9f2bf/layout.css.scssc
1022
- - test/dummy/.sass-cache/50f723c1dd802042d0091035528d53e6d5bc5b50/tr8n.css.scssc
1023
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/actions.css.scssc
1024
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/buttons.css.scssc
1025
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/calendar.css.scssc
1026
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/exporter.css.scssc
1027
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/filter.css.scssc
1028
- - test/dummy/.sass-cache/bce64928c8e2edcba72a647a44f05af1ff119c5d/results.css.scssc
1029
- - test/dummy/Rakefile
1030
- - test/dummy/app/assets/javascripts/application.js
1031
- - test/dummy/app/assets/stylesheets/admin.css
1032
- - test/dummy/app/assets/stylesheets/application.css
1033
- - test/dummy/app/assets/stylesheets/components.css.scss
1034
- - test/dummy/app/assets/stylesheets/keyboard.css
1035
- - test/dummy/app/assets/stylesheets/layout.css.scss
1036
- - test/dummy/app/controllers/admin/admins_controller.rb
1037
- - test/dummy/app/controllers/admin/base_controller.rb
1038
- - test/dummy/app/controllers/admin/users_controller.rb
1039
- - test/dummy/app/controllers/application_controller.rb
1040
- - test/dummy/app/controllers/demo_controller.rb
1041
- - test/dummy/app/controllers/login_controller.rb
1042
- - test/dummy/app/helpers/application_helper.rb
1043
- - test/dummy/app/helpers/home_helper.rb
1044
- - test/dummy/app/mailers/.gitkeep
1045
- - test/dummy/app/models/.gitkeep
1046
- - test/dummy/app/models/admin.rb
1047
- - test/dummy/app/models/admin_filter.rb
1048
- - test/dummy/app/models/user.rb
1049
- - test/dummy/app/views/admin/admins/index.html.erb
1050
- - test/dummy/app/views/admin/users/index.html.erb
1051
- - test/dummy/app/views/demo/index.rhtml
1052
- - test/dummy/app/views/demo/tokens.rhtml
1053
- - test/dummy/app/views/layouts/_flashes.html.erb
1054
- - test/dummy/app/views/layouts/_footer.html.erb
1055
- - test/dummy/app/views/layouts/_header.html.erb
1056
- - test/dummy/app/views/layouts/admin.html.erb
1057
- - test/dummy/app/views/layouts/application.html.erb
1058
- - test/dummy/app/views/login/index.html.erb
1059
- - test/dummy/app/views/login/register.html.erb
1060
- - test/dummy/config.ru
1061
- - test/dummy/config/application.rb
1062
- - test/dummy/config/boot.rb
1063
- - test/dummy/config/database.yml
1064
- - test/dummy/config/environment.rb
1065
- - test/dummy/config/environments/development.rb
1066
- - test/dummy/config/environments/production.rb
1067
- - test/dummy/config/environments/test.rb
1068
- - test/dummy/config/initializers/backtrace_silencers.rb
1069
- - test/dummy/config/initializers/inflections.rb
1070
- - test/dummy/config/initializers/mime_types.rb
1071
- - test/dummy/config/initializers/secret_token.rb
1072
- - test/dummy/config/initializers/session_store.rb
1073
- - test/dummy/config/initializers/wrap_parameters.rb
1074
- - test/dummy/config/locales/en.yml
1075
- - test/dummy/config/routes.rb
1076
- - test/dummy/config/tr8n/config.yml
1077
- - test/dummy/config/tr8n/data/ip_locations.csv
1078
- - test/dummy/config/tr8n/rules/default_cases.yml
1079
- - test/dummy/config/tr8n/rules/default_date_rules.yml
1080
- - test/dummy/config/tr8n/rules/default_gender_list_rules.yml
1081
- - test/dummy/config/tr8n/rules/default_gender_rules.yml
1082
- - test/dummy/config/tr8n/rules/default_list_rules.yml
1083
- - test/dummy/config/tr8n/rules/default_numeric_rules.yml
1084
- - test/dummy/config/tr8n/rules/default_value_rules.yml
1085
- - test/dummy/config/tr8n/site/default_glossary.yml
1086
- - test/dummy/config/tr8n/site/default_languages.yml
1087
- - test/dummy/config/tr8n/site/features.yml
1088
- - test/dummy/config/tr8n/site/shortcuts.yml
1089
- - test/dummy/config/tr8n/site/sitemap.json
1090
- - test/dummy/config/tr8n/tokens/data.yml
1091
- - test/dummy/config/tr8n/tokens/decorations.yml
1092
- - test/dummy/config/will_filter/config.yml
1093
- - test/dummy/db/migrate/20101207014543_create_users.rb
1094
- - test/dummy/db/migrate/20110113223509_create_admins.rb
1095
- - test/dummy/db/migrate/20110930041143_create_will_filter_filters.rb
1096
- - test/dummy/db/migrate/20110930041150_create_tr8n_tables.rb
1097
- - test/dummy/db/schema.rb
1098
- - test/dummy/lib/assets/.gitkeep
1099
- - test/dummy/log/.gitkeep
1100
- - test/dummy/public/404.html
1101
- - test/dummy/public/422.html
1102
- - test/dummy/public/500.html
1103
- - test/dummy/public/favicon.ico
1104
- - test/dummy/script/rails
1105
- - test/dummy/test/functional/home_controller_test.rb
1106
- - test/dummy/test/unit/helpers/home_helper_test.rb
1107
- - test/integration/navigation_test.rb
1108
- - test/test_helper.rb
1109
- - test/tr8n_test.rb
1033
+ - local/tr8n_server/Rakefile
1034
+ - local/tr8n_server/app/assets/javascripts/application.js
1035
+ - local/tr8n_server/app/assets/stylesheets/admin.css
1036
+ - local/tr8n_server/app/assets/stylesheets/application.css
1037
+ - local/tr8n_server/app/assets/stylesheets/components.css.scss
1038
+ - local/tr8n_server/app/assets/stylesheets/layout.css.scss
1039
+ - local/tr8n_server/app/controllers/admin/admins_controller.rb
1040
+ - local/tr8n_server/app/controllers/admin/base_controller.rb
1041
+ - local/tr8n_server/app/controllers/admin/users_controller.rb
1042
+ - local/tr8n_server/app/controllers/application_controller.rb
1043
+ - local/tr8n_server/app/controllers/demo_controller.rb
1044
+ - local/tr8n_server/app/controllers/home_controller.rb
1045
+ - local/tr8n_server/app/controllers/login_controller.rb
1046
+ - local/tr8n_server/app/helpers/application_helper.rb
1047
+ - local/tr8n_server/app/helpers/home_helper.rb
1048
+ - local/tr8n_server/app/mailers/.gitkeep
1049
+ - local/tr8n_server/app/models/.gitkeep
1050
+ - local/tr8n_server/app/models/admin.rb
1051
+ - local/tr8n_server/app/models/admin_filter.rb
1052
+ - local/tr8n_server/app/models/user.rb
1053
+ - local/tr8n_server/app/views/admin/admins/index.html.erb
1054
+ - local/tr8n_server/app/views/admin/users/index.html.erb
1055
+ - local/tr8n_server/app/views/demo/index.rhtml
1056
+ - local/tr8n_server/app/views/demo/tokens.rhtml
1057
+ - local/tr8n_server/app/views/home/index.html.erb
1058
+ - local/tr8n_server/app/views/kaminari/_first_page.html.erb
1059
+ - local/tr8n_server/app/views/kaminari/_gap.html.erb
1060
+ - local/tr8n_server/app/views/kaminari/_last_page.html.erb
1061
+ - local/tr8n_server/app/views/kaminari/_next_page.html.erb
1062
+ - local/tr8n_server/app/views/kaminari/_page.html.erb
1063
+ - local/tr8n_server/app/views/kaminari/_paginator.html.erb
1064
+ - local/tr8n_server/app/views/kaminari/_prev_page.html.erb
1065
+ - local/tr8n_server/app/views/layouts/_flashes.html.erb
1066
+ - local/tr8n_server/app/views/layouts/_footer.html.erb
1067
+ - local/tr8n_server/app/views/layouts/_header.html.erb
1068
+ - local/tr8n_server/app/views/layouts/admin.html.erb
1069
+ - local/tr8n_server/app/views/layouts/application.html.erb
1070
+ - local/tr8n_server/app/views/layouts/tr8n.html.erb
1071
+ - local/tr8n_server/app/views/layouts/tr8n_admin.html.erb
1072
+ - local/tr8n_server/app/views/login/index.html.erb
1073
+ - local/tr8n_server/app/views/login/register.html.erb
1074
+ - local/tr8n_server/config.ru
1075
+ - local/tr8n_server/config/application.rb
1076
+ - local/tr8n_server/config/boot.rb
1077
+ - local/tr8n_server/config/database.yml
1078
+ - local/tr8n_server/config/environment.rb
1079
+ - local/tr8n_server/config/environments/development.rb
1080
+ - local/tr8n_server/config/environments/production.rb
1081
+ - local/tr8n_server/config/environments/test.rb
1082
+ - local/tr8n_server/config/initializers/backtrace_silencers.rb
1083
+ - local/tr8n_server/config/initializers/inflections.rb
1084
+ - local/tr8n_server/config/initializers/mime_types.rb
1085
+ - local/tr8n_server/config/initializers/secret_token.rb
1086
+ - local/tr8n_server/config/initializers/session_store.rb
1087
+ - local/tr8n_server/config/initializers/wrap_parameters.rb
1088
+ - local/tr8n_server/config/locales/en.yml
1089
+ - local/tr8n_server/config/routes.rb
1090
+ - local/tr8n_server/config/tr8n/config.yml
1091
+ - local/tr8n_server/config/tr8n/data/ip_locations.csv
1092
+ - local/tr8n_server/config/tr8n/rules/default_date_rules.yml
1093
+ - local/tr8n_server/config/tr8n/rules/default_gender_list_rules.yml
1094
+ - local/tr8n_server/config/tr8n/rules/default_gender_rules.yml
1095
+ - local/tr8n_server/config/tr8n/rules/default_language_cases.yml
1096
+ - local/tr8n_server/config/tr8n/rules/default_list_rules.yml
1097
+ - local/tr8n_server/config/tr8n/rules/default_numeric_rules.yml
1098
+ - local/tr8n_server/config/tr8n/rules/default_value_rules.yml
1099
+ - local/tr8n_server/config/tr8n/site/default_glossary.yml
1100
+ - local/tr8n_server/config/tr8n/site/default_languages.yml
1101
+ - local/tr8n_server/config/tr8n/site/features.yml
1102
+ - local/tr8n_server/config/tr8n/site/shortcuts.yml
1103
+ - local/tr8n_server/config/tr8n/site/sitemap.json
1104
+ - local/tr8n_server/config/tr8n/tokens/data.yml
1105
+ - local/tr8n_server/config/tr8n/tokens/decorations.yml
1106
+ - local/tr8n_server/config/will_filter/config.yml
1107
+ - local/tr8n_server/db/migrate/20101207014543_create_users.rb
1108
+ - local/tr8n_server/db/migrate/20110113223509_create_admins.rb
1109
+ - local/tr8n_server/db/migrate/20110930041143_create_will_filter_filters.rb
1110
+ - local/tr8n_server/db/migrate/20110930041150_create_tr8n_tables.rb
1111
+ - local/tr8n_server/db/migrate/20111003194443_create_tr8n_sync_tables.rb
1112
+ - local/tr8n_server/db/migrate/20111011013640_add_remote_id_to_tr8n_translators.rb
1113
+ - local/tr8n_server/db/schema.rb
1114
+ - local/tr8n_server/db/test.sqlite3
1115
+ - local/tr8n_server/lib/assets/.gitkeep
1116
+ - local/tr8n_server/log/.gitkeep
1117
+ - local/tr8n_server/log/tr8n.log
1118
+ - local/tr8n_server/public/404.html
1119
+ - local/tr8n_server/public/422.html
1120
+ - local/tr8n_server/public/500.html
1121
+ - local/tr8n_server/public/favicon.ico
1122
+ - local/tr8n_server/script/rails
1123
+ - spec/config/config_spec.rb
1124
+ - spec/fake_app.rb
1125
+ - spec/lib/data_token_spec.rb
1126
+ - spec/lib/transform_token_spec.rb
1127
+ - spec/models/translation_key_spec.rb
1128
+ - spec/spec_helper.rb