stuff_to_do_plugin 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (159) hide show
  1. data/COPYRIGHT.txt +18 -0
  2. data/CREDITS.txt +6 -0
  3. data/GPL.txt +339 -0
  4. data/README.rdoc +61 -0
  5. data/Rakefile +38 -0
  6. data/VERSION +1 -0
  7. data/app/controllers/stuff_to_do_controller.rb +161 -0
  8. data/app/helpers/stuff_to_do_helper.rb +88 -0
  9. data/app/models/stuff_to_do.rb +208 -0
  10. data/app/models/stuff_to_do_filter.rb +32 -0
  11. data/app/models/stuff_to_do_mailer.rb +16 -0
  12. data/app/views/settings/_stuff_to_do_settings.html.erb +27 -0
  13. data/app/views/stuff_to_do/_issue.html.erb +16 -0
  14. data/app/views/stuff_to_do/_item.html.erb +5 -0
  15. data/app/views/stuff_to_do/_left_panes.html.erb +51 -0
  16. data/app/views/stuff_to_do/_panes.html.erb +11 -0
  17. data/app/views/stuff_to_do/_project.html.erb +6 -0
  18. data/app/views/stuff_to_do/_right_panes.html.erb +25 -0
  19. data/app/views/stuff_to_do/_time_grid.html.erb +113 -0
  20. data/app/views/stuff_to_do/_time_grid_form.html.erb +32 -0
  21. data/app/views/stuff_to_do/index.html.erb +44 -0
  22. data/app/views/stuff_to_do_mailer/recommended_below_threshold.erb +3 -0
  23. data/app/views/stuff_to_do_mailer/recommended_below_threshold.text.html.rhtml +1 -0
  24. data/assets/images/b.png +0 -0
  25. data/assets/images/bl.png +0 -0
  26. data/assets/images/br.png +0 -0
  27. data/assets/images/closelabel.gif +0 -0
  28. data/assets/images/loading.gif +0 -0
  29. data/assets/images/tl.png +0 -0
  30. data/assets/images/tr.png +0 -0
  31. data/assets/javascripts/facebox.js +319 -0
  32. data/assets/javascripts/jquery-1.2.6.min.js +32 -0
  33. data/assets/javascripts/jquery-ui.js +2839 -0
  34. data/assets/javascripts/jquery.contextMenu.js +212 -0
  35. data/assets/javascripts/semantic.cache +15 -0
  36. data/assets/javascripts/stuff-to-do.js +270 -0
  37. data/assets/javascripts/ui/build.xml +24 -0
  38. data/assets/javascripts/ui/effects.blind.js +49 -0
  39. data/assets/javascripts/ui/effects.bounce.js +78 -0
  40. data/assets/javascripts/ui/effects.clip.js +54 -0
  41. data/assets/javascripts/ui/effects.core.js +510 -0
  42. data/assets/javascripts/ui/effects.drop.js +50 -0
  43. data/assets/javascripts/ui/effects.explode.js +79 -0
  44. data/assets/javascripts/ui/effects.fold.js +55 -0
  45. data/assets/javascripts/ui/effects.highlight.js +48 -0
  46. data/assets/javascripts/ui/effects.pulsate.js +55 -0
  47. data/assets/javascripts/ui/effects.scale.js +180 -0
  48. data/assets/javascripts/ui/effects.shake.js +57 -0
  49. data/assets/javascripts/ui/effects.slide.js +50 -0
  50. data/assets/javascripts/ui/effects.transfer.js +59 -0
  51. data/assets/javascripts/ui/i18n/ui.datepicker-ar.js +26 -0
  52. data/assets/javascripts/ui/i18n/ui.datepicker-bg.js +25 -0
  53. data/assets/javascripts/ui/i18n/ui.datepicker-ca.js +25 -0
  54. data/assets/javascripts/ui/i18n/ui.datepicker-cs.js +25 -0
  55. data/assets/javascripts/ui/i18n/ui.datepicker-da.js +25 -0
  56. data/assets/javascripts/ui/i18n/ui.datepicker-de.js +25 -0
  57. data/assets/javascripts/ui/i18n/ui.datepicker-eo.js +25 -0
  58. data/assets/javascripts/ui/i18n/ui.datepicker-es.js +25 -0
  59. data/assets/javascripts/ui/i18n/ui.datepicker-fa.js +25 -0
  60. data/assets/javascripts/ui/i18n/ui.datepicker-fi.js +25 -0
  61. data/assets/javascripts/ui/i18n/ui.datepicker-fr.js +25 -0
  62. data/assets/javascripts/ui/i18n/ui.datepicker-he.js +25 -0
  63. data/assets/javascripts/ui/i18n/ui.datepicker-hr.js +25 -0
  64. data/assets/javascripts/ui/i18n/ui.datepicker-hu.js +25 -0
  65. data/assets/javascripts/ui/i18n/ui.datepicker-hy.js +25 -0
  66. data/assets/javascripts/ui/i18n/ui.datepicker-id.js +25 -0
  67. data/assets/javascripts/ui/i18n/ui.datepicker-is.js +25 -0
  68. data/assets/javascripts/ui/i18n/ui.datepicker-it.js +25 -0
  69. data/assets/javascripts/ui/i18n/ui.datepicker-ja.js +26 -0
  70. data/assets/javascripts/ui/i18n/ui.datepicker-ko.js +25 -0
  71. data/assets/javascripts/ui/i18n/ui.datepicker-lt.js +25 -0
  72. data/assets/javascripts/ui/i18n/ui.datepicker-lv.js +25 -0
  73. data/assets/javascripts/ui/i18n/ui.datepicker-nl.js +25 -0
  74. data/assets/javascripts/ui/i18n/ui.datepicker-no.js +25 -0
  75. data/assets/javascripts/ui/i18n/ui.datepicker-pl.js +25 -0
  76. data/assets/javascripts/ui/i18n/ui.datepicker-pt-BR.js +25 -0
  77. data/assets/javascripts/ui/i18n/ui.datepicker-ro.js +25 -0
  78. data/assets/javascripts/ui/i18n/ui.datepicker-ru.js +25 -0
  79. data/assets/javascripts/ui/i18n/ui.datepicker-sk.js +25 -0
  80. data/assets/javascripts/ui/i18n/ui.datepicker-sl.js +26 -0
  81. data/assets/javascripts/ui/i18n/ui.datepicker-sq.js +25 -0
  82. data/assets/javascripts/ui/i18n/ui.datepicker-sv.js +25 -0
  83. data/assets/javascripts/ui/i18n/ui.datepicker-th.js +25 -0
  84. data/assets/javascripts/ui/i18n/ui.datepicker-tr.js +25 -0
  85. data/assets/javascripts/ui/i18n/ui.datepicker-uk.js +25 -0
  86. data/assets/javascripts/ui/i18n/ui.datepicker-zh-CN.js +25 -0
  87. data/assets/javascripts/ui/i18n/ui.datepicker-zh-TW.js +25 -0
  88. data/assets/javascripts/ui/svn.log +11 -0
  89. data/assets/javascripts/ui/ui.accordion.js +400 -0
  90. data/assets/javascripts/ui/ui.core.js +533 -0
  91. data/assets/javascripts/ui/ui.datepicker.js +1754 -0
  92. data/assets/javascripts/ui/ui.dialog.js +630 -0
  93. data/assets/javascripts/ui/ui.draggable.js +696 -0
  94. data/assets/javascripts/ui/ui.droppable.js +314 -0
  95. data/assets/javascripts/ui/ui.progressbar.js +114 -0
  96. data/assets/javascripts/ui/ui.resizable.js +805 -0
  97. data/assets/javascripts/ui/ui.selectable.js +266 -0
  98. data/assets/javascripts/ui/ui.slider.js +552 -0
  99. data/assets/javascripts/ui/ui.sortable.js +1012 -0
  100. data/assets/javascripts/ui/ui.tabs.js +572 -0
  101. data/assets/stylesheets/stuff_to_do.css +216 -0
  102. data/config/locales/bg.yml +18 -0
  103. data/config/locales/ca-fr.yml +18 -0
  104. data/config/locales/cs.yml +16 -0
  105. data/config/locales/da.yml +16 -0
  106. data/config/locales/de.yml +18 -0
  107. data/config/locales/en.yml +24 -0
  108. data/config/locales/es.yml +19 -0
  109. data/config/locales/fr.yml +17 -0
  110. data/config/locales/hu.yml +16 -0
  111. data/config/locales/it.yml +16 -0
  112. data/config/locales/ja.yml +18 -0
  113. data/config/locales/ko.yml +18 -0
  114. data/config/locales/lt.yml +18 -0
  115. data/config/locales/nl.yml +20 -0
  116. data/config/locales/pt-BR.yml +18 -0
  117. data/config/locales/ru.yml +19 -0
  118. data/config/locales/sv.yml +19 -0
  119. data/config/locales/tr.yml +18 -0
  120. data/config/routes.rb +3 -0
  121. data/init.rb +54 -0
  122. data/lang/bg.yml +17 -0
  123. data/lang/ca-fr.yml +17 -0
  124. data/lang/cs.yml +15 -0
  125. data/lang/da.yml +15 -0
  126. data/lang/de.yml +17 -0
  127. data/lang/en.yml +21 -0
  128. data/lang/es.yml +18 -0
  129. data/lang/fr.yml +16 -0
  130. data/lang/hu.yml +15 -0
  131. data/lang/it.yml +15 -0
  132. data/lang/ja.yml +17 -0
  133. data/lang/ko.yml +17 -0
  134. data/lang/lt.yml +17 -0
  135. data/lang/pt-br.yml +17 -0
  136. data/lang/ru.yml +15 -0
  137. data/lang/sv.yml +18 -0
  138. data/lang/tr.yml +17 -0
  139. data/lib/redmine_stuff_to_do/stuff_to_do_compatibility.rb +15 -0
  140. data/lib/stuff_to_do_array_patch.rb +8 -0
  141. data/lib/stuff_to_do_issue_patch.rb +57 -0
  142. data/lib/stuff_to_do_project_patch.rb +31 -0
  143. data/lib/stuff_to_do_user_patch.rb +10 -0
  144. data/rails/init.rb +1 -0
  145. data/spec/controllers/stuff_to_do_controller_add_to_time_grid_spec.rb +58 -0
  146. data/spec/controllers/stuff_to_do_controller_index_spec.rb +155 -0
  147. data/spec/controllers/stuff_to_do_controller_remove_from_time_grid_spec.rb +56 -0
  148. data/spec/controllers/stuff_to_do_controller_reorder_spec.rb +179 -0
  149. data/spec/controllers/stuff_to_do_controller_save_time_entries_spec.rb +56 -0
  150. data/spec/controllers/stuff_to_do_private_methods_spec.rb +82 -0
  151. data/spec/lib/stuff_to_do_issue_patch_spec.rb +60 -0
  152. data/spec/lib/stuff_to_do_project_patch_spec.rb +50 -0
  153. data/spec/lib/stuff_to_do_user_patch_spec.rb +8 -0
  154. data/spec/models/stuff_to_do_filter_spec.rb +3 -0
  155. data/spec/models/stuff_to_do_mailer_spec.rb +42 -0
  156. data/spec/models/stuff_to_do_spec.rb +426 -0
  157. data/spec/sanity_spec.rb +7 -0
  158. data/spec/spec_helper.rb +130 -0
  159. metadata +211 -0
