Changeset 5910
- Timestamp:
- 08/13/08 13:44:36 (3 months ago)
- Files:
-
- rubricks_core/trunk/app/controllers/application.rb (modified) (2 diffs)
- rubricks_core/trunk/app/models/rubricks_config.rb (modified) (4 diffs)
- rubricks_core/trunk/app/models/rubricks_lib/character_set/chinese_character_set_convert.rb (modified) (1 diff)
- rubricks_core/trunk/app/models/rubricks_lib/character_set/english_character_set_convert.rb (modified) (1 diff)
- rubricks_core/trunk/app/models/rubricks_lib/character_set/japanese_character_set_convert.rb (modified) (1 diff)
- rubricks_core/trunk/app/models/rubricks_schedule.rb (modified) (2 diffs)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_base.rb (modified) (1 diff)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_realtime_validator_helper.rb (modified) (1 diff)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_user_management_helper.rb (modified) (3 diffs)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/active_support_base.rb (modified) (2 diffs)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/active_support_core_ext_array_flexible.rb (deleted)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/active_support_flexible_args.rb (deleted)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/application_controller_extension.rb (modified) (1 diff)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/class_extension.rb (modified) (5 diffs)
- rubricks_core/trunk/vendor/plugins/rubricks/lib/rubricks_cron_init.rb (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
rubricks_core/trunk/app/controllers/application.rb
r5896 r5910 112 112 def before_request 113 113 RubricksLib.require_all 114 before_request_store_agent_data 114 115 ::ApplicationControllerExtension.before_request 115 116 before_request_fix_parameters … … 152 153 end 153 154 154 def before_request_store_request_data 155 Thread.current[:current_component] = RubricksComponent.find_by_name(self.class.name.to_s.componentize) 155 def before_request_store_agent_data 156 156 Thread.current[:request] = { 157 :base_url => RubricksLib.base_url(request), 158 :ip_addr => request.env['REMOTE_ADDR'], 159 :params => { 160 :controller => params[:controller].sub(%r|^/?|, '/'), 161 :action => params[:action], 162 :id => params[:id], 163 }, 157 :ip_addr => ((request.env['HTTP_X_FORWARDED_FOR'].blank?) ? request.env['REMOTE_ADDR'] : request.env['HTTP_X_FORWARDED_FOR'].split(',').first), 164 158 :user_agent => request.env['HTTP_USER_AGENT'], 165 159 } 166 160 end 167 161 162 def before_request_store_request_data 163 Thread.current[:current_component] = RubricksComponent.find_by_name(self.class.name.to_s.componentize) 164 Thread.current[:request][:base_url] = RubricksLib.base_url(request) 165 Thread.current[:request][:params] = {:controller => params[:controller].sub(%r|^/?|, '/'), :action => params[:action], :id => params[:id]} 166 end 167 168 168 def dispatch_exception(ex) 169 ex = ex.original_exception if ex.is_a?(::ActionView::TemplateError) && !ex.original_exception.nil? 169 170 url, status, message = nil, 200, nil 170 171 case ex rubricks_core/trunk/app/models/rubricks_config.rb
r5744 r5910 23 23 :site_maintenanced_at => 20000101000000...20991231000000, 24 24 :site_management_ignore_refresh => ['true', 'false'], 25 :site_multilingual => ['true', 'false'], 25 26 :site_name => 1..64, 26 27 :site_proxy => 0..255, … … 48 49 }, 49 50 :disable_items => { 51 :site_default_page => true, 50 52 :site_enable_auto_login => true, 53 :site_multilingual => true, 51 54 :site_switch_header => true, 52 55 :site_use_wysiwyg => true, … … 231 234 when 'site_default_language' 232 235 raise RubricksError::Common::ValidateException unless RubricksConfig::CONFIGURATION[:data][:site_default_language].include?(self.value) 236 when 'site_default_page' 233 237 when 'site_default_theme' 234 238 raise RubricksError::Common::ValidateException unless RubricksConfig::CONFIGURATION[:data][:site_default_theme].call.include?(self.value) … … 241 245 when 'site_management_ignore_refresh' 242 246 raise RubricksError::Common::ValidateException unless RubricksConfig::CONFIGURATION[:data][:site_management_ignore_refresh].include?(self.value) 247 when 'site_multilingual' 248 raise RubricksError::Common::ValidateException unless RubricksConfig::CONFIGURATION[:data][:site_multilingual].include?(self.value) 243 249 when 'site_name' 244 250 raise RubricksError::Common::ValidateException if self.value.blank? rubricks_core/trunk/app/models/rubricks_lib/character_set/chinese_character_set_convert.rb
r5886 r5910 1 1 module RubricksCharacterSetConvert 2 2 def convert_for_ie(str) 3 Iconv.conv('GB2312', 'UTF-8', str) 3 result = str 4 if RubricksConfig.get('site_multilingual') 5 begin 6 result = CGI.escape(str) 7 rescue Exception 8 result = "file#{File::extname(str)}" 9 end 10 else 11 result = Iconv.conv('GB2312', 'UTF-8', str) rescue nil 12 verify = Iconv.conv('UTF-8', 'GB2312', result) rescue nil 13 if verify != str 14 begin 15 result = CGI.escape(str) 16 rescue Exception 17 result = "file#{File::extname(str)}" 18 end 19 end 20 end 21 return result 4 22 end 5 23 6 24 def convert_for_modern_browser(str) 7 Kconv::kconv(str, Kconv::UTF8)25 return Kconv::kconv(str, Kconv::UTF8) 8 26 end 9 27 10 28 def convert_mail_body(str) 11 str29 return str 12 30 end 13 31 14 32 def convert_mail_header(str) 15 str33 return str 16 34 end 17 35 end rubricks_core/trunk/app/models/rubricks_lib/character_set/english_character_set_convert.rb
r5886 r5910 1 1 module RubricksCharacterSetConvert 2 2 def convert_for_ie(str) 3 return str 3 result = str 4 if RubricksConfig.get('site_multilingual') 5 begin 6 result = CGI.escape(str) 7 rescue Exception 8 result = "file#{File::extname(str)}" 9 end 10 end 11 return result 4 12 end 5 13 rubricks_core/trunk/app/models/rubricks_lib/character_set/japanese_character_set_convert.rb
r5886 r5910 1 1 module RubricksCharacterSetConvert 2 2 def convert_for_ie(str) 3 Kconv::kconv(str, Kconv::SJIS) 3 result = str 4 if RubricksConfig.get('site_multilingual') 5 begin 6 result = CGI.escape(str) 7 rescue Exception 8 result = "file#{File::extname(str)}" 9 end 10 else 11 result = Kconv::kconv(str, Kconv::SJIS) rescue nil 12 verify = Kconv::kconv(result, Kconv::UTF8) rescue nil 13 if verify != str 14 begin 15 result = CGI.escape(str) 16 rescue Exception 17 result = "file#{File::extname(str)}" 18 end 19 end 20 end 21 return result 4 22 end 5 23 6 24 def convert_for_modern_browser(str) 7 Kconv::kconv(str, Kconv::UTF8)25 return Kconv::kconv(str, Kconv::UTF8) 8 26 end 9 27 10 28 def convert_mail_body(str) 11 Kconv::kconv(str, Kconv::JIS)29 return Kconv::kconv(str, Kconv::JIS) 12 30 end 13 31 14 32 def convert_mail_header(str) 15 Kconv::kconv(str, Kconv::JIS)33 return Kconv::kconv(str, Kconv::JIS) 16 34 end 17 35 end rubricks_core/trunk/app/models/rubricks_schedule.rb
r5781 r5910 5 5 def instance_from_hash(hash) 6 6 year, month, day = hash['start']['year'].to_i, hash['start']['month'].to_i.next, hash['start']['day'].to_i 7 f_year, f_month, f_day = hash['finish']['year'].to_i, hash['finish']['month'].to_i.next, hash['finish']['day'].to_i 7 8 RubricksSchedule.new( 8 9 :id => hash['sid'], 9 10 :start => Time.gm(year, month, day, hash['start']['hour'].to_i, hash['start']['min'].to_i), 10 :finish => Time.gm( year, month,day, hash['finish']['hour'].to_i, hash['finish']['min'].to_i),11 :finish => Time.gm(f_year, f_month, f_day, hash['finish']['hour'].to_i, hash['finish']['min'].to_i), 11 12 :description => hash['description'], 12 13 :adapter => hash['adapter'].to_i … … 29 30 30 31 def to_json 31 date = {:year => self.start.year, :month => self.start.month - 1, :day => self.start.day}32 32 { 33 33 :id => self.object_id, 34 34 :sid => self.sid, 35 :start => date.merge({:hour => self.start.hour, :min => self.start.min}),36 :finish => date.merge({:hour => self.finish.hour, :min => self.finish.min}),35 :start => {:year => self.start.year, :month => self.start.month - 1, :day => self.start.day, :hour => self.start.hour, :min => self.start.min}, 36 :finish => {:year => self.finish.year, :month => self.finish.month - 1, :day => self.finish.day, :hour => self.finish.hour, :min => self.finish.min}, 37 37 :description => self.description, 38 38 :adapter => self.adapter, rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_base.rb
r5728 r5910 2 2 require_dependency 'action_view_attachment_helper' 3 3 require_dependency 'action_view_form_tag_helper' 4 require_dependency 'action_view_form_options_helper' 4 5 require_dependency 'action_view_mobile_helper' 5 6 require_dependency 'action_view_pagination_helper' rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_realtime_validator_helper.rb
r5832 r5910 696 696 end 697 697 698 def sort_key_js(css_id, value) 699 allow_nil = false 700 msg = RubricksLib.hl('[_Common_Validate_SortKey]') 701 if value.is_a?(Hash) 702 allow_nil = value[:allow_nil] 703 msg = value[:msg] unless value[:msg].blank? 704 end 705 return regexp_js(css_id, {:allow_nil => allow_nil, :msg => msg, :value => '/' + RubricksLib.hl('[_Common_SortKeyFormat]') + '/'}) 706 end 707 698 708 def time_js(css_id, value) 699 709 return if value.nil? rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_user_management_helper.rb
r5901 r5910 6 6 limit ||= RubricksGroup::TREE_CHARACTER_LIMIT[tree_grade - 1] 7 7 group_name = (rg.name.match(/^\[.*\]$/)) ? hl(rg.name) : rg.name 8 return RubricksLib.clip_string(group_name, limit, true) 9 end 10 11 def group_list_options(rg_id = nil) 12 return { 13 :js_options => { 14 :flagKeypressAvailable => true, 15 :functionPostPressLeft => %q|function() {SelectableTableLib.navi('previous');}|, 16 :functionPostPressRight => %q|function() {SelectableTableLib.navi('next');}|, 17 :functionSubmit => %q|function(rg_id) {rubricks.system.admin_user.functions.add_ajax_history('group_' + rg_id);}|, 18 :initialSelected => rg_id, 19 :prefixTrId => 'rubricks_group_list_', 20 }, 21 :manage => true, 22 } 8 return RubricksLib.clip_string(group_name, limit) 23 9 end 24 10 … … 35 21 :variable => 'rubricks.system.admin_user.variables.group_user_edit_window', 36 22 } 37 end38 39 def group_tree?40 RubricksConfig.get('user_management_group_display') == 'treeview'41 23 end 42 24 … … 59 41 }.merge(options) 60 42 render :partial => '/system/user/group_select_window' 61 end62 63 def render_groups_hierarchically(rg_list, options = {})64 options = {65 :display_kana => (RubricksLib.current_lang == 'japanese' && RubricksConfig.get('site_display_kana')),66 :id_prefix => 'rubricks_group_list_',67 :js_package => 'rubricks.system.admin_user.functions',68 :parent => nil,69 }.merge(options)70 html = ''71 if options[:parent]72 content = <<-"EOS"73 <div id="#{options[:id_prefix]}show_parent" class="system_admin_user_list_parent" onclick="#{options[:js_package]}.group_list_change_grade(event, #{(options[:parent].parent_id) ? hl(options[:parent].parent_id) : 0});">74 <div id="#{options[:id_prefix]}show_group_#{hl(options[:parent].id)}_form" class="float_left icon_frame_inactive swap">75 <span id="#{options[:id_prefix]}show_group_#{hl(options[:parent].id)}_button" class="rubricks_icon icon_arrow_up"> </span>76 </div>77 #{rollover_swap("#{options[:id_prefix]}show_group_#{hl(options[:parent].id)}_form")}78 <br class="cl" />79 </div>80 EOS81 html += render(:partial => '/system/user/group_list_line', :locals => {:id => options[:parent].id, :content => content})82 end83 rg_list.each do |rg|84 content = ''85 if rg.children.length != 086 children = rg.children.delete_if{|child| !child.effective}87 if children.length != 088 content += <<-"EOS"89 <div id="#{options[:id_prefix]}show_group_#{hl(rg.id)}_form" class="float_right icon_frame_inactive swap">90 <span id="#{options[:id_prefix]}show_group_#{hl(rg.id)}_button" class="rubricks_icon icon_arrow_down" onclick="#{options[:js_package]}.group_list_change_grade(event, #{hl(rg.id)});"> </span>91 </div>92 #{rollover_swap("#{options[:id_prefix]}show_group_#{hl(rg.id)}_form")}93 EOS94 end95 end96 group = ''97 group += %Q|[#{hl('[_Common_Deleted]')}] | unless rg.effective98 group += %Q|#{hl(rg.name)}|99 group += (rg.kana.blank?) ? '' : " (#{hl(rg.kana)})" if options[:display_kana]100 content += %Q|<div id="#{options[:id_prefix]}group_#{hl(rg.id)}">#{group}</div>|101 html += render(:partial => '/system/user/group_list_line', :locals => {:id => rg.id, :content => content})102 end103 return html104 43 end 105 44 rubricks_core/trunk/vendor/plugins/rubricks/lib/active_support_base.rb
r5759 r5910 1 require_dependency 'active_support_flexible_args'2 require_dependency 'active_support_core_ext_array_flexible'3 1 require_dependency 'active_support_core_ext_date_comparison' 4 2 require_dependency 'active_support_core_ext_date_json' … … 16 14 include ActiveSupport::CoreExtensions::String::Json 17 15 include ActiveSupport::CoreExtensions::String::Rubricks 18 end19 20 class Array21 include ActiveSupport::CoreExtensions::Array::Flexible22 16 end 23 17 rubricks_core/trunk/vendor/plugins/rubricks/lib/application_controller_extension.rb
r5195 r5910 1 1 class ApplicationControllerExtension 2 def self.before_request 3 end 2 class << self 3 def before_request 4 end 4 5 5 def self.cookie_path6 ::ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS[:session_path]7 end6 def cookie_path 7 ::ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS[:session_path] 8 end 8 9 9 def self.rescue_action_as_redirect?(exception) 10 nil 10 def rescue_action_as_redirect?(exception) 11 nil 12 end 11 13 end 12 14 end rubricks_core/trunk/vendor/plugins/rubricks/lib/class_extension.rb
r4635 r5910 2 2 def long_scope_attr_reader(*syms) 3 3 syms = syms.first if syms.length == 1 && syms.first.is_a?(Hash) 4 5 4 syms.each do |sym, init_val| 6 5 next if sym.is_a?(Hash) 7 8 6 class_eval(<<-EOS, __FILE__, __LINE__) 9 7 unless defined? @@#{sym} … … 20 18 EOS 21 19 end 22 end # long_scope_attr_reader20 end 23 21 24 22 def long_scope_attr_writer(*syms) 25 23 options = {} 26 27 24 if syms.length == 1 && syms.first.is_a?(Hash) 28 25 syms = syms.first … … 30 27 options = syms.pop 31 28 end 32 33 syms.each do |sym,| # don't remove comma(,). 29 syms.each do |sym,| 34 30 class_eval(<<-EOS, __FILE__, __LINE__) 35 31 unless defined? @@#{sym} … … 46 42 EOS 47 43 end 48 end # long_scope_attr_writer44 end 49 45 50 46 def long_scope_attr_accessor(*syms) … … 52 48 long_scope_attr_writer(*syms) 53 49 end 54 end # LongScoopAttrAccessor50 end 55 51 56 52 class Class rubricks_core/trunk/vendor/plugins/rubricks/lib/rubricks_cron_init.rb
r4554 r5910 1 1 begin 2 unless MiddleMan.get_worker(:rubricks_cron) 3 MiddleMan.new_worker(:class => :rubricks_cron_worker, :job_key => :rubricks_cron) 4 end 5 rescue 2 MiddleMan.new_worker(:class => :rubricks_cron_worker, :job_key => :rubricks_cron) unless MiddleMan.get_worker(:rubricks_cron) 3 rescue Exception => ex 6 4 end
