tr8n 3.1.1 → 3.1.2

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -45,7 +45,7 @@ module Tr8n
45
45
  module Tokens
46
46
  class DataToken < Tr8n::Token
47
47
  def self.expression
48
- /(\{[^_][\w]+(:[\w]+)?(::[\w]+)?\})/
48
+ /(\{[^_:][\w]*(:[\w]+)?(::[\w]+)?\})/
49
49
  end
50
50
  end
51
51
  end
@@ -34,7 +34,7 @@ module Tr8n
34
34
  module Tokens
35
35
  class MethodToken < Tr8n::Token
36
36
  def self.expression
37
- /(\{[^_][\w]+(\.[\w]+)(:[\w]+)?(::[\w]+)?\})/
37
+ /(\{[^_:.][\w]*(\.[\w]+)(:[\w]+)?(::[\w]+)?\})/
38
38
  end
39
39
 
40
40
  def object_name
@@ -40,7 +40,7 @@ module Tr8n
40
40
  module Tokens
41
41
  class TransformToken < Tr8n::Token
42
42
  def self.expression
43
- /(\{[^_][\w]+(:[\w]+)?(::[\w]+)?\s*\|\|?[^{^}]+\})/
43
+ /(\{[^_:|][\w]*(:[\w]+)?(::[\w]+)?\s*\|\|?[^{^}]+\})/
44
44
  end
45
45
 
46
46
  def name
@@ -1,3 +1,3 @@
1
1
  module Tr8n
2
- VERSION = "3.1.1"
2
+ VERSION = "3.1.2"
3
3
  end
@@ -4,4 +4,4 @@
4
4
 
5
5
  require File.expand_path('../config/application', __FILE__)
6
6
 
