Sha256: d3f414a24b716be1c3f2564cc08bdca1894ac8c0220829ec3b345b06b2b428a1

Contents?: true

Size: 1.66 KB

Versions: 9

Compression:

Stored size: 1.66 KB

Contents

gem "sinatra-compass"
require "sinatra/compass"

gem "compass-susy-plugin"
require "susy"

require "compass"
require "sinatra/base"
require "sinatra/sugar"
require "sinatra/advanced_routes"

module Caboodle
  class Susy < Caboodle::Kit
    description "Adds Susy CSS formatting"     
    get("/susy/:name.css") do
      content_type 'text/css', :charset => 'utf-8'
      sass_dir = File.expand_path(File.join(File.dirname(__FILE__),"views","susy"))
      load_paths = [App.root, File.join(App.root,"views"), File.join(App.root,"views","stylesheets"), sass_dir] + ::Compass.sass_engine_options[:load_paths]
      
      Kits.each do |name|
        kit_name = name.to_s.split("::").last || name
        kit_name = kit_name.downcase
        path = File.expand_path(File.join(File.dirname(__FILE__),"..",kit_name,"views"))
        load_paths << path
      end
      
      options = {:sass_dir => sass_dir, :syntax => :scss, :load_paths => load_paths}
      the_sass = open(File.join(File.dirname(__FILE__),"views","susy","screen.scss")).read
      
      Dir[File.join(Caboodle::App.root,"scss","*.scss")].map do |a| 
        SASS << a
      end
      
      imported_files = []
      SASS.each do |s|
        the_sass << "\n"
        add_file = "@import \"#{s}\";"
        imported_files << add_file
        the_sass << add_file
      end
      
      the_sass << "\n/* Generated from:"
      the_sass << load_paths.join("\n")
      the_sass << "\n"
      the_sass << imported_files.join("\n")
      the_sass << "*/"
      
      opts = options.merge!(::Compass.sass_engine_options)
      opts[:load_paths] = load_paths
      sass the_sass, opts
    end

    stylesheets ["/susy/screen.css"]

  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
caboodle-0.3.0 lib/caboodle/kits/susy/susy.rb
caboodle-0.2.30 lib/caboodle/kits/susy/susy.rb
caboodle-0.2.29 lib/caboodle/kits/susy/susy.rb
caboodle-0.2.28 lib/caboodle/kits/susy/susy.rb
caboodle-0.2.27 lib/caboodle/kits/susy/susy.rb
caboodle-0.2.26 lib/caboodle/kits/susy/susy.rb
caboodle-0.2.25 lib/caboodle/kits/susy/susy.rb
caboodle-0.2.24 lib/caboodle/kits/susy/susy.rb
caboodle-0.2.23 lib/caboodle/kits/susy/susy.rb