redmine_extensions 0.6.3 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +13 -32
  3. data/Rakefile +0 -8
  4. data/app/assets/javascripts/redmine_extensions/blocking.js +0 -2
  5. data/app/assets/javascripts/redmine_extensions/blocking_namespace.js +1 -2
  6. data/app/assets/javascripts/redmine_extensions/blocking_render.js +1 -27
  7. data/app/assets/javascripts/redmine_extensions/redmine_extensions.js +1 -33
  8. data/config/routes.rb +0 -7
  9. data/lib/redmine_extensions/easy_settings.rb +5 -5
  10. data/lib/redmine_extensions/engine.rb +12 -32
  11. data/lib/redmine_extensions/hooks.rb +6 -35
  12. data/lib/redmine_extensions/version.rb +1 -1
  13. data/lib/redmine_extensions.rb +5 -2
  14. data/spec/spec_helper.rb +10 -2
  15. metadata +3 -75
  16. data/app/assets/javascripts/redmine_extensions/blocking_schedule.js +0 -280
  17. data/app/assets/javascripts/redmine_extensions/event_bus.js +0 -61
  18. data/app/assets/stylesheets/redmine_extensions/application.css +0 -15
  19. data/lib/generators/redmine_extensions/entity/USAGE +0 -11
  20. data/lib/generators/redmine_extensions/entity/entity_generator.rb +0 -418
  21. data/lib/generators/redmine_extensions/entity/templates/_form.html.erb.erb +0 -51
  22. data/lib/generators/redmine_extensions/entity/templates/_list.html.erb.erb +0 -70
  23. data/lib/generators/redmine_extensions/entity/templates/_sidebar.html.erb.erb +0 -9
  24. data/lib/generators/redmine_extensions/entity/templates/app/models/%model_name_underscored%_query.rb.tt +0 -42
  25. data/lib/generators/redmine_extensions/entity/templates/app/views/%model_name_pluralize_underscored%/_%model_name_underscored%.api.rsb.tt +0 -18
  26. data/lib/generators/redmine_extensions/entity/templates/app/views/%model_name_pluralize_underscored%/_form.html.erb.tt +0 -62
  27. data/lib/generators/redmine_extensions/entity/templates/app/views/%model_name_pluralize_underscored%/edit.html.erb.tt +0 -8
  28. data/lib/generators/redmine_extensions/entity/templates/app/views/%model_name_pluralize_underscored%/new.html.erb.tt +0 -8
  29. data/lib/generators/redmine_extensions/entity/templates/context_menu.html.erb.erb +0 -20
  30. data/lib/generators/redmine_extensions/entity/templates/controller.rb.erb +0 -208
  31. data/lib/generators/redmine_extensions/entity/templates/custom_field.rb.erb +0 -11
  32. data/lib/generators/redmine_extensions/entity/templates/easy_query.rb.erb +0 -37
  33. data/lib/generators/redmine_extensions/entity/templates/edit.html.erb.erb +0 -19
  34. data/lib/generators/redmine_extensions/entity/templates/edit.js.erb.erb +0 -18
  35. data/lib/generators/redmine_extensions/entity/templates/en.yml.erb +0 -16
  36. data/lib/generators/redmine_extensions/entity/templates/entity_attribute_helper_patch.rb.erb +0 -10
  37. data/lib/generators/redmine_extensions/entity/templates/helper.rb.erb +0 -3
  38. data/lib/generators/redmine_extensions/entity/templates/hooks.rb.erb +0 -5
  39. data/lib/generators/redmine_extensions/entity/templates/index.api.rsb.erb +0 -3
  40. data/lib/generators/redmine_extensions/entity/templates/index.html.erb.erb +0 -30
  41. data/lib/generators/redmine_extensions/entity/templates/index.js.erb.erb +0 -12
  42. data/lib/generators/redmine_extensions/entity/templates/mail_added.html.erb.erb +0 -1
  43. data/lib/generators/redmine_extensions/entity/templates/mail_added.text.erb.erb +0 -2
  44. data/lib/generators/redmine_extensions/entity/templates/mail_updated.html.erb.erb +0 -1
  45. data/lib/generators/redmine_extensions/entity/templates/mail_updated.text.erb.erb +0 -2
  46. data/lib/generators/redmine_extensions/entity/templates/mailer.rb.erb +0 -41
  47. data/lib/generators/redmine_extensions/entity/templates/migration.rb.erb +0 -16
  48. data/lib/generators/redmine_extensions/entity/templates/model.rb.erb +0 -143
  49. data/lib/generators/redmine_extensions/entity/templates/new.html.erb.erb +0 -19
  50. data/lib/generators/redmine_extensions/entity/templates/new.js.erb.erb +0 -18
  51. data/lib/generators/redmine_extensions/entity/templates/query.rb.erb +0 -67
  52. data/lib/generators/redmine_extensions/entity/templates/routes.rb.erb +0 -15
  53. data/lib/generators/redmine_extensions/entity/templates/show.api.rsb.erb +0 -1
  54. data/lib/generators/redmine_extensions/entity/templates/show.html.erb.erb +0 -50
  55. data/lib/generators/redmine_extensions/entity/templates/show.js.erb.erb +0 -12
  56. data/lib/generators/redmine_extensions/entity/templates/spec/controllers/%model_name_underscored%_controller_spec.rb.tt +0 -94
  57. data/lib/generators/redmine_extensions/entity/templates/spec/factories.rb.erb +0 -11
  58. data/lib/generators/redmine_extensions/entity/templates/spec/requests/%model_name_underscored%_spec.rb.tt +0 -19
  59. data/lib/generators/redmine_extensions/plugin/USAGE +0 -13
  60. data/lib/generators/redmine_extensions/plugin/plugin_generator.rb +0 -74
  61. data/lib/generators/redmine_extensions/plugin/templates/Gemfile.erb +0 -1
  62. data/lib/generators/redmine_extensions/plugin/templates/after_init.rb.erb +0 -23
  63. data/lib/generators/redmine_extensions/plugin/templates/en.yml.erb +0 -3
  64. data/lib/generators/redmine_extensions/plugin/templates/gitkeep.erb +0 -0
  65. data/lib/generators/redmine_extensions/plugin/templates/hooks.rb.erb +0 -5
  66. data/lib/generators/redmine_extensions/plugin/templates/init.rb.erb +0 -20
  67. data/lib/generators/redmine_extensions/plugin/templates/internals.rb.erb +0 -4
  68. data/lib/generators/redmine_extensions/plugin/templates/issue_patch.example.erb +0 -30
  69. data/lib/generators/redmine_extensions/plugin/templates/issues_controller_patch.example.erb +0 -30
  70. data/lib/generators/redmine_extensions/plugin/templates/issues_helper_patch.example.erb +0 -30
  71. data/lib/generators/redmine_extensions/plugin/templates/javascript.js +0 -1
  72. data/lib/generators/redmine_extensions/plugin/templates/routes.rb.erb +0 -0
  73. data/lib/generators/redmine_extensions/plugin/templates/stylesheet.css +0 -3
  74. data/lib/redmine_extensions/core_ext/date_range.rb +0 -152
  75. data/lib/redmine_extensions/core_ext/object.rb +0 -19
  76. data/lib/redmine_extensions/core_ext/string.rb +0 -5
  77. data/lib/redmine_extensions/core_ext.rb +0 -3
  78. data/lib/redmine_extensions/deprecator.rb +0 -11
  79. data/lib/redmine_extensions/migration.rb +0 -9
  80. data/lib/redmine_extensions/patch_manager.rb +0 -440
  81. data/lib/redmine_extensions/rails_patches/route_set_generator_patch.rb +0 -10
  82. data/lib/redmine_extensions/redmine_patches/controllers/application_controller_patch.rb +0 -65
  83. data/lib/redmine_extensions/redmine_patches/models/custom_field_patch.rb +0 -11
  84. data/lib/redmine_extensions/redmine_patches/models/project_patch.rb +0 -10
  85. data/lib/tasks/redmine_extensions_tasks.rake +0 -4
  86. data/spec/init_rails.rb +0 -13
