Changeset 5910

Show
Ignore:
Timestamp:
08/13/08 13:44:36 (3 months ago)
Author:
uta
Message:

2008/08/13 sync

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • rubricks_core/trunk/app/controllers/application.rb

    r5896 r5910  
    112112  def before_request 
    113113    RubricksLib.require_all 
     114    before_request_store_agent_data 
    114115    ::ApplicationControllerExtension.before_request 
    115116    before_request_fix_parameters 
     
    152153  end 
    153154 
    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 
    156156    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), 
    164158      :user_agent   => request.env['HTTP_USER_AGENT'], 
    165159    } 
    166160  end 
    167161 
     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 
    168168  def dispatch_exception(ex) 
     169    ex = ex.original_exception if ex.is_a?(::ActionView::TemplateError) && !ex.original_exception.nil? 
    169170    url, status, message = nil, 200, nil 
    170171    case ex 
  • rubricks_core/trunk/app/models/rubricks_config.rb

    r5744 r5910  
    2323        :site_maintenanced_at           => 20000101000000...20991231000000, 
    2424        :site_management_ignore_refresh => ['true', 'false'], 
     25        :site_multilingual              => ['true', 'false'], 
    2526        :site_name                      => 1..64, 
    2627        :site_proxy                     => 0..255, 
     
    4849      }, 
    4950      :disable_items => { 
     51        :site_default_page              => true, 
    5052        :site_enable_auto_login         => true, 
     53        :site_multilingual              => true, 
    5154        :site_switch_header             => true, 
    5255        :site_use_wysiwyg               => true, 
     
    231234    when 'site_default_language' 
    232235      raise RubricksError::Common::ValidateException unless RubricksConfig::CONFIGURATION[:data][:site_default_language].include?(self.value) 
     236    when 'site_default_page' 
    233237    when 'site_default_theme' 
    234238      raise RubricksError::Common::ValidateException unless RubricksConfig::CONFIGURATION[:data][:site_default_theme].call.include?(self.value) 
     
    241245    when 'site_management_ignore_refresh' 
    242246      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) 
    243249    when 'site_name' 
    244250      raise RubricksError::Common::ValidateException if self.value.blank? 
  • rubricks_core/trunk/app/models/rubricks_lib/character_set/chinese_character_set_convert.rb

    r5886 r5910  
    11module RubricksCharacterSetConvert 
    22  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 
    422  end 
    523 
    624  def convert_for_modern_browser(str) 
    7     Kconv::kconv(str, Kconv::UTF8) 
     25    return Kconv::kconv(str, Kconv::UTF8) 
    826  end 
    927 
    1028  def convert_mail_body(str) 
    11     str 
     29    return str 
    1230  end 
    1331 
    1432  def convert_mail_header(str) 
    15     str 
     33    return str 
    1634  end 
    1735end 
  • rubricks_core/trunk/app/models/rubricks_lib/character_set/english_character_set_convert.rb

    r5886 r5910  
    11module RubricksCharacterSetConvert 
    22  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 
    412  end 
    513 
  • rubricks_core/trunk/app/models/rubricks_lib/character_set/japanese_character_set_convert.rb

    r5886 r5910  
    11module RubricksCharacterSetConvert 
    22  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 
    422  end 
    523 
    624  def convert_for_modern_browser(str) 
    7     Kconv::kconv(str, Kconv::UTF8) 
     25    return Kconv::kconv(str, Kconv::UTF8) 
    826  end 
    927 
    1028  def convert_mail_body(str) 
    11     Kconv::kconv(str, Kconv::JIS) 
     29    return Kconv::kconv(str, Kconv::JIS) 
    1230  end 
    1331 
    1432  def convert_mail_header(str) 
    15     Kconv::kconv(str, Kconv::JIS) 
     33    return Kconv::kconv(str, Kconv::JIS) 
    1634  end 
    1735end 
  • rubricks_core/trunk/app/models/rubricks_schedule.rb

    r5781 r5910  
    55    def instance_from_hash(hash) 
    66      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 
    78      RubricksSchedule.new( 
    89        :id             => hash['sid'], 
    910        :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), 
    1112        :description    => hash['description'], 
    1213        :adapter        => hash['adapter'].to_i 
     
    2930 
    3031  def to_json 
    31     date = {:year => self.start.year, :month => self.start.month - 1, :day => self.start.day} 
    3232    { 
    3333      :id            => self.object_id, 
    3434      :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}
    3737      :description   => self.description, 
    3838      :adapter       => self.adapter, 
  • rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_base.rb

    r5728 r5910  
    22require_dependency 'action_view_attachment_helper' 
    33require_dependency 'action_view_form_tag_helper' 
     4require_dependency 'action_view_form_options_helper' 
    45require_dependency 'action_view_mobile_helper' 
    56require_dependency 'action_view_pagination_helper' 
  • rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_realtime_validator_helper.rb

    r5832 r5910  
    696696      end 
    697697 
     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 
    698708      def time_js(css_id, value) 
    699709        return if value.nil? 
  • rubricks_core/trunk/vendor/plugins/rubricks/lib/action_view_user_management_helper.rb

    r5901 r5910  
    66        limit ||= RubricksGroup::TREE_CHARACTER_LIMIT[tree_grade - 1] 
    77        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) 
    239      end 
    2410 
     
    3521          :variable     => 'rubricks.system.admin_user.variables.group_user_edit_window', 
    3622        } 
    37       end 
    38  
    39       def group_tree? 
    40         RubricksConfig.get('user_management_group_display') == 'treeview' 
    4123      end 
    4224 
     
    5941        }.merge(options) 
    6042        render :partial => '/system/user/group_select_window' 
    61       end 
    62  
    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">&nbsp;</span> 
    76               </div> 
    77               #{rollover_swap("#{options[:id_prefix]}show_group_#{hl(options[:parent].id)}_form")} 
    78               <br class="cl" /> 
    79             </div> 
    80           EOS 
    81           html += render(:partial => '/system/user/group_list_line', :locals => {:id => options[:parent].id, :content => content}) 
    82         end 
    83         rg_list.each do |rg| 
    84           content = '' 
    85           if rg.children.length != 0 
    86             children = rg.children.delete_if{|child| !child.effective} 
    87             if children.length != 0 
    88               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)});">&nbsp;</span> 
    91                 </div> 
    92                 #{rollover_swap("#{options[:id_prefix]}show_group_#{hl(rg.id)}_form")} 
    93               EOS 
    94             end 
    95           end 
    96           group     = '' 
    97           group    += %Q|[#{hl('[_Common_Deleted]')}] | unless rg.effective 
    98           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         end 
    103         return html 
    10443      end 
    10544 
  • 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' 
    31require_dependency 'active_support_core_ext_date_comparison' 
    42require_dependency 'active_support_core_ext_date_json' 
     
    1614  include ActiveSupport::CoreExtensions::String::Json 
    1715  include ActiveSupport::CoreExtensions::String::Rubricks 
    18 end 
    19  
    20 class Array 
    21   include ActiveSupport::CoreExtensions::Array::Flexible 
    2216end 
    2317 
  • rubricks_core/trunk/vendor/plugins/rubricks/lib/application_controller_extension.rb

    r5195 r5910  
    11class ApplicationControllerExtension 
    2   def self.before_request 
    3   end 
     2  class << self 
     3    def before_request 
     4    end 
    45 
    5   def self.cookie_path 
    6     ::ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS[:session_path] 
    7   end 
     6    def cookie_path 
     7      ::ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS[:session_path] 
     8    end 
    89 
    9   def self.rescue_action_as_redirect?(exception) 
    10     nil 
     10    def rescue_action_as_redirect?(exception) 
     11      nil 
     12    end 
    1113  end 
    1214end 
  • rubricks_core/trunk/vendor/plugins/rubricks/lib/class_extension.rb

    r4635 r5910  
    22  def long_scope_attr_reader(*syms) 
    33    syms = syms.first if syms.length == 1 && syms.first.is_a?(Hash) 
    4  
    54    syms.each do |sym, init_val| 
    65      next if sym.is_a?(Hash) 
    7  
    86      class_eval(<<-EOS, __FILE__, __LINE__) 
    97        unless defined? @@#{sym} 
     
    2018      EOS 
    2119    end 
    22   end # long_scope_attr_reader 
     20  end 
    2321 
    2422  def long_scope_attr_writer(*syms) 
    2523    options = {} 
    26  
    2724    if syms.length == 1 && syms.first.is_a?(Hash) 
    2825      syms = syms.first 
     
    3027      options = syms.pop 
    3128    end 
    32  
    33     syms.each do |sym,| # don't remove comma(,). 
     29    syms.each do |sym,| 
    3430      class_eval(<<-EOS, __FILE__, __LINE__) 
    3531        unless defined? @@#{sym} 
     
    4642      EOS 
    4743    end 
    48   end # long_scope_attr_writer 
     44  end 
    4945 
    5046  def long_scope_attr_accessor(*syms) 
     
    5248    long_scope_attr_writer(*syms) 
    5349  end 
    54 end # LongScoopAttrAccessor 
     50end 
    5551 
    5652class Class 
  • rubricks_core/trunk/vendor/plugins/rubricks/lib/rubricks_cron_init.rb

    r4554 r5910  
    11begin 
    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) 
     3rescue Exception => ex 
    64end