class Udongo::Assets::Loader

Attributes

files[R]
view[RW]

Public Class Methods

new() click to toggle source
# File lib/udongo/assets/loader.rb, line 7
def initialize
  @files = []
end

Public Instance Methods

add(file) click to toggle source
# File lib/udongo/assets/loader.rb, line 11
def add(file)
  file = file.split('.js').first if file.include?('.js')
  file = file.split('.scss').first if file.include?('.scss')
  file = file.split('.css').first if file.include?('.css')
  @files.push file
end
exists?(file) click to toggle source
# File lib/udongo/assets/loader.rb, line 18
def exists?(file)
  @files.include?(file)
end
load_css(file, media = :screen) click to toggle source
# File lib/udongo/assets/loader.rb, line 22
def load_css(file, media = :screen)
  load_file(file, :stylesheets) { @view.stylesheet_link_tag(file, media: media) }
end
load_file(file, target) { |file| ... } click to toggle source
# File lib/udongo/assets/loader.rb, line 26
def load_file(file, target, &block)
  if block_given? && !exists?(file)
    add file
    @view.content_for(target) { yield file }
    return true
  end
  false
end
load_js(file, target = :javascripts) click to toggle source
# File lib/udongo/assets/loader.rb, line 35
def load_js(file, target = :javascripts)
  load_file(file, target) { @view.javascript_include_tag(file) }
end