diff options
author | Go MAEDA <maeda@farend.jp> | 2024-06-08 07:31:08 +0000 |
---|---|---|
committer | Go MAEDA <maeda@farend.jp> | 2024-06-08 07:31:08 +0000 |
commit | 0ce589f3a886d8d63de4087a6fa9bbb8efa10e4d (patch) | |
tree | 2a5c553f94330fa2533c1be6eebdeca573aa496f /lib | |
parent | 347e21ead845101d3fa5ee54ae218d968aea9b8e (diff) | |
download | redmine-0ce589f3a886d8d63de4087a6fa9bbb8efa10e4d.tar.gz redmine-0ce589f3a886d8d63de4087a6fa9bbb8efa10e4d.zip |
Merged r22863 from trunk to 5.1-stable (#40802).
git-svn-id: https://svn.redmine.org/redmine/branches/5.1-stable@22864 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'lib')
-rw-r--r-- | lib/redmine/views/builders/json.rb | 2 | ||||
-rw-r--r-- | lib/redmine/views/builders/structure.rb | 18 |
2 files changed, 9 insertions, 11 deletions
diff --git a/lib/redmine/views/builders/json.rb b/lib/redmine/views/builders/json.rb index 47ce0cc9b..011c16e58 100644 --- a/lib/redmine/views/builders/json.rb +++ b/lib/redmine/views/builders/json.rb @@ -28,7 +28,7 @@ module Redmine def initialize(request, response) super callback = request.params[:callback] || request.params[:jsonp] - if callback && Setting.jsonp_enabled? + if callback && ::Setting.jsonp_enabled? self.jsonp = callback.to_s.gsub(/[^a-zA-Z0-9_.]/, '') end end diff --git a/lib/redmine/views/builders/structure.rb b/lib/redmine/views/builders/structure.rb index f4524143f..ab1e3e411 100644 --- a/lib/redmine/views/builders/structure.rb +++ b/lib/redmine/views/builders/structure.rb @@ -17,12 +17,10 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -require 'blankslate' - module Redmine module Views module Builders - class Structure < BlankSlate + class Structure < BasicObject def initialize(request, response) @struct = [{}] @request = request @@ -38,7 +36,7 @@ module Redmine end def encode_value(value) - if value.is_a?(Time) + if value.is_a?(::Time) # Rails uses a global setting to format JSON times # Don't rely on it for the API as it could have been changed value.xmlschema(0) @@ -49,15 +47,15 @@ module Redmine def method_missing(sym, *args, &block) if args.count > 0 - if args.first.is_a?(Hash) - if @struct.last.is_a?(Array) + if args.first.is_a?(::Hash) + if @struct.last.is_a?(::Array) @struct.last << args.first unless block else @struct.last[sym] = args.first end else value = encode_value(args.first) - if @struct.last.is_a?(Array) + if @struct.last.is_a?(::Array) if args.size == 1 && !block @struct.last << value else @@ -69,13 +67,13 @@ module Redmine end end if block - @struct << (args.first.is_a?(Hash) ? args.first : {}) + @struct << (args.first.is_a?(::Hash) ? args.first : {}) yield(self) ret = @struct.pop - if @struct.last.is_a?(Array) + if @struct.last.is_a?(::Array) @struct.last << ret else - if @struct.last.has_key?(sym) && @struct.last[sym].is_a?(Hash) + if @struct.last.has_key?(sym) && @struct.last[sym].is_a?(::Hash) @struct.last[sym].merge! ret else @struct.last[sym] = ret |