7
- Dummy::Application.load_tasks
7
+ Tr8nServer::Application.load_tasks
@@ -0,0 +1,211 @@
1
+ /* General */
2
+
3
+ .flt_r {float:right}
4
+ .quiet {color:#888 !important;}
5
+ .strong {font-weight:bold}
6
+ .em {font-style:italic}
7
+ .small {font-size:11px}
8
+ .xsmall {font-size:10px}
9
+ .sub_heading {border-bottom:solid 1px #ddd;margin-bottom:3px;}
10
+ .notice_msg {color:darkorange;background:#feffef;padding:3px 5px;margin:0 0 3px 0}
11
+ .warning_msg {color:darkred;background:pink;padding:3px 5px;margin:0 0 3px 0}
12
+ .focus {background-color:#f1f5ff}
13
+ .highlight {background-color:#fefff1}
14
+ .highlight_hover:hover {background:#fefff1}
15
+ .nowrap {white-space:nowrap}
16
+ .underscore {border-bottom:solid 1px #eee}
17
+
18
+ .light_bevel_hr {height:0px;border:solid 1px #e1e5e8;border-bottom-color:#fff;}
19
+
20
+ .padding_0 {padding:0px !important;}
21
+ .padding_5 {padding:5px !important;}
22
+ .padding_10 {padding:10px !important;}
23
+ .padding_15 {padding:15px !important;}
24
+
25
+ /* Module Skins */
26
+
27
+ .basic .inner {padding:10px;}
28
+
29
+ .outset .inner {border:1px solid #D7D7D7;border-color:#e9e9e9 #cdcdcd #a4a4a4;border-width:1px 1px 2px;padding:10px;}
30
+ .outset b {background-image:url('rounded_corners_sprite.gif');}
31
+ .outset .tl {background-position: 0 -70px;}
32
+ .outset .tr {background-position: -10px -70px;}
33
+ .outset .bl {background-position: 0 -80px;}
34
+ .outset .br {background-position: -10px -80px;}
35
+
36
+ .inset .inner {border:1px solid #e1e5e8;border-color:#b1b3b7 #e1e5e8 #e1e5e8;border-width:2px 1px 1px;padding:10px;}
37
+ .inset b {background-image:url('rounded_corners_sprite.gif');}
38
+ .inset .tl {background-position: 0 -93px;}
39
+ .inset .tr {background-position: -10px -93px;}
40
+ .inset .bl {background-position: 0 -103px;}
41
+ .inset .br {background-position: -10px -103px;}
42
+
43
+ .rounded .inner {padding:10px;text-align:left;}
44
+ .rounded b {background-image:url('rounded_corners_sprite.gif');}
45
+ .rounded .tl {background-position: 0 -116px;}
46
+ .rounded .tr {background-position: -10px -116px;}
47
+ .rounded .bl {background-position: 0 -126px;}
48
+ .rounded .br {background-position: -10px -126px;}
49
+
50
+
51
+ /* Module Backgrounds */
52
+
53
+ .highlight_bevel {background:url('/images/highlight_bkgd.gif') repeat-x 0 bottom #fefff1}
54
+ .focus_bevel {background:url('/images/focus_bkgd.gif') repeat-x 0 bottom #edf2f8}
55
+ .success_bevel {background:url('/images/success_bkgd.gif') repeat-x 0 bottom #eefce7}
56
+
57
+
58
+ /* Module Headers */
59
+ .pagination_hd {border-bottom:solid 1px #ddd;padding:5px 0}
60
+
61
+ /* Module Body */
62
+
63
+
64
+ /* Module Footers */
65
+ .action_ft {background:#fbfbfb;border-top:solid 1px #eee;padding:15px 20px;}
66
+ .pagination_ft {border-top:solid 1px #ddd;padding:5px 0;margin-top:-1px;}
67
+
68
+
69
+ /* Forms */
70
+
71
+ .field {clear:both;padding:5px 0 7px 0;overflow:hidden;}
72
+ .field_hd {float:left;width:145px;text-align:right;color:#666;}
73
+ .field_bd {margin-left:165px;clear:right}
74
+ .field_section {float:left;margin-right:5px;color:#999;font-size:10px;}
75
+ .field_note {margin-top:5px;font-size:10px;color:#666;clear:both;}
76
+ .field_hint {float:right;font-size:10px;color:#666;width:170px;line-height:11px;font-weight:normal}
77
+
78
+ .xshort_input {width:50px}
79
+ .short_input {width:100px}
80
+ .medium_input {width:150px}
81
+ .long_input {width:200px}
82
+ .xlong_input {width:250px}
83
+ .full_width_input {width:98%}
84
+
85
+
86
+ /* Lists */
87
+
88
+ ol.simple_list li {list-style-type: decimal; margin-left:40px;}
89
+ ul.simple_list li {list-style-type:disc; margin-left:0px;padding:4px 0}
90
+
91
+ .nav_list,
92
+ .horiz_list,
93
+ .right_horiz_list {overflow:hidden;text-align:left}
94
+
95
+ .nav_list li {margin-top:-1px;border-top:solid 1px #ced2e4;padding:3px 5px;zoom:1}
96
+ .nav_list li:hover {background-color:#ebeef1}
97
+ .nav_list li a {text-decoration:none;}
98
+
99
+ .horiz_list li {margin-left:-11px;border-left:solid 1px #ccc;padding:0px 10px;margin-right:10px;float:left;}
100
+ .right_horiz_list li {margin-right:-11px;border-right:solid 1px #ccc;padding:0px 10px;margin-left:10px;float:left;}
101
+
102
+ .checklist li {overflow:hidden;padding:0px 0}
103
+ .checklist input {float:left;}
104
+ .checklist label {margin:0 0 5px 25px;display:block}
105
+
106
+ .segmented_list {overflow:hidden;}
107
+ .segmented_list li {padding:7px 0;border-bottom:solid 1px #eee;margin-bottom:-1px}
108
+
109
+ .block_list li {padding:3px 0}
110
+
111
+
112
+ /* Pagination */
113
+
114
+ .pagination {overflow:hidden;zoom:1}
115
+ .pagination li {padding:0 3px;margin-right:2px;float:left;font-weight:bold;}
116
+
117
+
118
+
119
+ /* Buttons */
120
+
121
+ .btn {position:relative;border:0;padding:0;margin:0 2px 0 -2px;cursor:pointer;overflow:visible;background:transparent url('/images/site_sprite.gif') no-repeat right -100px;font-size:11px;font-weight:bold;text-align:center;font-family:Arial}
122
+ .btn span {position:relative;display:block;white-space:nowrap;background:transparent url('/images/site_sprite.gif') no-repeat left top;}
123
+ button::-moz-focus-inner {border:none;}
124
+ @media screen and (-webkit-min-device-pixel-ratio:0) {
125
+ .btn span {margin-top:-1px;}
126
+ }
127
+ a.btn {display:block;display:-moz-inline-box;display:inline-block;vertical-align:middle}
128
+ a.btn span {display:block;margin-top:0px}
129
+
130
+ /* Button Skins */
131
+
132
+ .button {-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-box-shadow: rgba(0, 0, 0, 0.246094) 0px 1px 3px;-moz-box-shadow: rgba(0, 0, 0, 0.246094) 0px 1px 3px;background-color: #222;border-bottom: 1px solid rgba(0, 0, 0, 0.246094);color: white !important;cursor: pointer;display: inline-block;font-size: 13px;font-weight: bold;line-height: 1;overflow: visible;padding: 5px 15px 6px;position: relative;text-decoration: none !important;width: auto;}
133
+
134
+ .super.button {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAYAAADtlXTHAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAABYSURBVHjaZM27EcAgDANQSzZZgP0XpKLh20BM7mjS6J7kwrrWEuScgZQS2HsXjjHEdaqytfZ4kLXWU81lruAK9wqWUuBVvni3n+4Pc9nRnFOUZFQAcQswAI/sUZSGPd0tAAAAAElFTkSuQmCC) repeat-x 0 bottom;background-position:0 bottom;border: 1px solid rgba(0, 0, 0, 0.246094);font-size: 12px;padding: 0px;}
135
+ .super.button span {border-top: 1px solid rgba(255, 255, 255, 0.199219);display: block;line-height: 1;padding: 4px 15px 6px;}
136
+
137
+ .green.button {background-color: #91BD09;}
138
+ .green.button:hover {background-color:#749a02}
139
+
140
+ .blue.button {background-color:#5689c0}
141
+ .blue.button:hover {background-color:#4a77a8}
142
+
143
+ .large.super.button span {padding: 7px 20px 9px;font-size:13px;}
144
+ .xlarge.super.button span {padding: 8px 20px 10px;font-size:16px;}
145
+
146
+ /* Icons */
147
+
148
+ .icn {background:url(/images/icon_sprite.gif) no-repeat 0 0;}
149
+
150
+
151
+
152
+
153
+ /* Tabs */
154
+
155
+ .tab_nav {list-style-type:none;overflow:auto;margin-bottom:0px !important;position:relative}
156
+ .tab_nav li {float:left;margin-right:2px;cursor:pointer;}
157
+ .tab_nav li a {display:block;padding:6px 10px 6px 10px;}
158
+
159
+ /* Tables */
160
+
161
+ .data_table {padding:0;width:auto;margin:0}
162
+ .data_table td, .data_table th {vertical-align:top;padding:1px 0px 2px 0px}
163
+ .data_table th {width:115px;color:#777;font-weight:normal;padding-right:6px}
164
+
165
+ .data_table.small th {width:70px}
166
+
167
+ .segmented_table {width:100%;}
168
+ .segmented_table td {border-bottom:solid 1px #eee;padding:10px 5px}
169
+ .segmented_table .last td {border:none}
170
+
171
+ .skinny_cells td {padding:5px}
172
+ .fat_cells td {padding:10px 5px}
173
+
174
+ .txt_c {text-align:center;}
175
+ .txt_l {text-align:left;}
176
+ .txt_r {text-align:right;}
177
+ .txt_t {vertical-align:top;}
178
+ .txt_b {vertical-align:bottom;}
179
+ .txt_m {vertical-align:middle;}
180
+
181
+ .min_cell_width {width:1%}
182
+ .max_cell_width {width:99%}
183
+
184
+ .mrgn_v {margin:10px 0}
185
+ .mrgn_h {margin:0 10px}
186
+
187
+ /* Media Block */
188
+
189
+ .media {overflow:hidden;_overflow:visible; zoom:1;}
190
+ .media .img {float:left;margin-right: 10px;}
191
+ .media .img img {display:block;}
192
+ .media .imgExt {float:right; margin-left: 10px;}
193
+
194
+
195
+
196
+
197
+ /* Home */
198
+
199
+ .home_banner {background:url('/images/bubbles_bkgd.jpg');-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0;padding:50px 25px 0px 25px;height:220px;border-bottom:solid 10px #c2d6eb}
200
+ .home_banner h1 {font:normal bold 45px Arial, Helvetica, sans-serif;color:#fff;text-shadow:0 -1px 1px #000;letter-spacing:-2px}
201
+ .home_banner h2 {font:normal normal 24px Arial, Helvetica, sans-serif;color:#ccc;text-shadow:0 -1px 1px #000;width:520px;}
202
+
203
+
204
+ .benefit_details {line-height:20px;height:70px;}
205
+ .page_form {margin:0 50px}
206
+
207
+ .tr8n {
208
+ width:auto !important;
209
+ overflow:hidden !important
210
+ }
211
+
@@ -0,0 +1,143 @@
1
+ @mixin shadow($info) {
2
+ text-shadow:$info;
3
+ -moz-text-shadow:$info;
4
+ -webkit-text-shadow:$info;
5
+ }
6
+
7
+ @mixin rounded-corners($radius) {
8
+ border-radius: $radius;
9
+ -moz-border-radius: $radius;
10
+ -webkit-border-radius: $radius;
11
+ }
12
+
13
+ body {margin:0;padding:0;font:normal normal 12px Arial, Helvetica, sans-serif;text-align:left;background:#f5f5f5;color:#444;}
14
+
15
+ h1,h2,h3,h4,h5,h6 {margin:0 0 5px 0;padding:0;line-height: 1em;}
16
+ h1,.h1 {font:normal normal 35px Georgia, serif;color:#424c56;letter-spacing:-1px;}
17
+ h2,.h2 {font: normal normal normal 24px/normal Arial, Helvetica, sans-serif;color:#666;margin:0 0 8px 0;letter-spacing:-1px;}
18
+ h3,.h3 {font: normal normal bold 18px/normal Arial, Helvetica, sans-serif;color:#555;margin:0 0 8px 0;padding-bottom:5px;}
19
+ h4,.h4 {font:normal normal 14px Arial, Helvetica, sans-serif;color:#444;padding:6px;}
20
+ h5,.h5 {font:normal bold 11px Arial, Helvetica, sans-serif;color:#999}
21
+ h6,.h6 {font:normal bold 11px Arial, Helvetica, sans-serif;color:#444}
22
+
23
+
24
+ a {color:#3B5998;text-decoration: none;outline:none}
25
+ a:focus, a:hover {text-decoration: underline }
26
+ a:visited {color:#3B5998;}
27
+
28
+ p {margin:0 0 10px 0;}
29
+ table {border-collapse:collapse;border-spacing:0}
30
+ table,ul,ol,dt,dl,dd {padding:0;margin:0;list-style-type:none}
31
+ td,th {vertical-align:top}
32
+ img {vertical-align:middle;border:none}
33
+ input, select, textarea {vertical-align:middle;border:solid 1px #eee;border-color:#bbb #eee #eee #bbb;border-width:1px;font:normal normal 11px Arial, Helvetica, sans-serif;color:#444;outline:none;padding:3px;}
34
+ select {padding:2px;}
35
+ input[type=checkbox],
36
+ input[type=radio],
37
+ input[type=file],
38
+ checkbox,
39
+ radio {border:none;padding:0;}
40
+
41
+
42
+ /* Page Template */
43
+
44
+ .page_fixed {width:1000px;margin:0 auto;}
45
+ .page_elastic {width:auto;margin:0;}
46
+ .page_fluid {max-width:1100px;min-width:925px;_width:960px;margin:0 auto;padding:0 25px;}
47
+
48
+ .page_body,
49
+ .page_body .main_col {overflow:hidden;_overflow:visible;_zoom:1;}
50
+ .page_body .left_col {float:left; width:250px;_margin-right:-3px;}
51
+ .page_body .right_col {float:right; width: 300px;_margin-left:-3px;}
52
+
53
+
54
+ /* Header */
55
+
56
+ .page_head {background:#fff;border-bottom: 1px solid #DDD;border-top: 4px solid #6699cc;margin-bottom: 15px;padding: 5px 15px 2px;}
57
+ .logo a {
58
+ font-family:Arial;
59
+ color:#424c56;
60
+ text-decoration:none;
61
+ @include shadow(2px 3px 3px 2px rgba(0,0,0,0.6));
62
+ }
63
+ .logo a:hover {color:#000}
64
+ .top_nav {padding-top:13px;}
65
+
66
+ /* Grids */
67
+
68
+ .line, .last_unit {overflow:hidden;_overflow:visible;_zoom:1; }
69
+ .unit {float:left;_zoom:1;}
70
+ .size_1of1 {float:none;}
71
+ .size_1of2 {width:50%;}
72
+ .size_1of3 {width:33.33333%;}
73
+ .size_2of3 {width:66.66666%;}
74
+ .size_1of4 {width:25%;}
75
+ .size_3of4 {width:75%;}
76
+ .size_1of5 {width:20%;}
77
+ .size_2of5 {width:40%;}
78
+ .size_3of5 {width:60%;}
79
+ .size_4of5 {width:80%;}
80
+ .last_unit {float:none;_position:relative;_left:-3px;_margin-right:-3px;width:auto;}
81
+
82
+
83
+ /* Page Content */
84
+
85
+ .content_module {margin:0 10px 10px;}
86
+ .content_inner {
87
+ border:1px solid #D7D7D7;
88
+ border-color:#e9e9e9 #cdcdcd #a4a4a4;
89
+ border-width:1px 1px 2px;
90
+ background:#fff;
91
+ @include rounded-corners(10px);
92
+ }
93
+
94
+
95
+
96
+ .content_hd,
97
+ .content_bd,
98
+ .content_ft {overflow:hidden;zoom:1;padding:25px}
99
+
100
+
101
+
102
+ /* Module */
103
+
104
+ .module {margin:10px;}
105
+ .hd,.bd,.ft {overflow:hidden;_overflow:visible;_zoom:1;}
106
+ .inner {position:relative;}
107
+
108
+
109
+ /* Rounded Corners */
110
+
111
+ .tl, .tr, .bl, .br {height:10px; width:10px;position:absolute;}
112
+ .tl {background-position: left top;left:0}
113
+ .tr {background-position: right top;}
114
+ .bl {background-position: left bottom;left:0}
115
+ .br {background-position: right bottom;}
116
+ .br,.tr {right:0}
117
+ .tr,.tl {overflow:hidden;margin-bottom:-32000px;}
118
+ .bl,.br {bottom:0}
119
+
120
+
121
+ /* Complex Module */
122
+
123
+ .complex {overflow:visible;margin: 10px 20px 20px 10px; background-position:left top;}
124
+ .complex .inner {right:-10px; bottom:-10px; background-position:right bottom;padding:0 10px 10px 0;}
125
+ .complex .tl, .complex .br {display:none;}
126
+ .complex .bl {bottom:-10px;}
127
+ .complex .tr {right:-10px;}
128
+
129
+
130
+ /* Media Block */
131
+
132
+ .media {overflow:auto;zoom:1}
133
+ .media .thumb {width:100px;float:left;}
134
+ .media .desc {margin-left:110px;}
135
+
136
+
137
+ /* Clear Floats */
138
+ .clearfix:after {visibility: hidden;display: block;font-size: 0;content: " ";clear: both;height: 0;}
139
+ .clearfix {display: inline-block; }
140
+ /* start commented backslash hack \*/
141
+ * html .clearfix {height: 1%;}
142
+ .clearfix {display:block;}
143
+ /* close commented backslash hack */
@@ -4,6 +4,11 @@
4
4
  class ApplicationController < ActionController::Base
5
5
  helper :all # include all helpers, all the time
6
6
 
7
+ rescue_from StandardError do |e|
8
+ pp e.backtrace
9
+ raise e
10
+ end
11
+
7
12
  def current_user
8
13
  @current_user ||= (User.find_by_id(session[:user_id]) unless session[:user_id].blank?) || User.new
9
14
  end
@@ -0,0 +1,4 @@
1
+ class HomeController < ApplicationController
2
+ def index
3
+ end
4
+ end
@@ -33,7 +33,7 @@ class LoginController < ApplicationController
33
33
 
34
34
  def out
35
35
  logout!
36
- redirect_to("/tr8n/home")
36
+ redirect_to("/home")
37
37
  end
38
38
 
39
39
  private