Sha256: 1173a293d850af1da75bf25592c13ef04f8f246cd3da6fde9bd580e0dfd80284
Contents?: true
Size: 1.24 KB
Versions: 13
Compression:
Stored size: 1.24 KB
Contents
require "rack/contrib" require "sinatra" require "sinatra/reloader" require "sass" require "almanack" module Almanack class Server < Sinatra::Base require "almanack/server/helpers" require "almanack/server/environment" include Almanack::ServerContext::Environment set :root, -> { Almanack.config.theme_root } set :protection, except: :frame_options set :feed_path, "feed" use Rack::JSONP configure :development do register Sinatra::Reloader end helpers do include Almanack::ServerContext::Helpers end before do register_sass_loadpaths! end not_found do status 404 erb :error end error do status 500 erb :error end get "/" do erb :events end get "/#{settings.feed_path}.ics" do content_type "text/calendar" Almanack.calendar.ical_feed end get "/#{settings.feed_path}.json" do content_type :json Almanack.calendar.json_feed end get "/stylesheets/:name" do content_type :css auto_render_asset params[:name], within: "stylesheets" end get "/javascripts/:name" do content_type :js auto_render_asset params[:name], within: "javascripts" end end end
Version data entries
13 entries across 13 versions & 1 rubygems