redmineup 1.1.12 → 1.1.14

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 16f1cce1801a74eabcd8a01b4c1039f3bec3a1e4ced0911a75f1f01b2294a7ec
4
- data.tar.gz: 9d8172c485f65ca0c76fa2af110e2b326ed9282b5655d00ed8532cf69e75a0d8
3
+ metadata.gz: edd9e2b69c72c5f3ec376bd59f68cd701bcb28a1ac81c7fbf31085acdd422e18
4
+ data.tar.gz: 52bf3b2fd440ace540ba8d1eba5d297243ded63da5e806a9496d41c796f9d628
5
5
  SHA512:
6
- metadata.gz: 46644a7392b9f57a5343499c03d7bc5a1c87a76793b09c5c6bde68c79f007bd7a65228fa5bf67cc2cf1ddccb9232c83b1dc0038195ee1bc810597dba3b2fb83e
7
- data.tar.gz: 49f143063899297dfed5ea555c2fc38d3d22b534ec3ec63013784f802571ccd10c511d0b24790f68a4456ef8fa15b6d174381bea2a33059704f89236caf1c286
6
+ metadata.gz: 1d196b8b574b8643412d71618072da558649c48748b92b471e7594743ebe6c7c2f03f8c3c523e5774034040bb4a802d77fe00713acfeb50b978bb1a46f605cee
7
+ data.tar.gz: '07478c4976432e4103a50630d60fa691d153434a238e3811bae0d393ad4c1e24a5e17246268e569a1a03b023bd8b704ec15c55536dbb045ffd83db1cb1f12c56'
@@ -10,6 +10,3 @@ table.cal td.odd p.day-num {color: #bbb;}
10
10
  table.cal td.today {background:#ffffdd;}
11
11
  table.cal td.today p.day-num {font-weight: bold;}
12
12
  table.cal td.nwday:not(.odd) {background-color:#f1f1f1;}
13
- table.cal .starting a.issue, p.cal.legend .starting {background: url(../../../images/bullet_go.png) no-repeat -1px -2px; padding-left:16px;}
14
- table.cal .ending a.issue, p.cal.legend .ending {background: url(../../../images/bullet_end.png) no-repeat -1px -2px; padding-left:16px;}
15
- table.cal .starting.ending a.issue, p.cal.legend .starting.ending {background: url(../../../images/bullet_diamond.png) no-repeat -1px -2px; padding-left:16px;}
@@ -432,9 +432,6 @@ table.cal td.odd p.day-num {color: #bbb;}
432
432
  table.cal td.today {background:#ffffdd;}
433
433
  table.cal td.today p.day-num {font-weight: bold;}
434
434
  table.cal td.nwday:not(.odd) {background-color:#f1f1f1;}
435
- table.cal .starting a.issue, p.cal.legend .starting {background: url(../../../images/bullet_go.png) no-repeat -1px -2px; padding-left:16px;}
436
- table.cal .ending a.issue, p.cal.legend .ending {background: url(../../../images/bullet_end.png) no-repeat -1px -2px; padding-left:16px;}
437
- table.cal .starting.ending a.issue, p.cal.legend .starting.ending {background: url(../../../images/bullet_diamond.png) no-repeat -1px -2px; padding-left:16px;}
438
435
 
439
436
  #admin-menu a.icon-redmineup-money:not(:has(svg)) {
440
437
  background-image: url(../images/money.png);
@@ -462,9 +459,6 @@ ul.cal {
462
459
  .cal .calbody.today p.day-num {font-weight: bold;}
463
460
  .cal .calbody .icon {padding-top: 2px; padding-bottom: 3px;}
464
461
  .cal .calbody.nwday:not(.odd) {background-color:#f1f1f1;}
465
- .cal .starting a.issue, p.cal.legend .starting {background: url(../images/bullet_go.png) no-repeat -1px -2px; padding-left:16px;}
466
- .cal .ending a.issue, p.cal.legend .ending {background: url(../images/bullet_end.png) no-repeat -1px -2px; padding-left:16px;}
467
- .cal .starting.ending a.issue, p.cal.legend .starting.ending {background: url(../images/bullet_diamond.png) no-repeat -1px -2px; padding-left:16px;}
468
462
  @media screen and (max-width: 899px) {
469
463
  ul.cal { display: block }
470
464
  .cal .calhead { display: none }
data/doc/CHANGELOG CHANGED
@@ -4,6 +4,15 @@ Redmine UP gem - general functions for plugins (tags, vote, viewing, currency)
4
4
  Copyright (C) 2011-2026 Kirill Bezrukov (RedmineUP)
5
5
  https://www.redmineup.com/
6
6
 
7
+ == 2026-10-09 v1.1.14
8
+
9
+ * Fixed missing calendar icons and extra padding in Redmine 6/7
10
+ * Fixed tag field width in forms
11
+
12
+ == 2026-08-25 v1.1.13
13
+
14
+ * Updated patches from include to prepend
15
+
7
16
  == 2026-07-23 v1.1.12
8
17
 
9
18
  * Fixed race condition and added exponential backoff to shared worker websocket reconnect logic
@@ -67,7 +67,8 @@ module Redmineup
67
67
  options_for_select(value, value),
68
68
  {
69
69
  multiple: true,
70
- width: width || '95%',
70
+ style: "width: #{width || '95%'};",
71
+ width: 'style',
71
72
  url: url || auto_complete_taggable_tags_path(taggable_type: taggable_type, project_id: project_id),
72
73
  placeholder: placeholder || l(:lable_redmineup_add_tag),
73
74
  tags: true
@@ -1,9 +1,9 @@
1
1
  module Redmineup
2
2
  module Patches
3
3
  module ActionCableBasePatch
4
- def self.included(base)
5
- base.send(:extend, ClassMethods)
6
- delegate :rup_broadcast_to, to: :class
4
+ def self.prepended(base)
5
+ base.extend(ClassMethods)
6
+ base.delegate :rup_broadcast_to, to: :class
7
7
  end
8
8
 
9
9
  module ClassMethods
@@ -22,6 +22,4 @@ module Redmineup
22
22
  end
23
23
  end
24
24
 
25
- unless ActionCable::Channel::Base.included_modules.include?(Redmineup::Patches::ActionCableBasePatch)
26
- ActionCable::Channel::Base.send(:include, Redmineup::Patches::ActionCableBasePatch)
27
- end
25
+ ActionCable::Channel::Base.prepend(Redmineup::Patches::ActionCableBasePatch)
@@ -1,7 +1,7 @@
1
1
  module Redmineup
2
2
  module Patches
3
3
  module ActionCablePatch
4
- def self.included(base)
4
+ def self.prepended(base)
5
5
  base.class_eval do
6
6
  module_function def rup_server(klass = 'ActionCable::Connection::RupConnection')
7
7
  @rup_servers ||= {}
@@ -16,6 +16,4 @@ module Redmineup
16
16
  end
17
17
  end
18
18
 
19
- unless ActionCable.included_modules.include?(Redmineup::Patches::ActionCablePatch)
20
- ActionCable.include Redmineup::Patches::ActionCablePatch
21
- end
19
+ ActionCable.prepend(Redmineup::Patches::ActionCablePatch)
@@ -14,6 +14,4 @@ module Redmineup
14
14
  end
15
15
  end
16
16
 
17
- unless AutoCompletesController.included_modules.include?(Redmineup::Patches::AutoCompletesControllerPatch)
18
- AutoCompletesController.include(Redmineup::Patches::AutoCompletesControllerPatch)
19
- end
17
+ AutoCompletesController.prepend(Redmineup::Patches::AutoCompletesControllerPatch)
@@ -2,28 +2,15 @@ module Redmineup
2
2
  module Patches
3
3
  module Compatibility
4
4
  module RoutingMapperPatch
5
- def self.included(base)
6
- base.send(:include, InstanceMethods)
5
+ def constraints(options = {}, &block)
6
+ return super(options, &block) unless options.is_a?(Hash)
7
7
 
8
- base.class_eval do
9
- alias_method :constraints_without_redmineup, :constraints
10
- alias_method :constraints, :constraints_with_redmineup
11
- end
12
- end
13
-
14
- module InstanceMethods
15
- def constraints_with_redmineup(options = {}, &block)
16
- return constraints_without_redmineup(options, &block) unless options.is_a?(Hash)
17
-
18
- options[:object_type] = /.+/ if options[:object_type] && options[:object_type].is_a?(Regexp)
19
- constraints_without_redmineup(options, &block)
20
- end
8
+ options[:object_type] = /.+/ if options[:object_type] && options[:object_type].is_a?(Regexp)
9
+ super(options, &block)
21
10
  end
22
11
  end
23
12
  end
24
13
  end
25
14
  end
26
15
 
27
- unless ActionDispatch::Routing::Mapper.included_modules.include?(Redmineup::Patches::Compatibility::RoutingMapperPatch)
28
- ActionDispatch::Routing::Mapper.send(:include, Redmineup::Patches::Compatibility::RoutingMapperPatch)
29
- end
16
+ ActionDispatch::Routing::Mapper.prepend(Redmineup::Patches::Compatibility::RoutingMapperPatch)
@@ -2,18 +2,12 @@ module Redmineup
2
2
  module Patches
3
3
  module Compatibility
4
4
  module SpritePatch
5
- def self.included(base)
6
- base.class_eval do
7
- def sprite_icon(icon_name, label = '', icon_only: false, size: '18', css_class: nil, sprite: "icons", plugin: nil, rtl: false)
8
- label
9
- end
10
- end
5
+ def sprite_icon(icon_name, label = '', icon_only: false, size: '18', css_class: nil, sprite: "icons", plugin: nil, rtl: false)
6
+ label
11
7
  end
12
8
  end
13
9
  end
14
10
  end
15
11
  end
16
12
 
17
- unless ApplicationHelper.included_modules.include?(Redmineup::Patches::Compatibility::SpritePatch)
18
- ApplicationHelper.send(:include, Redmineup::Patches::Compatibility::SpritePatch)
19
- end
13
+ ApplicationHelper.prepend(Redmineup::Patches::Compatibility::SpritePatch)
@@ -1,9 +1,3 @@
1
- if Redmine::VERSION.to_s < "4"
2
- require 'redmineup/patches/compatibility/application_controller_patch'
3
- end
4
- if Redmine::VERSION.to_s < "5"
5
- require 'redmineup/patches/compatibility/user_patch'
6
- end
7
1
  if Redmine::VERSION.to_s < "6"
8
2
  require 'redmineup/patches/compatibility/sprite_patch'
9
3
  end
@@ -2,32 +2,23 @@ module Redmineup
2
2
  module Patches
3
3
  module LiquidPatch
4
4
  module StandardFilters
5
+ private
5
6
 
6
- def self.included(base)
7
- base.class_eval do
8
-
9
- private
10
-
11
- def to_number(obj)
12
- case obj
13
- when Float
14
- BigDecimal(obj.to_s)
15
- when Numeric
16
- obj
17
- when String
18
- (obj.strip =~ /^\d+\.\d+$/) ? BigDecimal(obj) : obj.to_i
19
- else
20
- 0
21
- end
22
- end
7
+ def to_number(obj)
8
+ case obj
9
+ when Float
10
+ BigDecimal(obj.to_s)
11
+ when Numeric
12
+ obj
13
+ when String
14
+ (obj.strip =~ /^\d+\.\d+$/) ? BigDecimal(obj) : obj.to_i
15
+ else
16
+ 0
23
17
  end
24
18
  end
25
-
26
19
  end
27
20
  end
28
21
  end
29
22
  end
30
-
31
- unless Liquid::StandardFilters.included_modules.include?(Redmineup::Patches::LiquidPatch::StandardFilters)
32
- Liquid::StandardFilters.send(:include, Redmineup::Patches::LiquidPatch::StandardFilters)
33
- end
23
+
24
+ Liquid::StandardFilters.prepend(Redmineup::Patches::LiquidPatch::StandardFilters)
@@ -1,3 +1,3 @@
1
1
  module Redmineup
2
- VERSION = '1.1.12'
2
+ VERSION = '1.1.14'
3
3
  end
@@ -35,7 +35,16 @@ class TagsHelperViewTest < ActionView::TestCase
35
35
  width: '60%', tags: false,
36
36
  placeholder: '+ add tag')
37
37
  assert_includes result, 'name="issue[tag_list][]"'
38
- assert_includes result, '"width":"60%"'
38
+ assert_includes result, 'style="width: 60%;"'
39
+ assert_includes result, '"width":"style"'
39
40
  assert_includes result, '"tags":false'
40
41
  end
42
+
43
+ def test_tag_list_field_tag_with_default_width
44
+ result = tag_list_field_tag('issue[tag_list]', [],
45
+ url: '/auto_completes/taggable_tags',
46
+ placeholder: '+ add tag')
47
+ assert_includes result, 'style="width: 95%;"'
48
+ assert_includes result, '"width":"style"'
49
+ end
41
50
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redmineup
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.12
4
+ version: 1.1.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - RedmineUP
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-23 00:00:00.000000000 Z
11
+ date: 2026-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -124,7 +124,6 @@ files:
124
124
  - app/assets/javascripts/select2.js
125
125
  - app/assets/javascripts/select2_helpers.js
126
126
  - app/assets/stylesheets/calendars.css
127
- - app/assets/stylesheets/money.css
128
127
  - app/assets/stylesheets/redmineup.css
129
128
  - app/assets/stylesheets/select2.css
130
129
  - app/controllers/redmineup_controller.rb
@@ -194,10 +193,8 @@ files:
194
193
  - lib/redmineup/patches/action_cable_base_patch.rb
195
194
  - lib/redmineup/patches/action_cable_patch.rb
196
195
  - lib/redmineup/patches/auto_completes_controller_patch.rb
197
- - lib/redmineup/patches/compatibility/application_controller_patch.rb
198
196
  - lib/redmineup/patches/compatibility/routing_mapper_patch.rb
199
197
  - lib/redmineup/patches/compatibility/sprite_patch.rb
200
- - lib/redmineup/patches/compatibility/user_patch.rb
201
198
  - lib/redmineup/patches/compatibility_patch.rb
202
199
  - lib/redmineup/patches/liquid_patch.rb
203
200
  - lib/redmineup/settings.rb
@@ -1,95 +0,0 @@
1
- #admin-menu a.icon-redmineup-money:not(:has(svg)) {
2
- background-image: url(../images/money.png);
3
- }
4
-
5
- /***** Calendar *****/
6
- ul.cal {
7
- list-style: none;
8
- width: 100%;
9
- padding: 0;
10
- display: grid;
11
- grid-template-columns: 2rem repeat(7, 1fr);
12
- margin: 0;
13
- border: 1px solid #c0c0c0;
14
- border-spacing: 0;
15
- border-radius: 3px;
16
- }
17
-
18
- .cal .calhead {
19
- background-color:#eee;
20
- text-align: center;
21
- font-weight: bold;
22
- padding: 4px
23
- }
24
-
25
- .cal .week-number {
26
- background-color:#eee;
27
- border:none;
28
- font-size: 1em;
29
- padding: 4px;
30
- text-align: center;
31
- }
32
-
33
- .cal .week-number .label-week {
34
- display: none;
35
- }
36
-
37
- .cal .calbody {
38
- border: 1px solid #d7d7d7;
39
- vertical-align: top;
40
- font-size: 0.9em;
41
- border-bottom: 0;
42
- border-right: 0;
43
- line-height: 1.2;
44
- min-height: calc(1.2em * 6);
45
- padding: 2px;
46
- }
47
-
48
- .cal .calbody p.day-num {font-size: 1.1em; text-align:right;}
49
- .cal .calbody .abbr-day {display:none}
50
- .cal .calbody.odd p.day-num {color: #bbb;}
51
- .cal .calbody.today {background:#ffd;}
52
- .cal .calbody.today p.day-num {font-weight: bold;}
53
-
54
- .cal .calbody .icon {padding-top: 2px; padding-bottom: 3px;}
55
- .cal .calbody.nwday:not(.odd) {background-color:#f1f1f1;}
56
- .cal .starting a.issue, p.cal.legend .starting {background: url(../images/bullet_go.png) no-repeat -1px -2px; padding-left:16px;}
57
- .cal .ending a.issue, p.cal.legend .ending {background: url(../images/bullet_end.png) no-repeat -1px -2px; padding-left:16px;}
58
- .cal .starting.ending a.issue, p.cal.legend .starting.ending {background: url(../images/bullet_diamond.png) no-repeat -1px -2px; padding-left:16px;}
59
-
60
-
61
- /* responsive.css */
62
- @media screen and (max-width: 899px)
63
- {
64
- ul.cal {
65
- display: block
66
- }
67
- .cal .calhead {
68
- display: none
69
- }
70
-
71
- .cal .calbody {
72
- min-height: calc(1.2em * 3);
73
- }
74
-
75
- .cal .calbody .abbr-day {
76
- display: inline;
77
- }
78
-
79
- .cal .week-number {
80
- border: 1px solid #c0c0c0;
81
- text-align: left;
82
- font-weight: bold;
83
- background-color: #def;
84
- }
85
-
86
- .cal .week-number .label-week {
87
- display: inline;
88
- }
89
-
90
- .cal .calbody p.day-num {
91
- font-size: 1.1em;
92
- text-align: left;
93
- }
94
- }
95
- /***** End Calendar *****/
@@ -1,32 +0,0 @@
1
- module Redmineup
2
- module Patches
3
- module Compatibility
4
- module ApplicationControllerPatch
5
- def self.included(base) # :nodoc:
6
- base.extend(ClassMethods)
7
- base.class_eval do
8
- unloadable # Send unloadable so it will not be unloaded in development
9
- end
10
- end
11
-
12
- module ClassMethods
13
- def before_action(*filters, &block)
14
- before_filter(*filters, &block)
15
- end
16
-
17
- def after_action(*filters, &block)
18
- after_filter(*filters, &block)
19
- end
20
-
21
- def skip_before_action(*filters, &block)
22
- skip_before_filter(*filters, &block)
23
- end
24
- end
25
- end
26
- end
27
- end
28
- end
29
-
30
- unless ActionController::Base.methods.include?(:before_action)
31
- ActionController::Base.send(:include,Redmineup::Patches::Compatibility::ApplicationControllerPatch)
32
- end
@@ -1,21 +0,0 @@
1
- module Redmineup
2
- module Patches
3
- module Compatibility
4
- module UserPatch
5
- def self.included(base)
6
- base.send(:include, InstanceMethods)
7
- end
8
-
9
- module InstanceMethods
10
- def atom_key
11
- rss_key
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
-
19
- unless User.included_modules.include?(Redmineup::Patches::Compatibility::UserPatch)
20
- User.send(:include, Redmineup::Patches::Compatibility::UserPatch)
21
- end