Class: OembedProviderEngine::OembedProviderController
- Inherits:
-
ApplicationController
- Object
- ApplicationController
- ApplicationController
- OembedProviderEngine::OembedProviderController
- Defined in:
- app/controllers/oembed_provider_engine/oembed_provider_controller.rb
Instance Method Summary collapse
-
#endpoint ⇒ Object
GET /oembed?url=…
Instance Method Details
#endpoint ⇒ Object
GET /oembed?url=… json by default GET /oembed.json?url=… GET /oembed.json?url=…&callback=myCallback GET /oembed.xml?url=…
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'app/controllers/oembed_provider_engine/oembed_provider_controller.rb', line 11 def endpoint # get object that we want an oembed_response from # based on url # and get its oembed_response media_item = ::OembedProviderEngine::OembedProvider.find_provided_from(params[:url]) = Hash.new max_dimensions = [:maxwidth, :maxheight] unless media_item.class::OembedResponse. == :link max_dimensions.each { |dimension| [dimension] = params[dimension] if params[dimension].present? } end @oembed_response = media_item.() # to_xml and to_json overidden in oembed_providable module # to be properly formatted # TODO: handle unauthorized case respond_to do |format| if @oembed_response format.html { render_json @oembed_response.to_json } # return json for default format.json { render_json @oembed_response.to_json } format.xml { render :xml => @oembed_response } else format.all { render_404 } end end end |