@@ -0,0 +1,7 @@
1
+ require File.dirname(__FILE__) + '/spec_helper'
2
+
3
+ describe Class do
4
+ it "should be a class of Class" do
5
+ Class.class.should eql(Class)
6
+ end
7
+ end
@@ -0,0 +1,130 @@
1
+ # This file is copied to ~/spec when you run 'ruby script/generate rspec'
2
+ # from the project root directory.
3
+ ENV["RAILS_ENV"] = "test"
4
+
5
+ # Allows loading of an environment config based on the environment
6
+ redmine_root = ENV["REDMINE_ROOT"] || File.dirname(__FILE__) + "/../../../.."
7
+ require File.expand_path(redmine_root + "/config/environment")
8
+ require 'spec'
9
+ require 'spec/rails'
10
+ require 'ruby-debug'
11
+
12
+ Spec::Runner.configure do |config|
13
+ # If you're not using ActiveRecord you should remove these
14
+ # lines, delete config/database.yml and disable :active_record
15
+ # in your config/boot.rb
16
+ config.use_transactional_fixtures = true
17
+ config.use_instantiated_fixtures = false
18
+ config.fixture_path = RAILS_ROOT + '/spec/fixtures/'
19
+
20
+ # == Fixtures
21
+ #
22
+ # You can declare fixtures for each example_group like this:
23
+ # describe "...." do
24
+ # fixtures :table_a, :table_b
25
+ #
26
+ # Alternatively, if you prefer to declare them only once, you can
27
+ # do so right here. Just uncomment the next line and replace the fixture
28
+ # names with your fixtures.
29
+ #
30
+ # config.global_fixtures = :table_a, :table_b
31
+ #
32
+ # If you declare global fixtures, be aware that they will be declared
33
+ # for all of your examples, even those that don't use them.
34
+ #
35
+ # == Mock Framework
36
+ #
37
+ # RSpec uses it's own mocking framework by default. If you prefer to
38
+ # use mocha, flexmock or RR, uncomment the appropriate line:
39
+ #
40
+ # config.mock_with :mocha
41
+ # config.mock_with :flexmock
42
+ # config.mock_with :rr
43
+ end
44
+
45
+ # require the entire app if we're running under coverage testing,
46
+ # so we measure 0% covered files in the report
47
+ #
48
+ # http://www.pervasivecode.com/blog/2008/05/16/making-rcov-measure-your-whole-rails-app-even-if-tests-miss-entire-source-files/
49
+ if defined?(Rcov)
50
+ all_app_files = Dir.glob('{app,lib}/**/*.rb')
51
+ all_app_files.each{|rb| require rb}
52
+ end
53
+
54
+
55
+ module AssociationMatcher
56
+ class Association
57
+ def initialize(field, association_type)
58
+ @field = field
59
+ @association_type = association_type
60
+ end
61
+
62
+ def matches?(model)
63
+ @model=model
64
+ association = @model.reflect_on_association(@field)
65
+ return false if association.nil?
66
+
67
+ return association.name == @field && association.macro == @association_type
68
+ end
69
+
70
+ def failure_message
71
+ "expected <#{@model.name}> to have a #{@association_type} association for #{@field}"
72
+ end
73
+
74
+ def negative_failure_message
75
+ "expected <#{@model.name}> to not have a #{@association_type} association for #{@field} but one was found"
76
+ end
77
+ end
78
+
79
+ def have_association(field, association_type)
80
+ Association.new(field, association_type)
81
+ end
82
+ end
83
+
84
+ include AssociationMatcher
85
+
86
+ describe 'get_time_grid_data', :shared => true do
87
+ it 'should set @date for the view' do
88
+ do_request
89
+ assigns[:date].should_not be_nil
90
+ end
91
+
92
+ it 'should set @calendar for the view' do
93
+ do_request
94
+ assigns[:calendar].should_not be_nil
95
+ end
96
+
97
+ it 'should set @issues for the view' do
98
+ do_request
99
+ assigns[:issues].should_not be_nil
100
+ end
101
+
102
+ it 'should set @time_entry for the view' do
103
+ do_request
104
+ assigns[:time_entry].should_not be_nil
105
+ end
106
+
107
+ it 'should get the issues and time entries for the user in the date range' do
108
+ # Redmine uses dates based on language settings
109
+ first_workday = (l(:general_first_day_of_week).to_i - 1)%7 + 1
110
+ last_workday = (first_workday + 5)%7 + 1
111
+ date = Date.today
112
+ date_from = date - (date.cwday - first_workday)%7
113
+ date_to = date + (last_workday - date.cwday)%7
114
+
115
+ project = mock_model(Project, :name => 'ABC Test')
116
+ issues = [
117
+ mock_model(Issue, :project => project, :subject => 'Testing', :time_entries => []),
118
+ mock_model(Issue, :project => project, :subject => 'Testing', :time_entries => [])
119
+ ]
120
+ User.current.should_receive(:time_grid_issues).and_return(Issue)
121
+ Issue.should_receive(:visible).at_least(:once).and_return(Issue)
122
+ Issue.should_receive(:all).
123
+ with(:order => "#{Issue.table_name}.id ASC").
124
+ and_return(issues)
125
+
126
+ do_request
127
+ end
128
+
129
+ end
130
+
metadata ADDED
@@ -0,0 +1,211 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: stuff_to_do_plugin
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.0
5
+ platform: ruby
6
+ authors:
7
+ - Eric Davis
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2010-04-11 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: The Stuff To Do plugin allows a user to order and prioritize the issues and projects they are doing into a specific order. It will also allow other privileged users to reorder the user's workload.
17
+ email: edavis@littlestreamsoftware.com
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - README.rdoc
24
+ files:
25
+ - COPYRIGHT.txt
26
+ - CREDITS.txt
27
+ - GPL.txt
28
+ - README.rdoc
29
+ - Rakefile
30
+ - VERSION
31
+ - app/controllers/stuff_to_do_controller.rb
32
+ - app/helpers/stuff_to_do_helper.rb
33
+ - app/models/stuff_to_do.rb
34
+ - app/models/stuff_to_do_filter.rb
35
+ - app/models/stuff_to_do_mailer.rb
36
+ - app/views/settings/_stuff_to_do_settings.html.erb
37
+ - app/views/stuff_to_do/_issue.html.erb
38
+ - app/views/stuff_to_do/_item.html.erb
39
+ - app/views/stuff_to_do/_left_panes.html.erb
40
+ - app/views/stuff_to_do/_panes.html.erb
41
+ - app/views/stuff_to_do/_project.html.erb
42
+ - app/views/stuff_to_do/_right_panes.html.erb
43
+ - app/views/stuff_to_do/_time_grid.html.erb
44
+ - app/views/stuff_to_do/_time_grid_form.html.erb
45
+ - app/views/stuff_to_do/index.html.erb
46
+ - app/views/stuff_to_do_mailer/recommended_below_threshold.erb
47
+ - app/views/stuff_to_do_mailer/recommended_below_threshold.text.html.rhtml
48
+ - assets/images/b.png
49
+ - assets/images/bl.png
50
+ - assets/images/br.png
51
+ - assets/images/closelabel.gif
52
+ - assets/images/loading.gif
53
+ - assets/images/tl.png
54
+ - assets/images/tr.png
55
+ - assets/javascripts/facebox.js
56
+ - assets/javascripts/jquery-1.2.6.min.js
57
+ - assets/javascripts/jquery-ui.js
58
+ - assets/javascripts/jquery.contextMenu.js
59
+ - assets/javascripts/semantic.cache
60
+ - assets/javascripts/stuff-to-do.js
61
+ - assets/javascripts/ui/build.xml
62
+ - assets/javascripts/ui/effects.blind.js
63
+ - assets/javascripts/ui/effects.bounce.js
64
+ - assets/javascripts/ui/effects.clip.js
65
+ - assets/javascripts/ui/effects.core.js
66
+ - assets/javascripts/ui/effects.drop.js
67
+ - assets/javascripts/ui/effects.explode.js
68
+ - assets/javascripts/ui/effects.fold.js
69
+ - assets/javascripts/ui/effects.highlight.js
70
+ - assets/javascripts/ui/effects.pulsate.js
71
+ - assets/javascripts/ui/effects.scale.js
72
+ - assets/javascripts/ui/effects.shake.js
73
+ - assets/javascripts/ui/effects.slide.js
74
+ - assets/javascripts/ui/effects.transfer.js
75
+ - assets/javascripts/ui/i18n/ui.datepicker-ar.js
76
+ - assets/javascripts/ui/i18n/ui.datepicker-bg.js
77
+ - assets/javascripts/ui/i18n/ui.datepicker-ca.js
78
+ - assets/javascripts/ui/i18n/ui.datepicker-cs.js
79
+ - assets/javascripts/ui/i18n/ui.datepicker-da.js
80
+ - assets/javascripts/ui/i18n/ui.datepicker-de.js
81
+ - assets/javascripts/ui/i18n/ui.datepicker-eo.js
82
+ - assets/javascripts/ui/i18n/ui.datepicker-es.js
83
+ - assets/javascripts/ui/i18n/ui.datepicker-fa.js
84
+ - assets/javascripts/ui/i18n/ui.datepicker-fi.js
85
+ - assets/javascripts/ui/i18n/ui.datepicker-fr.js
86
+ - assets/javascripts/ui/i18n/ui.datepicker-he.js
87
+ - assets/javascripts/ui/i18n/ui.datepicker-hr.js
88
+ - assets/javascripts/ui/i18n/ui.datepicker-hu.js
89
+ - assets/javascripts/ui/i18n/ui.datepicker-hy.js
90
+ - assets/javascripts/ui/i18n/ui.datepicker-id.js
91
+ - assets/javascripts/ui/i18n/ui.datepicker-is.js
92
+ - assets/javascripts/ui/i18n/ui.datepicker-it.js
93
+ - assets/javascripts/ui/i18n/ui.datepicker-ja.js
94
+ - assets/javascripts/ui/i18n/ui.datepicker-ko.js
95
+ - assets/javascripts/ui/i18n/ui.datepicker-lt.js
96
+ - assets/javascripts/ui/i18n/ui.datepicker-lv.js
97
+ - assets/javascripts/ui/i18n/ui.datepicker-nl.js
98
+ - assets/javascripts/ui/i18n/ui.datepicker-no.js
99
+ - assets/javascripts/ui/i18n/ui.datepicker-pl.js
100
+ - assets/javascripts/ui/i18n/ui.datepicker-pt-BR.js
101
+ - assets/javascripts/ui/i18n/ui.datepicker-ro.js
102
+ - assets/javascripts/ui/i18n/ui.datepicker-ru.js
103
+ - assets/javascripts/ui/i18n/ui.datepicker-sk.js
104
+ - assets/javascripts/ui/i18n/ui.datepicker-sl.js
105
+ - assets/javascripts/ui/i18n/ui.datepicker-sq.js
106
+ - assets/javascripts/ui/i18n/ui.datepicker-sv.js
107
+ - assets/javascripts/ui/i18n/ui.datepicker-th.js
108
+ - assets/javascripts/ui/i18n/ui.datepicker-tr.js
109
+ - assets/javascripts/ui/i18n/ui.datepicker-uk.js
110
+ - assets/javascripts/ui/i18n/ui.datepicker-zh-CN.js
111
+ - assets/javascripts/ui/i18n/ui.datepicker-zh-TW.js
112
+ - assets/javascripts/ui/svn.log
113
+ - assets/javascripts/ui/ui.accordion.js
114
+ - assets/javascripts/ui/ui.core.js
115
+ - assets/javascripts/ui/ui.datepicker.js
116
+ - assets/javascripts/ui/ui.dialog.js
117
+ - assets/javascripts/ui/ui.draggable.js
118
+ - assets/javascripts/ui/ui.droppable.js
119
+ - assets/javascripts/ui/ui.progressbar.js
120
+ - assets/javascripts/ui/ui.resizable.js
121
+ - assets/javascripts/ui/ui.selectable.js
122
+ - assets/javascripts/ui/ui.slider.js
123
+ - assets/javascripts/ui/ui.sortable.js
124
+ - assets/javascripts/ui/ui.tabs.js
125
+ - assets/stylesheets/stuff_to_do.css
126
+ - config/locales/bg.yml
127
+ - config/locales/ca-fr.yml
128
+ - config/locales/cs.yml
129
+ - config/locales/da.yml
130
+ - config/locales/de.yml
131
+ - config/locales/en.yml
132
+ - config/locales/es.yml
133
+ - config/locales/fr.yml
134
+ - config/locales/hu.yml
135
+ - config/locales/it.yml
136
+ - config/locales/ja.yml
137
+ - config/locales/ko.yml
138
+ - config/locales/lt.yml
139
+ - config/locales/nl.yml
140
+ - config/locales/pt-BR.yml
141
+ - config/locales/ru.yml
142
+ - config/locales/sv.yml
143
+ - config/locales/tr.yml
144
+ - config/routes.rb
145
+ - init.rb
146
+ - lang/bg.yml
147
+ - lang/ca-fr.yml
148
+ - lang/cs.yml
149
+ - lang/da.yml
150
+ - lang/de.yml
151
+ - lang/en.yml
152
+ - lang/es.yml
153
+ - lang/fr.yml
154
+ - lang/hu.yml
155
+ - lang/it.yml
156
+ - lang/ja.yml
157
+ - lang/ko.yml
158
+ - lang/lt.yml
159
+ - lang/pt-br.yml
160
+ - lang/ru.yml
161
+ - lang/sv.yml
162
+ - lang/tr.yml
163
+ - lib/redmine_stuff_to_do/stuff_to_do_compatibility.rb
164
+ - lib/stuff_to_do_array_patch.rb
165
+ - lib/stuff_to_do_issue_patch.rb
166
+ - lib/stuff_to_do_project_patch.rb
167
+ - lib/stuff_to_do_user_patch.rb
168
+ - rails/init.rb
169
+ has_rdoc: true
170
+ homepage: https://projects.littlestreamsoftware.com/projects/redmine-stuff-to-do
171
+ licenses: []
172
+
173
+ post_install_message:
174
+ rdoc_options:
175
+ - --charset=UTF-8
176
+ require_paths:
177
+ - lib
178
+ required_ruby_version: !ruby/object:Gem::Requirement
179
+ requirements:
180
+ - - ">="
181
+ - !ruby/object:Gem::Version
182
+ version: "0"
183
+ version:
184
+ required_rubygems_version: !ruby/object:Gem::Requirement
185
+ requirements:
186
+ - - ">="
187
+ - !ruby/object:Gem::Version
188
+ version: "0"
189
+ version:
190
+ requirements: []
191
+
192
+ rubyforge_project: stuff_to_do_plugin
193
+ rubygems_version: 1.3.5
194
+ signing_key:
195
+ specification_version: 3
196
+ summary: A Redmine plugin to order and prioritize tasks to do using drag and drop.
197
+ test_files:
198
+ - spec/models/stuff_to_do_mailer_spec.rb
199
+ - spec/models/stuff_to_do_filter_spec.rb
200
+ - spec/models/stuff_to_do_spec.rb
201
+ - spec/spec_helper.rb
202
+ - spec/controllers/stuff_to_do_controller_remove_from_time_grid_spec.rb
203
+ - spec/controllers/stuff_to_do_controller_save_time_entries_spec.rb
204
+ - spec/controllers/stuff_to_do_controller_reorder_spec.rb
205
+ - spec/controllers/stuff_to_do_controller_index_spec.rb
206
+ - spec/controllers/stuff_to_do_controller_add_to_time_grid_spec.rb
207
+ - spec/controllers/stuff_to_do_private_methods_spec.rb
208
+ - spec/sanity_spec.rb
209
+ - spec/lib/stuff_to_do_project_patch_spec.rb
210
+ - spec/lib/stuff_to_do_issue_patch_spec.rb
211
+ - spec/lib/stuff_to_do_user_patch_spec.rb