OT_LOGO = File.join(CONFIG[:services]["opentox-validation"],"resources/ot-logo.png") class String # encloses URI in text with with link tag # @return [String] new text with marked links def link_urls self.gsub(/(?i)http(s?):\/\/[^\r\n\s']*/, '\0') end end module OpenTox # produces a html page for making web services browser friendly # format of text (=string params) is preserved (e.g. line breaks) # urls are marked as links # # @param [String] text this is the actual content, # @param [optional,String] related_links info on related resources # @param [optional,String] description general info # @param [optional,Array] post_command, infos for the post operation, object defined below # @return [String] html page def self.text_to_html( text, subjectid=nil, related_links=nil, description=nil, post_command=nil ) # TODO add title as parameter title = nil #$sinatra.url_for($sinatra.request.env['PATH_INFO'], :full) if $sinatra html = "" html += "
" end html += "" unless user html += "You are currently not signed in to "+$url_provider.request.host.to_s+ ", sign in" else html += "You are signed in as '#{user}' to "+$url_provider.request.host.to_s+ ", sign out" end html += "
" if description html += ""+description.link_urls+"
" if related_links if post_command raise "not a post command" unless post_command.is_a?(OpenTox::PostCommand) html += ""+related_links.link_urls+"
" html end def self.sign_in( msg=nil ) html = "" html += text.link_urls html += "