From 0c2554a5a2c3aebf3e99d70fee2075a9b99f9abe Mon Sep 17 00:00:00 2001 From: gebele Date: Mon, 4 Mar 2013 10:28:02 +0100 Subject: first commit --- application.rb | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 application.rb (limited to 'application.rb') diff --git a/application.rb b/application.rb new file mode 100644 index 0000000..bd1985c --- /dev/null +++ b/application.rb @@ -0,0 +1,58 @@ +require 'rubygems' +require 'compass' #must be loaded before sinatra +require 'sinatra' +require 'haml' #must be loaded after sinatra +require 'opentox-client' +require 'opentox-server' +require File.join(File.dirname(__FILE__),'helper.rb') +require File.join(ENV["HOME"],".opentox","config","lazar-gui.rb") + + +get '/?' do + redirect to('/predict') +end + +get '/predict/?' do + @models = [] + models = OpenTox::Model.all $model[:uri] + models.each do |model| + model.get + @models << model + end + haml :predict +end + +post '/predict/?' do + @identifier = params[:identifier] + @compound = OpenTox::Compound.from_smiles $compound[:uri], @identifier.to_s + @models = [] + @predictions = [] + lazar = OpenTox::Algorithm.new File.join($algorithm[:uri],"lazar") + + params[:selection].each do |model| + @mselected = model[0] + @mall = OpenTox::Model.all $model[:uri] + @mall.each do |m| + m.get + @models << m if m.title.match("#{@mselected}") + end + end + @models.each do |m| + @prediction_uri = m.run :compound_uri => "#{@compound.uri}" + prediction = OpenTox::Dataset.new @prediction_uri + @predictions << prediction + end + + @prediction_results = [] + @predictions.each{|p| @prediction_results << p.get} + + + haml :prediction +end + +get '/stylesheets/:name.css' do + content_type 'text/css', :charset => 'utf-8' + sass(:"stylesheets/#{params[:name]}", Compass.sass_engine_options ) +end + + -- cgit v1.2.3