# RMceUploader rack middleware app #unless defined? RMceUploadr RACK_ENV = ENV["RACK_ENV"] || ENV["RAILS_ENV"] || "development" unless defined? RACK_ENV RMCE_ROOT_DIR = File.expand_path(File.dirname(__FILE__)) # returns a path related to where this file is directory def rmce_uploadr_root_path(*args) File.join(RMCE_ROOT_DIR, *args) end require 'rubygems' # database backend require 'active_record' # image procesing require 'paperclip' # XML serialization # require 'builder' # support for openId memcache store # require 'system_timer' # fast timeout library for memcache # require 'memcache' # rack add-ons #require 'rack-flash' # base of this whole app require 'sinatra/base' # respond_to blocks #require 'sinatra/respond_to' # a hack to make missing templates render 404 instead of 500 # module DisiCloudMedia; module RespondTo; class MissingTemplate < Sinatra::NotFound # def code; 404 end # end; end; end # database connection stuff module RMceUploadr # Establishes a connection pool for RMceUploadr::Image # # Expects a config/database.yml (as in Rails) # database config file or directly a hash in the format of # ActiveRecord::Base#establish_connection def self.dbconf=(filename_or_hash) dbconf = filename_or_hash.kind_of?(Hash) ? filename_or_hash : YAML.load_file(filename)[environment] RMceUploadr::Image.establish_connection(dbconf) RMceUploadr::Image.logger = Logger.new(STDOUT) end end # some core extensions require rmce_uploadr_root_path('rmce_uploadr', 'core', 'ext') # load app module. it'll load up everything else require rmce_uploadr_root_path('rmce_uploadr', 'app', 'app') # this is to run the app with "ruby rmce_uploadr.rb" # don't need for a rackup though. RMceUploadr::App.run! if RMceUploadr::App.run? #end # unless defined? RMceUploadr