backlog 0.36.2 → 0.37.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (250) hide show
  1. data/Gemfile +16 -4
  2. data/Gemfile.lock +130 -0
  3. data/History.txt +17 -0
  4. data/README.txt +0 -2
  5. data/Rakefile +17 -7
  6. data/app/controllers/absences_controller.rb +1 -2
  7. data/app/controllers/application_controller.rb +13 -14
  8. data/app/controllers/application_controller.rb.rails2 +186 -0
  9. data/app/controllers/estimates_controller.rb +1 -1
  10. data/app/controllers/groups_controller.rb +3 -1
  11. data/app/controllers/periods_controller.rb +61 -50
  12. data/app/controllers/{backlogs_controller.rb → projects_controller.rb} +35 -35
  13. data/app/controllers/search_controller.rb +2 -2
  14. data/app/controllers/tasks_controller.rb +11 -11
  15. data/app/controllers/user_controller.rb +6 -4
  16. data/app/controllers/welcome_controller.rb +4 -4
  17. data/app/controllers/work_locks_controller.rb +2 -2
  18. data/app/controllers/works_controller.rb +31 -31
  19. data/app/helpers/application_helper.rb +2 -2
  20. data/app/helpers/application_helper.rb.rails2 +118 -0
  21. data/app/helpers/periods_helper.rb +3 -3
  22. data/app/helpers/{backlogs_helper.rb → projects_helper.rb} +5 -5
  23. data/app/helpers/user_helper.rb +2 -2
  24. data/app/{models → mailers}/user_notify.rb +1 -0
  25. data/app/models/absence.rb +2 -2
  26. data/{lib → app/models}/clock.rb +0 -0
  27. data/app/models/estimate.rb +2 -2
  28. data/app/models/party.rb +1 -2
  29. data/app/models/period.rb +17 -18
  30. data/app/models/{backlog.rb → project.rb} +2 -2
  31. data/app/models/sidebar.rb +2 -2
  32. data/app/models/task.rb +28 -28
  33. data/app/models/user.rb +5 -4
  34. data/app/models/work.rb +29 -23
  35. data/app/models/work_lock_nagger.rb +1 -1
  36. data/app/models/works_report_filter.rb +4 -4
  37. data/app/views/customers/_name_list.rhtml +1 -1
  38. data/app/views/layouts/_headers.rhtml +2 -1
  39. data/app/views/layouts/_left_top.rhtml +32 -29
  40. data/app/views/layouts/_shortcuts.rhtml +15 -9
  41. data/app/views/layouts/_shortcuts_js.rhtml +4 -4
  42. data/app/views/layouts/mwrt002.html.erb +44 -0
  43. data/app/views/periods/_burn_down_chart.rhtml +1 -1
  44. data/app/views/periods/_show_active.rhtml +3 -3
  45. data/app/views/periods/_title.rhtml +1 -1
  46. data/app/views/{backlogs → projects}/_buttons.rhtml +4 -4
  47. data/app/views/projects/_form.rhtml +44 -0
  48. data/app/views/projects/_name_list.rhtml +5 -0
  49. data/app/views/projects/edit.rhtml +14 -0
  50. data/app/views/{backlogs → projects}/finish_task.rjs +0 -0
  51. data/app/views/projects/list.rhtml +16 -0
  52. data/app/views/{backlogs → projects}/move_task_to_period.rjs +0 -0
  53. data/app/views/{backlogs → projects}/new.rhtml +1 -1
  54. data/app/views/{backlogs → projects}/reopen_task.rjs +0 -0
  55. data/app/views/{backlogs → projects}/show.rhtml +6 -6
  56. data/app/views/search/results.rhtml +3 -3
  57. data/app/views/tasks/_backlog_header.rhtml +4 -4
  58. data/app/views/tasks/_completed.rhtml +2 -2
  59. data/app/views/tasks/_form.rhtml +13 -13
  60. data/app/views/tasks/_task.rhtml +10 -10
  61. data/app/views/tasks/edit.rhtml +1 -1
  62. data/app/views/tasks/list.rhtml +3 -3
  63. data/app/views/tasks/list_started.rhtml +4 -4
  64. data/app/views/tasks/start_work.rjs +1 -1
  65. data/app/views/user/login.rhtml +1 -1
  66. data/app/views/user/signup.rhtml +1 -1
  67. data/app/views/user/welcome.rhtml +1 -1
  68. data/app/views/works/_description_list.rhtml +1 -1
  69. data/app/views/works/_form.rhtml +5 -5
  70. data/app/views/works/_new_row.rhtml +8 -8
  71. data/app/views/works/_row.rhtml +1 -1
  72. data/app/views/works/_task_id_list.rhtml +1 -1
  73. data/app/views/works/daily_work_sheet.rhtml +1 -1
  74. data/app/views/works/list.rhtml +5 -5
  75. data/app/views/works/list_excel.rhtml +2 -2
  76. data/app/views/works/timeliste.rhtml +14 -14
  77. data/app/views/works/weekly_work_sheet.rhtml +5 -5
  78. data/app/views/works/weekly_work_sheet_details.rhtml +5 -5
  79. data/backlog.gemspec +44 -0
  80. data/bin/backlog +5 -1
  81. data/config.ru +4 -0
  82. data/config/application.rb +10 -0
  83. data/config/boot.rb +12 -116
  84. data/config/database.yml +3 -6
  85. data/config/database.yml~ +17 -0
  86. data/config/environment.rb +28 -49
  87. data/config/environments/development.rb +24 -20
  88. data/config/environments/development.rb.rails2 +26 -0
  89. data/config/environments/production.rb +26 -22
  90. data/config/environments/test.rb +20 -15
  91. data/config/environments/user_environment.rb +1 -1
  92. data/config/initializers/backtrace_silencers.rb +7 -0
  93. data/config/initializers/inflections.rb +10 -0
  94. data/config/initializers/jdbc.rb +1 -1
  95. data/config/initializers/mime_types.rb +5 -0
  96. data/config/initializers/secret_token.rb +7 -0
  97. data/config/initializers/session_store.rb +8 -0
  98. data/config/locales/en.yml +22 -11
  99. data/config/locales/no.yml +1 -0
  100. data/config/routes.rb +4 -5
  101. data/cruise_build.sh +6 -2
  102. data/db/migrate/004_add_period.rb +22 -22
  103. data/db/migrate/015_add_user_option.rb +5 -19
  104. data/db/migrate/017_increase_backlog_name_limit.rb +10 -0
  105. data/db/migrate/021_create_work_accounts.rb +0 -2
  106. data/db/migrate/20101006092700_rename_backlogs_to_projects.rb +22 -0
  107. data/db/migrate/20101006092700_rename_backlogs_to_projects.rb~ +22 -0
  108. data/db/schema.rb +27 -30
  109. data/db/seeds.rb +7 -0
  110. data/lib/array_helper.rb +0 -8
  111. data/lib/class_table_inheritance.rb +8 -7
  112. data/lib/tasks/backup.rake +3 -3
  113. data/lib/tasks/jdbc.rake +2 -2
  114. data/lib/version_from_history.rb +1 -1
  115. data/public/404.html +23 -7
  116. data/public/422.html +26 -0
  117. data/public/500.html +23 -6
  118. data/public/images/rails.png +0 -0
  119. data/public/javascripts/controls.js +5 -3
  120. data/public/javascripts/dragdrop.js +7 -6
  121. data/public/javascripts/effects.js +8 -13
  122. data/public/javascripts/prototype.js +3381 -1700
  123. data/public/javascripts/rails.js +175 -0
  124. data/public/robots.txt +5 -1
  125. data/script/rails +6 -0
  126. data/test/client/login.rb +0 -2
  127. data/test/client/login_test.rb +1 -1
  128. data/test/client/setup.rb +25 -24
  129. data/test/fixtures/{backlogs.yml → projects.yml} +2 -2
  130. data/test/fixtures/tasks.yml +9 -9
  131. data/test/fixtures/work_lock_subscriptions.yml +2 -2
  132. data/test/fixtures/works.yml +7 -7
  133. data/test/functional/periods_controller_test.rb +1 -1
  134. data/test/functional/{backlogs_controller_test.rb → projects_controller_test.rb} +22 -21
  135. data/test/functional/search_controller_test.rb +1 -1
  136. data/test/functional/tasks_controller_test.rb +17 -17
  137. data/test/functional/user_controller_test.rb +16 -21
  138. data/test/functional/welcome_controller_test.rb +4 -3
  139. data/test/functional/works_controller_test.rb +5 -5
  140. data/test/integration/user_system_test.rb +1 -1
  141. data/test/mocks/test/clock.rb +1 -1
  142. data/test/performance/browsing_test.rb +9 -0
  143. data/test/performance/common.rb +1 -1
  144. data/test/test_helper.rb +23 -6
  145. data/test/test_helper.rb~ +121 -0
  146. data/test/unit/user_test.rb +3 -3
  147. data/test/unit/work_test.rb +7 -7
  148. data/vendor/plugins/assert_cookie/lib/assert_cookie.rb +0 -2
  149. data/vendor/plugins/{foreign_key_migrations → dynamic_form}/MIT-LICENSE +1 -1
  150. data/vendor/plugins/dynamic_form/README +13 -0
  151. data/vendor/plugins/dynamic_form/Rakefile +10 -0
  152. data/vendor/plugins/dynamic_form/dynamic_form.gemspec +12 -0
  153. data/vendor/plugins/dynamic_form/init.rb +1 -0
  154. data/vendor/plugins/dynamic_form/lib/action_view/helpers/dynamic_form.rb +300 -0
  155. data/vendor/plugins/dynamic_form/lib/action_view/locale/en.yml +8 -0
  156. data/vendor/plugins/dynamic_form/lib/dynamic_form.rb +5 -0
  157. data/vendor/plugins/dynamic_form/test/dynamic_form_i18n_test.rb +42 -0
  158. data/vendor/plugins/dynamic_form/test/dynamic_form_test.rb +370 -0
  159. data/vendor/plugins/dynamic_form/test/test_helper.rb +9 -0
  160. data/vendor/plugins/prototype_legacy_helper/lib/prototype_legacy_helper.rb +432 -0
  161. data/vendor/plugins/prototype_legacy_helper/test/test_prototype_helper.rb +297 -0
  162. data/vendor/plugins/rails_time/test/debug.log +1 -0
  163. data/vendor/plugins/{redhillonrails_core → verification}/MIT-LICENSE +1 -1
  164. data/vendor/plugins/verification/README +34 -0
  165. data/vendor/plugins/verification/Rakefile +22 -0
  166. data/vendor/plugins/verification/init.rb +3 -0
  167. data/vendor/plugins/verification/lib/action_controller/verification.rb +132 -0
  168. data/vendor/plugins/verification/test/test_helper.rb +18 -0
  169. data/vendor/plugins/verification/test/verification_test.rb +270 -0
  170. data/vendor/plugins/will_paginate/lib/will_paginate/collection.rb +1 -1
  171. metadata +115 -134
  172. data/Gemfile~ +0 -4
  173. data/History.txt~ +0 -961
  174. data/LICENSE_LOCALIZATION +0 -20
  175. data/README_LOCALIZATION +0 -61
  176. data/README_RAILS +0 -180
  177. data/app/views/backlogs/_form.rhtml +0 -44
  178. data/app/views/backlogs/_name_list.rhtml +0 -5
  179. data/app/views/backlogs/edit.rhtml +0 -14
  180. data/app/views/backlogs/list.rhtml +0 -16
  181. data/app/views/layouts/mwrt002.rhtml +0 -43
  182. data/config/initializers/mongrel.rb +0 -83
  183. data/config/preinitializer.rb +0 -20
  184. data/config/warble.rb~ +0 -84
  185. data/db/migrate/017_insert_datek_projects.rb +0 -98
  186. data/lib/change_column_null_migration_fix.rb +0 -15
  187. data/no_test.rb~ +0 -6
  188. data/public/dispatch.cgi +0 -10
  189. data/public/dispatch.fcgi +0 -24
  190. data/public/dispatch.rb +0 -10
  191. data/script/about +0 -3
  192. data/script/breakpointer +0 -3
  193. data/script/console +0 -3
  194. data/script/dbconsole +0 -3
  195. data/script/destroy +0 -3
  196. data/script/generate +0 -3
  197. data/script/performance/benchmarker +0 -3
  198. data/script/performance/profiler +0 -3
  199. data/script/plugin +0 -3
  200. data/script/process/inspector +0 -3
  201. data/script/process/reaper +0 -3
  202. data/script/process/spawner +0 -3
  203. data/script/runner +0 -3
  204. data/script/server +0 -3
  205. data/test/client/login.rb~ +0 -33
  206. data/test/mocks/test/user_notify.rb +0 -16
  207. data/vendor/plugins/foreign_key_migrations/CHANGELOG +0 -103
  208. data/vendor/plugins/foreign_key_migrations/README +0 -87
  209. data/vendor/plugins/foreign_key_migrations/about.yml +0 -5
  210. data/vendor/plugins/foreign_key_migrations/init.rb +0 -1
  211. data/vendor/plugins/foreign_key_migrations/install.rb +0 -1
  212. data/vendor/plugins/foreign_key_migrations/lib/foreign_key_migrations.rb +0 -3
  213. data/vendor/plugins/foreign_key_migrations/lib/red_hill_consulting/foreign_key_migrations/active_record/base.rb +0 -22
  214. data/vendor/plugins/foreign_key_migrations/lib/red_hill_consulting/foreign_key_migrations/active_record/connection_adapters/abstract_adapter.rb +0 -22
  215. data/vendor/plugins/foreign_key_migrations/lib/red_hill_consulting/foreign_key_migrations/active_record/connection_adapters/table_definition.rb +0 -28
  216. data/vendor/plugins/lightwindow_helper/README +0 -33
  217. data/vendor/plugins/lightwindow_helper/assets/images/ajax-loading.gif +0 -0
  218. data/vendor/plugins/lightwindow_helper/assets/images/arrow-down.gif +0 -0
  219. data/vendor/plugins/lightwindow_helper/assets/images/arrow-up.gif +0 -0
  220. data/vendor/plugins/lightwindow_helper/assets/images/black-70.png +0 -0
  221. data/vendor/plugins/lightwindow_helper/assets/images/black.png +0 -0
  222. data/vendor/plugins/lightwindow_helper/assets/images/nextlabel.gif +0 -0
  223. data/vendor/plugins/lightwindow_helper/assets/images/prevlabel.gif +0 -0
  224. data/vendor/plugins/lightwindow_helper/assets/javascripts/lightwindow.js +0 -1921
  225. data/vendor/plugins/lightwindow_helper/assets/stylesheets/lightwindow.css +0 -376
  226. data/vendor/plugins/lightwindow_helper/init.rb +0 -1
  227. data/vendor/plugins/lightwindow_helper/install.rb +0 -7
  228. data/vendor/plugins/lightwindow_helper/lib/lightwindow_helper.rb +0 -31
  229. data/vendor/plugins/redhillonrails_core/CHANGELOG +0 -150
  230. data/vendor/plugins/redhillonrails_core/README +0 -124
  231. data/vendor/plugins/redhillonrails_core/init.rb +0 -19
  232. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/base.rb +0 -54
  233. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/abstract_adapter.rb +0 -31
  234. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/column.rb +0 -21
  235. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/foreign_key_definition.rb +0 -26
  236. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/index_definition.rb +0 -11
  237. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/mysql_adapter.rb +0 -74
  238. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/mysql_column.rb +0 -8
  239. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/postgresql_adapter.rb +0 -99
  240. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/schema_statements.rb +0 -16
  241. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/sqlite3_adapter.rb +0 -9
  242. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/connection_adapters/table_definition.rb +0 -27
  243. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/schema.rb +0 -27
  244. data/vendor/plugins/redhillonrails_core/lib/red_hill_consulting/core/active_record/schema_dumper.rb +0 -47
  245. data/vendor/plugins/transactional_migrations/CHANGELOG +0 -9
  246. data/vendor/plugins/transactional_migrations/MIT-LICENSE +0 -20
  247. data/vendor/plugins/transactional_migrations/README +0 -15
  248. data/vendor/plugins/transactional_migrations/about.yml +0 -5
  249. data/vendor/plugins/transactional_migrations/init.rb +0 -1
  250. data/vendor/plugins/transactional_migrations/lib/red_hill_consulting/transactional_migrations/active_record/migration.rb +0 -19
