lib/copy/server.rb in copy-0.0.41 vs lib/copy/server.rb in copy-0.1.0

- old
+ new

@@ -7,10 +7,13 @@ set :views, './views' set :public, './public' set :root, File.dirname(File.expand_path(__FILE__)) helpers do + include Rack::Utils + alias_method :h, :escape_html + def protected! unless authorized? response['WWW-Authenticate'] = %(Basic realm="Copy Admin Area") throw(:halt, [401, "Not authorized\n"]) end @@ -66,10 +69,16 @@ end # Append the output buffer. @_out_buf << format_text(name, content, options) end + + def partial(template) + template_array = template.to_s.split('/') + template = template_array[0..-2].join('/') + "/_#{template_array[-1]}.#{@_route.format}" + send(@_route.renderer, template.to_sym, :layout => false) + end end def self.config(&block) class_eval(&block) end @@ -103,14 +112,14 @@ Copy::Storage.set(params[:name], params[:content]) format_text(params[:name], Copy::Storage.get(params[:name]), :wrap_tag => params[:wrap_tag]) end get '*' do - route = Copy::Router.new(params[:splat].first, settings.views) - if route.success? + @_route = Copy::Router.new(params[:splat].first, settings.views) + if @_route.success? set_cache_control_header - content_type(route.format) - send(route.renderer, route.template, :layout => route.layout) + content_type(@_route.format) + send(@_route.renderer, @_route.template, :layout => @_route.layout) else not_found end end end \ No newline at end of file