redmine_extensions 0.0.37 → 0.0.38

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.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/redmine_extensions/redmine_extensions.js +1 -1
  3. data/lib/generators/redmine_extensions/entity/templates/_sidebar.html.erb.erb +8 -8
  4. data/lib/generators/redmine_extensions/entity/templates/context_menu.html.erb.erb +7 -7
  5. data/lib/generators/redmine_extensions/entity/templates/custom_field.rb.erb +7 -7
  6. data/lib/generators/redmine_extensions/entity/templates/index.api.rsb.erb +5 -5
  7. data/lib/generators/redmine_extensions/entity/templates/index.html.erb.erb +4 -4
  8. data/lib/generators/redmine_extensions/entity/templates/mail_added.html.erb.erb +1 -1
  9. data/lib/generators/redmine_extensions/entity/templates/mail_added.text.erb.erb +2 -2
  10. data/lib/generators/redmine_extensions/entity/templates/mail_updated.text.erb.erb +2 -2
  11. data/lib/generators/redmine_extensions/entity/templates/migration.rb.erb +9 -9
  12. data/lib/generators/redmine_extensions/entity/templates/routes.rb.erb +12 -12
  13. data/lib/generators/redmine_extensions/entity/templates/show.html.erb.erb +37 -37
  14. data/lib/redmine_extensions/version.rb +1 -1
  15. data/spec/redmine/bin/about +0 -0
  16. data/spec/redmine/bin/bundle +0 -0
  17. data/spec/redmine/bin/rails +0 -0
  18. data/spec/redmine/bin/rake +0 -0
  19. data/spec/redmine/extra/svn/reposman.rb +0 -0
  20. data/spec/redmine/public/dispatch.fcgi.example +0 -0
  21. data/spec/redmine/script/about +0 -0
  22. data/spec/redmine/script/rails +0 -0
  23. metadata +1900 -1908
  24. data/app/assets/javascripts/redmine_extensions/redmine_extensions.js.orig +0 -648
  25. data/app/helpers/redmine_extensions/application_helper.rb.orig +0 -189
  26. data/app/views/easy_entity_assignments/_query_index.html.erb.orig +0 -16
  27. data/config/database.yml +0 -15
  28. data/lib/redmine_extensions/redmine_patches/controllers/issues_controller_patch.rb +0 -9
  29. data/lib/redmine_extensions/version.rb.orig +0 -7
  30. data/spec/support/easy_queries_helpers.rb +0 -0