@@ -0,0 +1,26 @@
1
+ # Settings specified here will take precedence over those in config/environment.rb
2
+
3
+ # In the development environment your application's code is reloaded on
4
+ # every request. This slows down response time but is perfect for development
5
+ # since you don't have to restart the webserver when you make code changes.
6
+ config.cache_classes = false
7
+
8
+ # Log error messages when you accidentally call methods on nil.
9
+ config.whiny_nils = true
10
+
11
+ # Show full error reports and disable caching
12
+ config.action_controller.consider_all_requests_local = true
13
+ config.action_controller.perform_caching = false
14
+ config.action_view.debug_rjs = true
15
+
16
+ # Raise exceptions when mailer fails
17
+ config.action_mailer.raise_delivery_errors = true
18
+
19
+ ActionMailer::Base.delivery_method = :sendmail
20
+
21
+ #ActionMailer::Base.delivery_method = :smtp
22
+ #ActionMailer::Base.smtp_settings = {
23
+ # :address => "localhost",
24
+ # :port => 25,
25
+ # :domain => 'localdomain'
26
+ #}
@@ -1,29 +1,33 @@
1
- # Settings specified here will take precedence over those in config/environment.rb
1
+ Backlog::Application.configure do
2
+ # Settings specified here will take precedence over those in config/environment.rb
2
3
 
