Sha256: 4c419783062d270a75ab99c17c86f4459298abac93ae10d6d407d1749c5919cd
Contents?: true
Size: 1.02 KB
Versions: 6
Compression:
Stored size: 1.02 KB
Contents
class Lolita::InfoController < ApplicationController @@properties = [] def index render :layout => false end def properties if request.local? render :inline => to_html else render :text => '<p>For security purposes, this information is only available to local requests.</p>', :status => :forbidden end end private def self.property(name, value = nil) value ||= yield @@properties << [name, value] if value rescue Exception end 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 property 'Lolita version', "#{LOLITA_VERSION}" end
Version data entries
6 entries across 6 versions & 1 rubygems