@@ -1,189 +0,0 @@
1
- module RedmineExtensions
2
- module ApplicationHelper
3
- include RenderingHelper
4
-
5
- # -------= Hack methods =------
6
-
7
- def plugin_settings_path(plugin, *attrs)
8
- if plugin.is_a?(Redmine::Plugin) && (plugin.settings[:only_easy] || plugin.settings[:easy_settings])
9
- edit_easy_setting_path(plugin, *attrs)
10
- else
11
- super
12
- end
13
- end
14
-
15
- # -------= Rendering and presenting methods =-------
16
-
17
- def present(model, options={}, &block)
18
- if model.is_a?(RedmineExtensions::BasePresenter)
19
- presenter = model.update_options(options.merge(view_context: self))
20
- else
21
- presenter = RedmineExtensions::BasePresenter.present(model, self, options)
22
- end
23
- if block_given?
24
- yield presenter
25
- else
26
- presenter
27
- end
28
- end
29
-
30
- # --- COMMON RENDERING ----
31
-
32
- # hide elements for issues and users
33
- def detect_hide_elements(uniq_id, user = nil, default = true)
34
- return ''.html_safe if uniq_id.blank?
35
- return 'style="display:none"'.html_safe if !toggle_button_expanded?(uniq_id, user, default)
36
- end
37
-
38
- def url_to_entity(entity, options={})
39
- m = "url_to_#{entity.class.name.underscore}".to_sym
40
- if respond_to?(m)
41
- send(m, entity, options)
42
- else
43
- nil
44
- end
45
- end
46
-
47
- def render_entity_assignments(entity, target_class, options = {}, &block)
48
- options ||= {}
49
- collection_name = options.delete(:collection_name) || target_class.name.pluralize.underscore
50
-
51
- project = options.delete(:project)
52
- query_class = options.delete(:query_class)
53
-
54
- if query_class.nil?
55
- query_class_name = target_class.name + 'Query'
56
-
57
- query_class = query_class_name.constantize #if Object.const_defined?(query_class_name)
58
- end
59
-
60
- return '' if !query_class || !(query_class < EasyQuery) || !entity.respond_to?(collection_name)
61
-
62
- query = query_class.new(:name => 'c_query')
63
- query.project = project
64
- query.set_entity_scope(entity, collection_name)
65
- query.column_names = options[:query_column_names] unless options[:query_column_names].blank?
66
-
67
- entities = query.entities
68
-
69
- entities_count = entities.size
70
- options[:entities_count] = entities_count
71
-
72
- options[:module_name] ||= "entity_#{entity.class.name.underscore}_#{entity.id}_#{collection_name}"
73
- options[:heading] ||= l("label_#{target_class.name.underscore}_plural", :default => 'Heading')
74
-
75
- if options[:context_menus_path].nil?
76
- options[:context_menus_path] = [
77
- "context_menu_#{collection_name}_path".to_sym,
78
- "context_menus_#{collection_name}_path".to_sym,
79
- "#{collection_name}_context_menu_path".to_sym
80
- ].detect do |m|
81
- m if respond_to?(m)
82
- end
83
- end
84
-
85
- render(:partial => 'easy_entity_assignments/assignments_container', :locals => {
86
- :entity => entity,
87
- :query => query, :target_class => target_class, :project => project,
88
- :entities => entities, :entities_count => entities_count, :options => options})
89
- end
90
-
91
- def entity_css_icon(entity_or_entity_class)
92
- return '' if entity_or_entity_class.nil?
93
-
94
- if entity_or_entity_class.is_a?(Class) && entity_or_entity_class.respond_to?(:css_icon)
95
- entity_or_entity_class.css_icon
96
- elsif entity_or_entity_class.is_a?(ActiveRecord::Base)
97
- if entity_or_entity_class.respond_to?(:css_icon)
98
- entity_or_entity_class.css_icon
99
- elsif entity_or_entity_class.class.respond_to?(:css_icon)
100
- entity_or_entity_class.class.css_icon
101
- else
102
- "icon icon-#{entity_or_entity_class.class.name.dasherize}"
103
- end
104
- else
105
- "icon icon-#{entity_or_entity_class.class.name.dasherize}"
106
- end
107
- end
108
-
109
- # options:
110
- # => options[:heading] = text beside of plus button
111
- # => options[:container_html] = a hash of html attributes
112
- # => options[:default_button_state] = (true => expanded -), (false => collapsed +)
113
- # => options[:ajax_call] = make ajax call for saving state (true => ajax call, false => no call, no save)
114
- # => options[:wrapping_heading_element] = html element outside heading => h3, h4
115
- def render_toggler(container_uniq_id, user = nil, options={}, &block)
116
- user ||= User.current
117
- options[:heading] ||= ''
118
- options[:heading_links] ||= []
119
- options[:heading_links] = [options[:heading_links]] if options[:heading_links] && !options[:heading_links].is_a?(Array)
120
- options[:container_html] ||= {}
121
- options[:default_button_state] = false #if is_mobile_device?
122
- options[:default_button_state] = true if options[:default_button_state].nil?
123
- options[:ajax_call] = true if options[:ajax_call].nil?
124
-
125
- s = ''
126
- if !options.key?(:no_heading_button)
127
- options[:heading] << content_tag(:div, options[:heading_links].join(' ').html_safe, :class => 'module-heading-links') unless options[:heading_links].blank?
128
- s << render_toggler_header(user, options[:heading].html_safe, container_uniq_id, options)
129
- end
130
-
131
- if options[:ajax_call] == false
132
- expanded = options[:default_button_state]
133
- else
134
- expanded = true
135
- end
136
-
137
- s << (content_tag(:div, {
138
- :id => container_uniq_id,
139
- :style => (expanded ? '' : 'display:none')
140
- }.merge(options[:container_html]) { |k, o, n| "#{o}; #{n}" }, &block))
141
- s.html_safe
142
- end
143
-
144
- def render_toggler_header(user, content, modul_uniq_id, options={})
145
- expander_options = options[:expander_options] || {}
146
- wrapping_heading_element = options[:wrapping_heading_element] || 'h3'
147
- wrapping_heading_element_classes = (options[:wrapping_heading_element_classes] || '') + ' module-heading'
148
- wrapping_heading_element_styles = options[:wrapping_heading_element_styles]
149
- ajax_call = options.delete(:ajax_call) ? 'true' : 'false'
150
-
151
- html = ''
152
-
153
- if options[:no_expander]
154
- html << content_tag(wrapping_heading_element, content, :class => wrapping_heading_element_classes, :style => wrapping_heading_element_styles)
155
- else
156
- html << '<div class="module-toggle-button">'
157
- html << "<div class='group open' >"
158
- html << content_tag(wrapping_heading_element, content, :class => wrapping_heading_element_classes, :style => wrapping_heading_element_styles, :onclick => "var event = arguments[0] || window.event; if( !$(event.target).hasClass('do_not_toggle') && !$(event.target).parent().hasClass('module-heading-links') ) toggleMyPageModule(this,'#{modul_uniq_id}','#{user.id}', #{ajax_call})")
159
- html << "<span class='expander #{expander_options[:class]}' onclick=\"toggleMyPageModule($(this),'#{modul_uniq_id}','#{user.id}', #{ajax_call}); return false;\" id=\"expander_#{modul_uniq_id}\">&nbsp;</span>"
160
- html << '</div></div>'
161
- end
162
-
163
- html.html_safe
164
- end
165
-
166
- def autocomplete_field_tag(name, jsonpath_or_array, selected_values, options = {})
167
- options.reverse_merge!({select_first_value: false, show_toggle_button: false, load_immediately: false, preload: true})
168
- options[:id] ||= sanitize_to_id(name)
169
-
170
- selected_values ||= []
171
-
172
- if jsonpath_or_array.is_a?(Array)
173
- source = jsonpath_or_array.to_json
174
- else
175
- source = "'#{jsonpath_or_array}'"
176
- end
177
-
178
- content_tag(:span, :class => 'easy-multiselect-tag-container') do
179
- text_field_tag('', '', (options[:html_options] || {}).merge(id: options[:id])) +
180
- <<<<<<< HEAD
181
- javascript_tag("$('##{options[:id]}').easymultiselect({multiple: true, rootElement: #{options[:rootElement].to_json}, inputName: '#{name}', preload: true, source: #{source}, selected: #{selected_values.to_json}, show_toggle_button: #{options[:show_toggle_button]}, select_first_value: #{options[:select_first_value]}, load_immediately: #{options[:load_immediately]}, autocomplete_options: #{(options[:jquery_auto_complete_options]||{}).to_json} });")
182
- =======
183
- javascript_tag("$('##{options[:id]}').easymultiselect({multiple: true, rootElement: #{options[:rootElement]}, inputName: '#{name}', preload: #{options[:preload]}, source: #{source}, selected: #{selected_values.to_json}, show_toggle_button: #{options[:show_toggle_button]}, select_first_value: #{options[:select_first_value]}, load_immediately: #{options[:load_immediately]}, autocomplete_options: #{(options[:jquery_auto_complete_options]||{}).to_json} });")
184
- >>>>>>> 4a3284c... labels
185
- end
186
- end
187
-
188
- end
189
- end
@@ -1,16 +0,0 @@
1
- <<<<<<< HEAD
2
- <% query_outputs(query, entities: referenced_entities, options: { hascontextmenu: true, disable_sort: true }).each do |output| %>
3
- <%= output.render_data %>
4
- =======
5
- <% if display_style == :list %>
6
- <%= render :partial => 'easy_queries/easy_query_entities_list', :locals => {:query => query, :entities => entities, :options => {:hascontextmenu => true, :disable_sort => true} } -%>
7
- <% elsif display_style == :tile %>
8
- <div class="easy-entity-cards-container">
9
- <div class="splitcontent">
10
- <% entities.each do |referenced_entity| %>
11
- <%# render_easy_entity_card(referenced_entity, entity, options.merge(:referenced_entities => referenced_entities)) %>
12
- <% end %>
13
- </div>
14
- </div>
15
- >>>>>>> stable
16
- <% end %>
data/config/database.yml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- test:
3
- adapter:
4
- database: test_redmine_8e3d204de2b24cab
5
- host: 127.0.0.1
6
- username:
7
- password:
8
- encoding: utf8
9
- development:
10
- adapter:
11
- database: redmine_8e3d204de2b24cab
12
- host: 127.0.0.1
13
- username:
14
- password:
15
- encoding: utf8
@@ -1,9 +0,0 @@
1
- module RedmineExtensions
2
- module IssuesControllerPatch
3
-
4
- def ahojky
5
- 'ahoj'
6
- end
7
-
8
- end
9
- end
@@ -1,7 +0,0 @@
1
- module RedmineExtensions
2
- <<<<<<< HEAD
3
- VERSION = '0.1.09'
4
- =======
5
- VERSION = '0.0.36'
6
- >>>>>>> stable
7
- end
File without changes