Class: Magickly::App

Inherits:
Sinatra::Base
  • Object
show all
Defined in:
lib/magickly/app.rb

Direct Known Subclasses

MagicklyApp

Constant Summary collapse

RESERVED_PARAMS =
['src']
DEMO_IMAGE =
'http://farm4.static.flickr.com/3351/3450592233_c29fde01ef_z.jpg'

Instance Method Summary collapse

Instance Method Details

#process_src_or_display_demo(src, options) ⇒ Object



81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/magickly/app.rb', line 81

def process_src_or_display_demo src, options
  if src
    # process image
    url = uri_to_url src
    image = Magickly.process_src(url, options)
    image.to_response(env)
  else
    # display demo page
    
    # get combined list of jobs and processor methods
    @methods = ( Magickly.dragonfly.job_methods | Magickly.dragonfly.processor_methods )
    @methods.sort!{|m1, m2| m1.to_s <=> m2.to_s }
    erb :index
  end
end

#uri_to_url(uri) ⇒ Object



97
98
99
100
101
# File 'lib/magickly/app.rb', line 97

def uri_to_url(uri)
  url = Addressable::URI.parse(uri)
  url.site ||= Addressable::URI.parse(request.url).site
  url.to_s
end