diff options
author | Joshua Peek <josh@joshpeek.com> | 2010-03-20 12:34:21 -0500 |
---|---|---|
committer | Joshua Peek <josh@joshpeek.com> | 2010-03-20 12:34:21 -0500 |
commit | f38e89cfbad6886a2812b1176e0c47b7d95cda43 (patch) | |
tree | deacf96a79eb778e4fa02c6ba89b96d856f86498 /railties/builtin/rails_info | |
parent | f868c2afa9190604015b6c5fd3bcc58371f03570 (diff) | |
download | rails-f38e89cfbad6886a2812b1176e0c47b7d95cda43.tar.gz rails-f38e89cfbad6886a2812b1176e0c47b7d95cda43.tar.bz2 rails-f38e89cfbad6886a2812b1176e0c47b7d95cda43.zip |
Move railties/builtin into lib
Diffstat (limited to 'railties/builtin/rails_info')
-rw-r--r-- | railties/builtin/rails_info/rails/info.rb | 147 | ||||
-rw-r--r-- | railties/builtin/rails_info/rails/info_controller.rb | 15 | ||||
-rw-r--r-- | railties/builtin/rails_info/rails/info_helper.rb | 2 |
3 files changed, 0 insertions, 164 deletions
diff --git a/railties/builtin/rails_info/rails/info.rb b/railties/builtin/rails_info/rails/info.rb deleted file mode 100644 index 5a496f6536..0000000000 --- a/railties/builtin/rails_info/rails/info.rb +++ /dev/null @@ -1,147 +0,0 @@ -require "active_support/core_ext/object/misc" -require "cgi" -require "active_support/core_ext/cgi" - -module Rails - module Info - mattr_accessor :properties - class << (@@properties = []) - def names - map {|val| val.first } - end - - def value_for(property_name) - if property = assoc(property_name) - property.last - end - end - end - - class << self #:nodoc: - def property(name, value = nil) - value ||= yield - properties << [name, value] if value - rescue Exception - end - - def frameworks - %w( active_record action_pack active_resource action_mailer active_support ) - end - - def framework_version(framework) - if Object.const_defined?(framework.classify) - require "#{framework}/version" - "#{framework.classify}::VERSION::STRING".constantize - end - end - - def edge_rails_revision(info = git_info) - info[/commit ([a-z0-9-]+)/, 1] || freeze_edge_version - end - - def freeze_edge_version - if File.exist?(rails_vendor_root) - begin - Dir[File.join(rails_vendor_root, 'REVISION_*')].first.scan(/_(\d+)$/).first.first - rescue - Dir[File.join(rails_vendor_root, 'TAG_*')].first.scan(/_(.+)$/).first.first rescue 'unknown' - end - end - end - - def to_s - column_width = properties.names.map {|name| name.length}.max - info = properties.map do |name, value| - value = value.join(", ") if value.is_a?(Array) - "%-#{column_width}s %s" % [name, value] - end - info.unshift "About your application's environment" - info * "\n" - end - - alias inspect to_s - - def to_html - (table = '<table>').tap do - properties.each do |(name, value)| - table << %(<tr><td class="name">#{CGI.escapeHTML(name.to_s)}</td>) - formatted_value = if value.kind_of?(Array) - "<ul>" + value.map { |v| "<li>#{CGI.escapeHTML(v.to_s)}</li>" }.join + "</ul>" - else - CGI.escapeHTML(value.to_s) - end - table << %(<td class="value">#{formatted_value}</td></tr>) - end - table << '</table>' - end - end - - protected - def rails_vendor_root - @rails_vendor_root ||= "#{Rails.root}/vendor/rails" - end - - def git_info - env_lang, ENV['LC_ALL'] = ENV['LC_ALL'], 'C' - Dir.chdir(rails_vendor_root) do - silence_stderr { `git log -n 1` } - end - ensure - ENV['LC_ALL'] = env_lang - end - end - - # The Ruby version and platform, e.g. "1.8.2 (powerpc-darwin8.2.0)". - property 'Ruby version', "#{RUBY_VERSION} (#{RUBY_PLATFORM})" - - # The RubyGems version, if it's installed. - property 'RubyGems version' do - Gem::RubyGemsVersion - end - - property 'Rack version' do - ::Rack.release - end - - # The Rails version. - property 'Rails version' do - Rails::VERSION::STRING - end - - # Versions of each Rails framework (Active Record, Action Pack, - # Active Resource, Action Mailer, and Active Support). - frameworks.each do |framework| - property "#{framework.titlecase} version" do - framework_version(framework) - end - end - - property 'Middleware' do - Rails.configuration.middleware.active.map(&:inspect) - end - - # The Rails Git revision, if it's checked out into vendor/rails. - property 'Edge Rails revision' do - edge_rails_revision - end - - # The application's location on the filesystem. - property 'Application root' do - File.expand_path(Rails.root) - end - - # The current Rails environment (development, test, or production). - property 'Environment' do - Rails.env - end - - # The name of the database adapter for the current environment. - property 'Database adapter' do - ActiveRecord::Base.configurations[Rails.env]['adapter'] - end - - property 'Database schema version' do - ActiveRecord::Migrator.current_version rescue nil - end - end -end diff --git a/railties/builtin/rails_info/rails/info_controller.rb b/railties/builtin/rails_info/rails/info_controller.rb deleted file mode 100644 index 196eeb4a6c..0000000000 --- a/railties/builtin/rails_info/rails/info_controller.rb +++ /dev/null @@ -1,15 +0,0 @@ -class Rails::InfoController < ActionController::Base - def properties - if consider_all_requests_local? || local_request? - render :inline => Rails::Info.to_html - else - render :text => '<p>For security purposes, this information is only available to local requests.</p>', :status => :forbidden - end - end - - protected - - def consider_all_requests_local? - Rails.application.config.consider_all_requests_local - end -end diff --git a/railties/builtin/rails_info/rails/info_helper.rb b/railties/builtin/rails_info/rails/info_helper.rb deleted file mode 100644 index e5605a8d9b..0000000000 --- a/railties/builtin/rails_info/rails/info_helper.rb +++ /dev/null @@ -1,2 +0,0 @@ -module Rails::InfoHelper -end |