3
- # The production environment is meant for finished, "live" apps.
4
- # Code is not reloaded between requests
5
- config.cache_classes = true
4
+ # The production environment is meant for finished, "live" apps.
5
+ # Code is not reloaded between requests
6
+ config.serve_static_assets = true
7
+ config.cache_classes = true
6
8
 
7
- # Use a different logger for distributed setups
8
- # config.logger = SyslogLogger.new
9
+ # Use a different logger for distributed setups
10
+ # config.logger = SyslogLogger.new
9
11
 
10
- # Full error reports are disabled and caching is turned on
11
- config.action_controller.consider_all_requests_local = false
12
- config.action_controller.perform_caching = true
12
+ # Full error reports are disabled and caching is turned on
13
+ config.action_controller.consider_all_requests_local = false
14
+ config.action_controller.perform_caching = true
13
15
 
14
- # Enable serving of images, stylesheets, and javascripts from an asset server
15
- # config.action_controller.asset_host = "http://assets.example.com"
16
+ # Enable serving of images, stylesheets, and javascripts from an asset server
17
+ # config.action_controller.asset_host = "http://assets.example.com"
16
18
 
17
- # Disable delivery errors if you bad email addresses should just be ignored
18
- config.action_mailer.raise_delivery_errors = true
19
+ # Disable delivery errors if you bad email addresses should just be ignored
20
+ config.action_mailer.raise_delivery_errors = true
19
21
 
