redmine_extensions 0.0.39 → 0.1.01
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/assets/javascripts/redmine_extensions/redmine_extensions.js +30 -59
- data/app/controllers/easy_settings_controller.rb +1 -1
- data/app/helpers/redmine_extensions/application_helper.rb +108 -65
- data/app/helpers/redmine_extensions/rendering_helper.rb +5 -0
- data/app/presenters/easy_query_adapter_presenter.rb +50 -0
- data/app/views/common/_collapsible_module_layout.html.erb +13 -0
- data/app/views/easy_entity_assignments/_assignments_container.html.erb +10 -15
- data/app/views/easy_entity_assignments/_query_index.html.erb +2 -10
- data/app/views/easy_queries/_easy_query_tile.html.erb +7 -0
- data/app/views/easy_settings/edit.html.erb +1 -1
- data/config/routes.rb +3 -7
- data/lib/generators/redmine_extensions/entity/templates/_form.html.erb.erb +1 -1
- data/lib/generators/redmine_extensions/entity/templates/_sidebar.html.erb.erb +8 -8
- data/lib/generators/redmine_extensions/entity/templates/context_menu.html.erb.erb +7 -7
- data/lib/generators/redmine_extensions/entity/templates/custom_field.rb.erb +7 -7
- data/lib/generators/redmine_extensions/entity/templates/edit.html.erb.erb +16 -16
- data/lib/generators/redmine_extensions/entity/templates/index.api.rsb.erb +5 -5
- data/lib/generators/redmine_extensions/entity/templates/index.html.erb.erb +4 -4
- data/lib/generators/redmine_extensions/entity/templates/mail_added.html.erb.erb +1 -1
- data/lib/generators/redmine_extensions/entity/templates/mail_added.text.erb.erb +2 -2
- data/lib/generators/redmine_extensions/entity/templates/mail_updated.text.erb.erb +2 -2
- data/lib/generators/redmine_extensions/entity/templates/migration.rb.erb +9 -9
- data/lib/generators/redmine_extensions/entity/templates/new.html.erb.erb +16 -16
- data/lib/generators/redmine_extensions/entity/templates/query.rb.erb +1 -1
- data/lib/generators/redmine_extensions/entity/templates/routes.rb.erb +12 -12
- data/lib/generators/redmine_extensions/entity/templates/show.html.erb.erb +37 -37
- data/lib/redmine_extensions/easy_query_adapter.rb +107 -88
- data/lib/redmine_extensions/easy_query_helpers/outputs.rb +69 -0
- data/lib/redmine_extensions/engine.rb +11 -1
- data/lib/redmine_extensions/query_output.rb +41 -25
- data/lib/redmine_extensions/query_outputs/list_output.rb +14 -0
- data/lib/redmine_extensions/query_outputs/tile_output.rb +19 -0
- data/lib/redmine_extensions/redmine_patches/patches.rb +2 -3
- data/lib/redmine_extensions/version.rb +1 -1
- data/spec/redmine/bin/about +0 -0
- data/spec/redmine/bin/bundle +0 -0
- data/spec/redmine/bin/rails +0 -0
- data/spec/redmine/bin/rake +0 -0
- data/spec/redmine/extra/svn/reposman.rb +0 -0
- data/spec/redmine/public/dispatch.fcgi.example +0 -0
- data/spec/redmine/script/about +0 -0
- data/spec/redmine/script/rails +0 -0
- metadata +1978 -1972
- data/lib/redmine_extensions/query_outputs/table_output.rb +0 -18
@@ -4,8 +4,8 @@ module RedmineExtensions
|
|
4
4
|
attr_accessor :query
|
5
5
|
delegate :options, to: :query
|
6
6
|
|
7
|
-
def self.register_output(
|
8
|
-
registered_outputs[
|
7
|
+
def self.register_output(klass, options={})
|
8
|
+
registered_outputs[klass.key.to_sym] = klass
|
9
9
|
end
|
10
10
|
|
11
11
|
def self.registered_outputs
|
@@ -19,45 +19,56 @@ module RedmineExtensions
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def self.available_output_klasses_for(query)
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
end
|
26
|
-
result
|
22
|
+
registered_outputs.select do |name, output|
|
23
|
+
output.available_for?(query)
|
24
|
+
end.values
|
27
25
|
end
|
28
26
|
|
29
27
|
def self.output_klass_for(output)
|
30
28
|
registered_outputs[output.to_sym]
|
31
29
|
end
|
32
30
|
|
31
|
+
def self.key
|
32
|
+
self.name.split('::').last.sub(/Output$/, '').underscore
|
33
|
+
end
|
34
|
+
|
33
35
|
|
34
36
|
# Take query and decide if it is possible to render it by this output
|
35
37
|
def self.available_for?(query)
|
36
|
-
|
38
|
+
query.class > Query
|
37
39
|
end
|
38
40
|
|
39
|
-
def initialize(query_presenter)
|
41
|
+
def initialize(query_presenter, outputs=nil)
|
40
42
|
@query = query_presenter
|
43
|
+
@outputs = outputs || query_presenter.outputs
|
44
|
+
end
|
45
|
+
|
46
|
+
def data_partial
|
47
|
+
'easy_queries/easy_query_'+key
|
48
|
+
end
|
49
|
+
|
50
|
+
def order
|
51
|
+
10
|
41
52
|
end
|
42
53
|
|
43
|
-
def render_data
|
44
|
-
|
54
|
+
def render_data
|
55
|
+
h.render partial: data_partial, locals: variables
|
45
56
|
end
|
46
57
|
|
47
58
|
def key
|
48
|
-
self.class.
|
59
|
+
self.class.key
|
49
60
|
end
|
50
61
|
|
51
62
|
def label
|
52
|
-
h.l('label_easy_query_output.'+key)
|
63
|
+
h.l('label_easy_query_output.'+key, default: key.humanize)
|
53
64
|
end
|
54
65
|
|
55
66
|
def enabled?
|
56
|
-
|
67
|
+
@outputs.output_enabled?(key)
|
57
68
|
end
|
58
69
|
|
59
70
|
def variables
|
60
|
-
options.
|
71
|
+
options.reverse_merge(query: @query, output: self)
|
61
72
|
end
|
62
73
|
|
63
74
|
def header
|
@@ -68,31 +79,36 @@ module RedmineExtensions
|
|
68
79
|
def render_edit_box(style=:check_box, options={})
|
69
80
|
raise 'Style of edit box is not allowed' unless [:check_box, :radio_button].include?(style)
|
70
81
|
|
71
|
-
box_id = "#{
|
82
|
+
box_id = "#{query.modul_uniq_id}output_#{key}"
|
72
83
|
|
73
|
-
|
84
|
+
|
85
|
+
options[:class] = "#{options[:class]} #{query.modul_uniq_id}output_switch #{query.modul_uniq_id}content_switch"
|
86
|
+
options[:enabled] = enabled? unless options.key?(:enabled)
|
74
87
|
r = ''
|
75
|
-
r << h.send("#{style}_tag" , "#{
|
76
|
-
r << h.label_tag(box_id, h.l('
|
77
|
-
r
|
88
|
+
r << h.send("#{style}_tag" , query.block_name.blank? ? 'outputs[]' : "#{query.block_name}[outputs][]", key, options[:enabled], id: box_id, class: options[:class])
|
89
|
+
r << h.label_tag(box_id, h.l('label_my_page_issue_output.' + key), :class => 'inline')
|
90
|
+
r.html_safe
|
78
91
|
end
|
79
92
|
|
80
|
-
def render_edit
|
93
|
+
def render_edit(action='edit')
|
81
94
|
h.content_tag(:fieldset, class: "easy-query-filters-field #{key}_settings", style: ('display: none;' unless enabled? )) do
|
82
|
-
h.content_tag(:legend, label) +
|
83
|
-
h.render(self.edit_form, query: query, modul_uniq_id: query.modul_uniq_id, action: 'edit')
|
95
|
+
h.content_tag(:legend, label) + render_edit_form(action)
|
84
96
|
end
|
85
97
|
end
|
86
98
|
|
99
|
+
def render_edit_form(action='edit')
|
100
|
+
h.render(self.edit_form, options.reverse_merge(query: query, modul_uniq_id: query.modul_uniq_id, block_name: query.block_name, action: action, page_module: query.page_module))
|
101
|
+
end
|
102
|
+
|
87
103
|
def edit_form
|
88
104
|
'easy_queries/form_'+key+'_settings'
|
89
105
|
end
|
90
106
|
|
91
107
|
def h
|
92
|
-
@
|
108
|
+
@outputs.view_context
|
93
109
|
end
|
94
110
|
|
95
111
|
end
|
96
112
|
end
|
97
113
|
# alias for convinience
|
98
|
-
EasyQueryOutput = RedmineExtensions::QueryOutput
|
114
|
+
# EasyQueryOutput = RedmineExtensions::QueryOutput
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module RedmineExtensions
|
2
|
+
module QueryOutputs
|
3
|
+
class TileOutput < RedmineExtensions::QueryOutput
|
4
|
+
|
5
|
+
def self.key
|
6
|
+
'tile'
|
7
|
+
end
|
8
|
+
|
9
|
+
def entity
|
10
|
+
options[:entity]
|
11
|
+
end
|
12
|
+
|
13
|
+
def render_entity_tile(referenced_entity)
|
14
|
+
referenced_entity.to_s
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/spec/redmine/bin/about
CHANGED
File without changes
|
data/spec/redmine/bin/bundle
CHANGED
File without changes
|
data/spec/redmine/bin/rails
CHANGED
File without changes
|
data/spec/redmine/bin/rake
CHANGED
File without changes
|
File without changes
|
File without changes
|
data/spec/redmine/script/about
CHANGED
File without changes
|
data/spec/redmine/script/rails
CHANGED
File without changes
|