Sha256: 569aece75a36c209b5e59f18267a1446ac23b6539a92367be5b590b0db3e2c71
Contents?: true
Size: 1.36 KB
Versions: 1
Compression:
Stored size: 1.36 KB
Contents
require 'css_parser' module Caliber class CaliberController < Caliber::ApplicationController include ::CssParser layout 'caliber/application' before_filter :require_local! def index @css_selectors = [] Rails.application.assets.each_file do |pathname| next unless Rails.application.assets.content_type_of(pathname) == 'text/css' #next if @css_selectors.any? parser = CssParser::Parser.new begin link = Rails.application.assets[pathname].to_s parser.add_block! link selectors = parser.to_enum(:each_selector).map do |selectors, declarations, specificity, media_types| declarations = declarations.gsub ";", ";<br>" { pathname: pathname.to_s, selector: selectors, declarations: declarations, specificity: specificity, media_types: media_types } end @css_selectors.concat selectors rescue end end end private def require_local! unless local_request? render :text => '<p>For security purposes, this information is only available to local requests.</p>', :status => :forbidden end end def local_request? Rails.application.config.consider_all_requests_local || request.local? end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
caliber-0.0.2 | app/controllers/caliber/caliber_controller.rb |