20
- puts "Using sendmail to send mail"
21
- ActionMailer::Base.delivery_method = :sendmail
22
+ puts "Using sendmail to send mail"
23
+ ActionMailer::Base.delivery_method = :sendmail
22
24
 
23
- #puts "Using sendmail to send mail"
24
- #ActionMailer::Base.delivery_method = :smtp
25
- #ActionMailer::Base.smtp_settings = {
26
- # :address => "localhost",
27
- # :port => 25,
28
- # :domain => 'localdomain'
29
- #}
25
+ #puts "Using sendmail to send mail"
26
+ #ActionMailer::Base.delivery_method = :smtp
27
+ #ActionMailer::Base.smtp_settings = {
28
+ # :address => "localhost",
29
+ # :port => 25,
30
+ # :domain => 'localdomain'
31
+ #}
32
+ config.active_support.deprecation = :notify
33
+ end
@@ -1,19 +1,24 @@
1
- # Settings specified here will take precedence over those in config/environment.rb
1
+ Backlog::Application.configure do
2
+ # Settings specified here will take precedence over those in config/environment.rb
2
3
 
3
- # The test environment is used exclusively to run your application's
4
- # test suite. You never need to work with it otherwise. Remember that
5
- # your test database is "scratch space" for the test suite and is wiped
6
- # and recreated between test runs. Don't rely on the data there!
7
- config.cache_classes = true
4
+ # The test environment is used exclusively to run your application's
5
+ # test suite. You never need to work with it otherwise. Remember that
6
+ # your test database is "scratch space" for the test suite and is wiped
7
+ # and recreated between test runs. Don't rely on the data there!
8
+ config.serve_static_assets = true
9
+ config.cache_classes = true
8
10
 
