Sha256: 8a1a5ffce7a641065a5f822b9c370b701e6cb61b192c4297bee813233eaa2b86

Contents?: true

Size: 612 Bytes

Versions: 4

Compression:

Stored size: 612 Bytes

Contents

require 'orange-core/middleware/base'
module Orange::Middleware
  # This will load information about the site to into the orange env
  # - packet['site'] will be an instance of the site object
  # 
  class SiteLoad < Base    
    def packet_call(packet)
      url =  packet['route.site_url']
      site = Orange::Site.first(:url.like => url)
      if site
        packet['site'] = site
      else
        s = Orange::Site.new({:url => packet['route.site_url'], 
                              :name => 'An Orange Site'})
        s.save
        packet['site'] = s
      end
      pass packet
    end
  end
  
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
orange-0.1.2 lib/orange-more/administration/middleware/site_load.rb
orange-0.1.0 lib/orange-more/administration/middleware/site_load.rb
orange-0.0.15 lib/orange-more/administration/middleware/site_load.rb
orange-0.0.14 lib/orange-more/administration/middleware/site_load.rb