Sha256: cabbe8e4bedcec3d9dc8700e31e17bd4b1a15b65e0f23d414e868f9298173114

Contents?: true

Size: 1.19 KB

Versions: 4

Compression:

Stored size: 1.19 KB

Contents

#!/usr/bin/env ruby
# -*- coding: utf-8 -*-

require 'sinatra'
require 'haml'
require 'base64'
require './helpers/helpers'
require './lib/rsyntaxtree'

include Helpers

# set :public_folder, File.dirname(__FILE__) + '/public'

configure do
  enable :sessions
end

get '/' do #
  haml :index
end

post '/check' do                        
  data = params["data"]
  result = RSGenerator.check_data(data)
  return result ? "true" : "false"
end

get '/draw_png' do
  rs_generator = RSGenerator.new(params)
  content_type "image/png"
  rs_generator.draw_tree
end

post '/draw_png' do  
  basename = "syntree.png"
  rs_generator = RSGenerator.new(params)
  png_blob = rs_generator.draw_png
  response.headers['content_type'] = "image/png"
  response.headers['content_length'] = png_blob.size.to_s
  response.headers['content_disposition'] = "inline" + %(; filename="#{basename}")
  Base64.encode64(png_blob)
end

post '/download_svg' do
  content_type 'image/svg+xml'
  attachment 'syntree.svg'
  rs_generator = RSGenerator.new(params)
  rs_generator.draw_svg
end  

post '/download_pdf' do
  content_type 'applcation/pdf'
  attachment 'syntree.pdf'
  rs_generator = RSGenerator.new(params)
  rs_generator.draw_pdf
end  

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rsyntaxtree-0.6.92 app.rb
rsyntaxtree-0.6.91 app.rb
rsyntaxtree-0.6.7 app.rb
rsyntaxtree-0.6.6 app.rb