Module: AngularRailsEngine::ActionViewExtensions

Defined in:
lib/angular-rails-engine.rb

Constant Summary collapse

ANGULAR_VERSION =
'1.2.0'
OFFLINE =
(::Rails.env.development? or ::Rails.env.test?)
CDNS =
{
  :angular_js => {
    :default => "//ajax.googleapis.com/ajax/libs/angularjs/#{ANGULAR_VERSION}/angular.min.js"
  }
}

Instance Method Summary collapse

Instance Method Details

#angular_js_include_tag(name, options = {}) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/angular-rails-engine.rb', line 16

def angular_js_include_tag(name, options = {})
  options.reverse_merge! :local_copy => false

  angularjs = 'angular/angular'
  angularjs = angularjs+'.min' if options.delete(:compressed)

  if OFFLINE and !options.delete(:force)
    options.delete(:local_copy) # not used in OFFLINE mode
    return javascript_include_tag(angularjs, options)
  else
    local_copy = options.delete(:local_copy)
    j = [ javascript_include_tag(angular_js_url(name), options) ]
    if local_copy
      j << javascript_tag("window.angular || document.write(unescape('#{javascript_include_tag(angularjs, options).gsub('<','%3C')}'))")
    end
    j.join("\n").html_safe
  end
end

#angular_js_url(name) ⇒ Object



12
13
14
# File 'lib/angular-rails-engine.rb', line 12

def angular_js_url(name)
  return CDNS[:angular_js][name]
end