9
- # Log error messages when you accidentally call methods on nil.
10
- config.whiny_nils = true
11
+ # Log error messages when you accidentally call methods on nil.
12
+ config.whiny_nils = true
11
13
 
12
- # Show full error reports and disable caching
13
- config.action_controller.consider_all_requests_local = true
14
- config.action_controller.perform_caching = false
14
+ # Show full error reports and disable caching
15
+ config.consider_all_requests_local = true
16
+ config.action_controller.perform_caching = false
15
17
 
16
- # Tell ActionMailer not to deliver emails to the real world.
17
- # The :test delivery method accumulates sent emails in the
18
- # ActionMailer::Base.deliveries array.
19
- config.action_mailer.delivery_method = :test
18
+ # Tell ActionMailer not to deliver emails to the real world.
19
+ # The :test delivery method accumulates sent emails in the
20
+ # ActionMailer::Base.deliveries array.
21
+ config.action_mailer.delivery_method = :test
22
+ config.active_support.deprecation = :stderr
23
+ config.autoload_paths.unshift "#{Rails.root}/test/mocks/test"
24
+ end
@@ -16,6 +16,6 @@ module UserSystem
16
16
  :mail_charset => 'utf-8',
17
17
 
18
18
  # Security token lifetime in hours
19
- :security_token_life_hours => 24 * 365,
19
+ :security_token_life_hours => 24,
20
20
  }
21
21
  end
@@ -0,0 +1,7 @@
1
+ # Be sure to restart your server when you modify this file.
2
+
3
+ # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4
+ # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5
+
6
+ # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7
+ # Rails.backtrace_cleaner.remove_silencers!
@@ -0,0 +1,10 @@
1
+ # Be sure to restart your server when you modify this file.
2
+
3
+ # Add new inflection rules using the following format
4
+ # (all these examples are active by default):
5
+ # ActiveSupport::Inflector.inflections do |inflect|
6
+ # inflect.plural /^(ox)$/i, '\1en'
7
+ # inflect.singular /^(ox)en/i, '\1'
8
+ # inflect.irregular 'person', 'people'
9
+ # inflect.uncountable %w( fish sheep )
10
+ # end
@@ -4,4 +4,4 @@
4
4
  # This file allows the JDBC drivers to be hooked into ActiveRecord
