Sha256: 3c2f9beba12041c150bf93f178f128ab28b5aa9bf147cad56312e6f3a2ea6184

Contents?: true

Size: 935 Bytes

Versions: 77

Compression:

Stored size: 935 Bytes

Contents

# frozen_string_literal: true

require 'haml'
require 'yaml'
require 'sinatra/base'
require 'sinatra/reloader'
require 'onebox'
require 'onebox/web_helpers'
require 'multi_json'

module Onebox
  class Web < Sinatra::Base
    set :root, File.expand_path(File.dirname(__FILE__) + "/../../web")
    set :public_folder, Proc.new { "#{root}/assets" }
    set :views, Proc.new { "#{root}/views" }
    configure :development do
      register Sinatra::Reloader
      also_reload 'lib/**/*.rb'
      enable :logging
    end

    helpers WebHelpers

    get '/' do
      haml :index, format: :html5
    end

    get '/onebox' do
      content_type :json
      result = {
          url: params[:url],
          engine: Onebox::Matcher.new(params[:url]).oneboxed.to_s
      }
      onebox = Onebox.preview(params[:url])
      result.merge!(onebox: onebox.to_s, placeholder: onebox.placeholder_html)
      MultiJson.dump(result)
    end
  end
end

Version data entries

77 entries across 77 versions & 1 rubygems

Version Path
onebox-1.9.6 lib/onebox/web.rb
onebox-1.9.5 lib/onebox/web.rb
onebox-1.9.4 lib/onebox/web.rb
onebox-1.9.3 lib/onebox/web.rb
onebox-1.9.2 lib/onebox/web.rb
onebox-1.9.1 lib/onebox/web.rb
onebox-1.9.0 lib/onebox/web.rb
onebox-1.8.99 lib/onebox/web.rb
onebox-1.8.98 lib/onebox/web.rb
onebox-1.8.97 lib/onebox/web.rb
onebox-1.8.96 lib/onebox/web.rb
onebox-1.8.95 lib/onebox/web.rb
onebox-1.8.94 lib/onebox/web.rb
onebox-1.8.93 lib/onebox/web.rb
onebox-1.8.92 lib/onebox/web.rb
onebox-1.8.91 lib/onebox/web.rb
onebox-1.8.90 lib/onebox/web.rb