@@ -1,30 +0,0 @@
1
- module <%= plugin_title %>
2
- module IssuesControllerPatch
3
-
4
- def self.included(base)
5
- base.extend(ClassMethods)
6
- base.send(:include, InstanceMethods)
7
-
8
- base.class_eval do
9
-
10
- alias_method_chain :index, :<%= plugin_name_underscored %>
11
-
12
- end
13
- end
14
-
15
- module InstanceMethods
16
-
17
- def index_with_<%= plugin_name_underscored %>
18
- index_without_<%= plugin_name_underscored %>
19
- end
20
-
21
- end
22
-
23
- module ClassMethods
24
-
25
- end
26
-
27
- end
28
-
29
- end
30
- RedmineExtensions::PatchManager.register_controller_patch 'IssuesController', '<%= plugin_title %>::IssuesControllerPatch'
@@ -1,30 +0,0 @@
1
- module <%= plugin_title %>
2
- module IssuesHelperPatch
3
-
4
- def self.included(base)
5
- base.extend(ClassMethods)
6
- base.send(:include, InstanceMethods)
7
-
8
- base.class_eval do
9
-
10
- alias_method_chain :issue_heading, :<%= plugin_name_underscored %>
11
-
12
- end
13
- end
14
-
15
- module InstanceMethods
16
-
17
- def issue_heading_with_<%= plugin_name_underscored %>(issue)
18
- issue_heading_without_<%= plugin_name_underscored %>(issue)
19
- end
20
-
21
- end
22
-
23
- module ClassMethods
24
-
25
- end
26
-
27
- end
28
-
29
- end
30
- RedmineExtensions::PatchManager.register_helper_patch 'IssuesHelper', '<%= plugin_title %>::IssuesHelperPatch'
@@ -1 +0,0 @@
1
- //= require_self
@@ -1,3 +0,0 @@
1
- /*
2
- *= require_self
3
- */
@@ -1,152 +0,0 @@
1
- module RedmineExtensions
2
- class DateRange < Hash
3
-
4
- def self.first_wday
5
- case Setting.start_of_week.to_i
6
- when 1, 6, 7
7
- Setting.start_of_week.to_i
8
- else
9
- (I18n.t(:general_first_day_of_week).to_i - 1)%7 + 1
10
- end
11
- end
12
-
13
- def self.get_date_range(period_type = '1', period = 'all', from = '', to = '')
14
- @free_period = false
15
- start_of_week = self.first_wday
16
-
17
- ret = {:from => nil, :to => nil}
18
-
19
- if period_type == '1' || (period_type.nil? && !period.nil?)
20
- case period
21
- when 'all', 'is_null', 'is_not_null'
22
-
23
- when 'today'
24
- ret[:from] = ret[:to] = User.current.today
25
- when 'yesterday'
26
- ret[:from] = ret[:to] = User.current.today - 1
27
- when 'current_week'
28
- ret[:from] = User.current.today - (User.current.today.cwday - start_of_week)%7
29
- ret[:to] = ret[:from] + 6
30
- when 'last_week'
31
- ret[:from] = User.current.today - 7 - (User.current.today.cwday - start_of_week)%7
32
- ret[:to] = ret[:from] + 6
33
- when 'last_2_weeks'
34
- ret[:from] = User.current.today - 14 - (User.current.today.cwday - start_of_week)%7
35
- ret[:to] = ret[:from] + 13
36
- when '7_days'
37
- ret[:from] = User.current.today - 7
38
- ret[:to] = User.current.today
39
- when 'current_month'
40
- ret[:from] = Date.civil(User.current.today.year, User.current.today.month, 1)
41
- ret[:to] = (ret[:from] >> 1) - 1
42
- when 'last30_next90'
43
- ret[:from] = User.current.today - 30
44
- ret[:to] = User.current.today + 90
45
- when 'last_month'
46
- ret[:from] = Date.civil(User.current.today.year, User.current.today.month, 1) << 1
47
- ret[:to] = (ret[:from] >> 1) - 1
48
- when '30_days'
49
- ret[:from] = User.current.today - 30
50
- ret[:to] = User.current.today
51
- when '90_days'
52
- ret[:from] = User.current.today - 90
53
- ret[:to] = User.current.today
54
- when 'current_year'
55
- ret[:from] = Date.civil(User.current.today.year, 1, 1)
56
- ret[:to] = Date.civil(User.current.today.year, 12, 31)
57
- when 'last_year'
58
- ret[:from] = Date.civil(User.current.today.year - 1, 1, 1)
59
- ret[:to] = Date.civil(User.current.today.year - 1, 12, 31)
60
- when 'older_than_14_days'
61
- ret[:from] = nil
62
- ret[:to] = User.current.today - 14
63
- when 'older_than_15_days'
64
- ret[:from] = nil
65
- ret[:to] = User.current.today - 15
66
- when 'older_than_31_days'
67
- ret[:from] = nil
68
- ret[:to] = User.current.today - 31
69
- ### FUTURE ###
70
- when 'tomorrow'
71
- ret[:from] = ret[:to] = Date.tomorrow
72
- when 'next_week'
73
- ret[:from] = User.current.today + 7 - (User.current.today.cwday - start_of_week)%7
74
- ret[:to] = ret[:from] + 6
75
- when 'next_5_days'
76
- ret[:from] = User.current.today
77
- ret[:to] = User.current.today + 5
78
- when 'next_7_days'
79
- ret[:from] = User.current.today
80
- ret[:to] = User.current.today + 7
81
- when 'next_10_days'
82
- ret[:from] = User.current.today
83
- ret[:to] = User.current.today + 10
84
- when 'next_14_days'
85
- ret[:from] = User.current.today
86
- ret[:to] = User.current.today + 14
87
- when 'next_15_days'
88
- ret[:from] = User.current.today
89
- ret[:to] = User.current.today + 15
90
- when 'next_30_days'
91
- ret[:from] = User.current.today
92
- ret[:to] = User.current.today + 30
93
- when 'next_90_days'
94
- ret[:from] = User.current.today
95
- ret[:to] = User.current.today + 90
96
- when 'next_month'
97
- ret[:from] = Date.civil(User.current.today.year, User.current.today.month, 1) >> 1
98
- ret[:to] = (ret[:from] >> 1) - 1
99
- when 'next_year'
100
- ret[:from] = Date.civil(User.current.today.year + 1, 1, 1)
101
- ret[:to] = Date.civil(User.current.today.year + 1, 12, 31)
102
- ### EXTENDED ###
103
- when 'to_today'
104
- ret[:from] = nil
105
- ret[:to] = User.current.today
106
- when 'from_tomorrow'
107
- ret[:from] = Date.tomorrow
108
- ret[:to] = nil
109
- when 'after_due_date'
110
- ret[:from] = nil
111
- ret[:to] = Date.yesterday
112
- ### FISCAL ###
113
- when 'last_fiscal_year'
114
- ret[:from] = EasySetting.beginning_of_fiscal_year(User.current.today - 1.year)
115
- ret[:to] = EasySetting.end_of_fiscal_year(User.current.today - 1.year)
116
- when 'current_fiscal_year'
117
- ret[:from] = EasySetting.beginning_of_fiscal_year
118
- ret[:to] = EasySetting.end_of_fiscal_year
119
- when 'next_fiscal_year'
120
- ret[:from] = EasySetting.beginning_of_fiscal_year(User.current.today + 1.year)
121
- ret[:to] = EasySetting.end_of_fiscal_year(User.current.today + 1.year)
122
- else
123
- if respond_to?("hook_#{period}")
124
- ret = send("hook_#{period}")
125
- else
126
- Rails.logger.warn "You must add '#{period}' to 'utils/dateutils' !" if Rails.logger
127
- end
128
- end
129
- elsif period_type == '2' || (period_type.nil? && (!from.nil? || !to.nil?))
130
- begin
131
- ret[:from] = from.to_s.to_date unless from.blank?
132
- rescue
133
- end
134
- begin
135
- ret[:to] = to.to_s.to_date unless to.blank?
136
- rescue
137
- end
138
- @free_period = true
139
- end
140
-
141
- ret[:from], ret[:to] = ret[:to], ret[:from] if ret[:from] && ret[:to] && ret[:from] > ret[:to]
142
-
143
- ret
144
- end
145
-
146
- def initialize(period_type = '1', period = 'all', from = '', to = '')
147
- super()
148
- self.merge!(self.class.get_date_range(period_type, period, from, to))
149
- end
150
-
151
- end
152
- end
@@ -1,19 +0,0 @@
1
- class Object
2
-
3
- def nested_send(symbol)
4
- return __send__(symbol) if respond_to?(symbol)
5
- obj = nil
6
- symbol.to_s.split('.').each do |part|
7
- nested_symbol = part.to_sym
8
- if obj
9
- break unless obj.respond_to?(nested_symbol)
10
- obj = obj.__send__(nested_symbol)
11
- else
12
- break unless respond_to?(nested_symbol)
13
- obj = __send__(nested_symbol)
14
- end
15
- end
16
- obj
17
- end
18
-
19
- end
@@ -1,5 +0,0 @@
1
- class String
2
- def to_boolean
3
- ['true', 1, '1', 'yes', 't', 'y'].include?(self.downcase)
4
- end
5
- end
@@ -1,3 +0,0 @@
1
- require_relative './core_ext/object'
2
- require_relative './core_ext/string'
3
- require_relative './core_ext/date_range'
@@ -1,11 +0,0 @@
1
- module RedmineExtensions
2
- class Deprecator
3
-
4
- def deprecation_warning(method_name, message, caller_backtrace = nil)
5
- caller_backtrace ||= caller(2)
6
- message = "#{method_name} is deprecated and will be removed from RedmineExtensions in v1.0"
7
- ActiveSupport::Deprecation.warn message, caller_backtrace
8
- end
9
-
10
- end
11
- end
@@ -1,9 +0,0 @@
1
- module RedmineExtensions
2
- if Rails::VERSION::MAJOR >= 5
3
- class Migration < ActiveRecord::Migration[4.2]
4
- end
5
- else
6
- class Migration < ActiveRecord::Migration
7
- end
8
- end
9
- end