5
5
  # such that you don't have to change anything else in your Rails
6
6
  # application.
7
- require 'jdbc_adapter' if defined?(JRUBY_VERSION)
7
+ require 'arjdbc' if defined?(JRUBY_VERSION)
@@ -0,0 +1,5 @@
1
+ # Be sure to restart your server when you modify this file.
2
+
3
+ # Add new mime types for use in respond_to blocks:
4
+ # Mime::Type.register "text/richtext", :rtf
5
+ # Mime::Type.register_alias "text/html", :iphone
@@ -0,0 +1,7 @@
1
+ # Be sure to restart your server when you modify this file.
2
+
3
+ # Your secret key for verifying the integrity of signed cookies.
4
+ # If you change this key, all old signed cookies will become invalid!
5
+ # Make sure the secret is at least 30 characters and all random,
6
+ # no regular words or you'll be exposed to dictionary attacks.
7
+ Backlog::Application.config.secret_token = 'c99338d64c0057c7dd914d34dc36a5666a2dbf7855f7981542df6a00ef46c5e8986024b187ab7f80df5242c6c0e2accd6cfd52df99a9ec5d4e8c98e1214d375d'
@@ -0,0 +1,8 @@
1
+ # Be sure to restart your server when you modify this file.
2
+
3
+ Backlog::Application.config.session_store :cookie_store, :key => '_backlog_session'
4
+
5
+ # Use the database for sessions instead of the cookie-based default,
6
+ # which shouldn't be used to store highly confidential information
7
+ # (create the session table with "rake db:sessions:create")
8
+ # Backlog::Application.config.session_store :active_record_store
@@ -11,16 +11,16 @@ en:
11
11
  accepted: "must be accepted"
12
12
  empty: "can't be empty"
13
13
  blank: "can't be blank"
14
- too_long: "is too long (maximum is {{count}} characters)"
15
- too_short: "is too short (minimum is {{count}} characters)"
16
- wrong_length: "is the wrong length (should be {{count}} characters)"
14
+ too_long: "is too long (maximum is %{count} characters)"
15
+ too_short: "is too short (minimum is %{count} characters)"
16
+ wrong_length: "is the wrong length (should be %{count} characters)"
17
17
  taken: "has already been taken"
18
18
  not_a_number: "is not a number"
19
- greater_than: "must be greater than {{count}}"
20
- greater_than_or_equal_to: "must be greater than or equal to {{count}}"
21
- equal_to: "must be equal to {{count}}"
22
- less_than: "must be less than {{count}}"
23
- less_than_or_equal_to: "must be less than or equal to {{count}}"
19
+ greater_than: "must be greater than %{count}"
20
+ greater_than_or_equal_to: "must be greater than or equal to %{count}"
21
+ equal_to: "must be equal to %{count}"
22
+ less_than: "must be less than %{count}"
23
+ less_than_or_equal_to: "must be less than or equal to %{count}"
24
24
  odd: "must be odd"
25
25
  even: "must be even"
26
26
  # Append your own errors here or at the model/attributes scope.
@@ -31,7 +31,7 @@ en:
31
31
  # For example,
32
32
  # models:
33
33
  # user:
34
- # blank: "This is a custom blank message for {{model}}: {{attribute}}"
34
+ # blank: "This is a custom blank message for %{model}: %{attribute}"
35
35
  # attributes:
36
36
  # login:
37
37
  # blank: "This is a custom blank message for User login"
@@ -44,6 +44,7 @@ en:
44
44
  absent: Absent
45
45
  account: Account
46
46
  active: Active
47
+ add_task: Add task
47
48
  administration: Administration
48
49
  all: All
49
50
  all_accounts: all accounts
@@ -102,6 +103,7 @@ en:
102
103
  invoice_code: Invoice Code
103
104
  invoice_short: Inv.
104
105
  left: Left
106
+ listing: Listing
105
107
  listing_works: Recorded work
106
108
  lock: Lock
107
109
  log_in: Log in
@@ -118,14 +120,17 @@ en:
118
120
  new_customer: Add new customer
119
121
  new_group: Form new group
120
122
  new_period: Add new sprint
123
+ new_project: Start new project
121
124
  new_task: Add new task
122
125
  new_work: Add new work record
123
126
  new_work_account: Add new work account
124
127
  next: Next
128
+ next_day: Next day
129
+ next_week: Next week
125
130
  no: No
126
131
  no_backlog: No Backlog
127
132
  no_pending_tasks: There are no pending tasks in this sprint.
128
- no_pending_tasks_in_backlog: There are no pending tasks in this backlog.
133
+ no_pending_tasks_in_project: There are no pending tasks in this backlog.
129
134
  not_grabbed: Not grabbed by anyone
130
135
  notes: Notes
131
136
  ownership: Ownership
@@ -138,8 +143,14 @@ en:
138
143
  postponed: Postponed
139
144
  previous: Previous
140
145
  previous_abr: Prev.
146
+ previous_day: Previous day
147
+ previous_week: Previous week
148
+ project: Project
149
+ project_description: Task list with ordering and status tracking
150
+ projects: Projects
141
151
  projection: Projection
142
152
  public_holiday: Public Holiday
153
+ refresh: Refresh
143
154
  release_task: Release task
144
155
  reopen: Reopen task
145
156
  resolution: Resolution
@@ -148,7 +159,7 @@ en:
148
159
  saturday: Saturday
149
160
  save: Save
150
161
  search: Search
151
- search_results_for: "Search results for '{{query}}'"
162
+ search_results_for: "Search results for '%{query}'"
152
163
  select: Select
153
164
  shortcuts: Shortcuts
154
165
  sick_days_used: Sick days
@@ -106,6 +106,7 @@
106
106
  invoice_code: Faktureringskode
107
107
  invoice_short: Fakt
108
108
  left: Venstre
109
+ listing: Lister
109
110
  listing_works: Registrert arbeid
110
111
  lock: Lås
111
112
  log_in: Log inn
@@ -1,6 +1,5 @@
1
- ActionController::Routing::Routes.draw do |map|
2
- map.connect '', :controller => "welcome"
3
- map.connect ':controller/:action/:year/:week'
4
- map.connect ':controller/:action/:id.:format'
5
- map.connect ':controller/:action/:id'
1
+ Backlog::Application.routes.draw do
2
+ match '/' => 'welcome#index'
3
+ match ':controller/:action/:year/:week' => '#index'
4
+ match '/:controller(/:action(/:id))'
6
5
  end
@@ -1,10 +1,14 @@
1
1
  #!/bin/bash
2
2
 
3
- whoami
3
+ echo Running as `whoami`
4
4
  which jruby
5
5
  jruby --version
6
6
 
7
7
  export RAILS_ENV=test
8
8
 
9
9
  jruby -S rake db:migrate
10
- jruby -S rake
10
+
11
+ FILE_PATTERN="test/unit/*_test.rb test/functional/*_test.rb test/integration/*_test.rb"
12
+ EXCLUDE_PATTERN="^/Library/.*$|^\\(__FORWARDABLE__\\)$|^\\(erb\\)$|^\\(eval\\)$|^yaml/tag$"
13
+
14
+ jruby -S bundle exec rcov -I ./test -x "$EXCLUDE_PATTERN" --profile --sort coverage $FILE_PATTERN
@@ -8,13 +8,13 @@ class AddPeriod < ActiveRecord::Migration
8
8
  end
9
9
  add_column :tasks, :period_id, :integer
10
10
  Backlog.find(:all).each do |backlog|
11
- default_period = Period.new
11
+ default_period = Period.new
12
12
  default_period.backlog_id = backlog.id
13
- default_period.position = 1
14
- default_period.start_on = Date.parse('2006-01-01')
15
- default_period.end_on = Date.parse('2006-12-31')
13
+ default_period.position = 1
14
+ default_period.start_on = Date.parse('2006-01-01')
15
+ default_period.end_on = Date.parse('2006-12-31')
16
16
  default_period.save
17
- start_date = Date.today
17
+ start_date = Date.today
18
18
  Task.find(:all, :conditions => "backlog_id = #{backlog.id}").each do |task|
19
19
  if task.works.first
20
20
  task_completed_on = task.works.first.completed_at.to_date
@@ -23,8 +23,8 @@ class AddPeriod < ActiveRecord::Migration
23
23
  task.period_id = default_period.id
24
24
  task.save
25
25
  end
26
- default_period.start_on = start_date
27
- default_period.end_on = start_date + 365
26
+ default_period.start_on = start_date
27
+ default_period.end_on = start_date + 365
28
28
  default_period.save
29
29
  end
30
30
  remove_column :tasks, :backlog_id
@@ -39,25 +39,25 @@ class AddPeriod < ActiveRecord::Migration
39
39
  remove_column :tasks, :period_id
40
40
  drop_table :periods
41
41
  end
42
- end
43
42
 
44
- class Backlog < ActiveRecord::Base
45
- end
43
+ class Backlog < ActiveRecord::Base ; end
46
44
 
47
- class Period < ActiveRecord::Base
48
- belongs_to :backlog
49
- end
45
+ class Period < ActiveRecord::Base
46
+ belongs_to :backlog
47
+ end
50
48
 
51
- class Task < ActiveRecord::Base
52
- belongs_to :period
53
- acts_as_tree :order => 'position'
54
-
55
- def root_task
56
- if parent
57
- parent.root_task
58
- else
59
- self
49
+ class Task < ActiveRecord::Base
50
+ belongs_to :period
51
+ acts_as_tree :order => 'position'
52
+
53
+ def root_task
54
+ if parent
55
+ parent.root_task
56
+ else
57
+ self
58
+ end
60
59
  end
60
+
61
61
  end
62
62
 
63
63
  end
@@ -11,12 +11,12 @@ class AddUserOption < ActiveRecord::Migration
11
11
  end
12
12
  remove_column :tasks, :work_started_at
13
13
  end
14
-
14
+
15
15
  def self.down
16
16
  add_column :tasks, :work_started_at, :datetime
17
17
  started_works = Work.find(:all, :conditions => 'completed_at IS NULL')
18
18
  started_works.each do |work|
19
- task = Task.find(work.task_id)
19
+ task = Task.find(work.task_id)
20
20
  task.work_started_at = work.started_at
21
21
  task.save!
22
22
  work.destroy
@@ -26,22 +26,8 @@ class AddUserOption < ActiveRecord::Migration
26
26
  remove_column :estimates, :user_id
27
27
  remove_column :backlogs, :enable_users
28
28
  end
29
-
30
- def self.change_column_null(table_name, column_name, column_type, null, default = nil) #:nodoc:
31
- unless null || default.nil?
32
- execute("UPDATE #{table_name} SET #{column_name}=#{quote(default)} WHERE #{column_name} IS NULL")
33
- end
34
- if ActiveRecord::Base.connection.adapter_name.downcase == "postgresql"
35
- execute("ALTER TABLE #{table_name} ALTER #{column_name} #{null ? 'DROP' : 'SET'} NOT NULL")
36
- elsif ActiveRecord::Base.connection.adapter_name.downcase == "mysql"
37
- execute("ALTER TABLE #{table_name} MODIFY COLUMN #{column_name} #{column_type} #{null ? 'NULL' : 'NOT NULL'}")
38
- end
39
- end
40
-
41
- end
42
29
 
43
- class Task < ActiveRecord::Base
44
- end
30
+ class Task < ActiveRecord::Base ; end
31
+ class Work < ActiveRecord::Base ; end
45
32
 
46
- class Work < ActiveRecord::Base
47
- end
33
+ end
@@ -0,0 +1,10 @@
1
+ class IncreaseBacklogNameLimit < ActiveRecord::Migration
2
+ def self.up
3
+ change_column :backlogs, :name, :string, :limit => 64, :null => false
4
+ end
5
+
6
+ def self.down
7
+ execute "UPDATE backlogs SET name = SUBSTR(name, 0, 33)"
8
+ change_column :backlogs, :name, :string, :limit => 32, :null => false
9
+ end
10
+ end
@@ -1,5 +1,3 @@
1
- require 'change_column_null_migration_fix'
2
-
3
1
  class CreateWorkAccounts < ActiveRecord::Migration
4
2
  def self.up
5
3
  create_table :work_accounts do |t|
@@ -0,0 +1,22 @@
1
+ class RenameBacklogsToProjects < ActiveRecord::Migration
2
+ def self.up
3
+ remove_foreign_key "backlogs", "backlogs_customer_id_fkey"
4
+ remove_foreign_key "tasks", "tasks_backlog_id_fkey"
5
+ remove_foreign_key "work_lock_subscriptions", "work_lock_subscriptions_backlog_id_fkey"
6
+ remove_foreign_key "works", "works_backlog_id_fkey"
7
+
8
+ rename_table :backlogs, :projects
9
+ rename_column :tasks, :backlog_id, :project_id
10
+ rename_column :work_lock_subscriptions, :backlog_id, :project_id
11
+ rename_column :works, :backlog_id, :project_id
12
+
13
+ add_foreign_key "projects", ["customer_id"], "customers", ["id"], :name => "projects_customer_id_fkey"
14
+ add_foreign_key "tasks", ["project_id"], "projects", ["id"], :name => "tasks_project_id_fkey"
15
+ add_foreign_key "work_lock_subscriptions", ["project_id"], "projects", ["id"], :name => "work_lock_subscriptions_project_id_fkey"
16
+ add_foreign_key "works", ["project_id"], "projects", ["id"], :name => "works_project_id_fkey"
17
+ end
18
+
19
+ def self.down
20
+ raise "Not gonna happen!"
21
+ end
22
+ end