move coquelicot_app.rb to lib/coquelicot/app.rb
authorLunar <lunar@anargeek.net>
Mon, 13 Feb 2012 19:18:48 +0000 (20:18 +0100)
committerLunar <lunar@anargeek.net>
Tue, 14 Feb 2012 17:38:58 +0000 (18:38 +0100)
Rakefile
config-development.ru
config.ru
ext/coquelicot_gc.rb
lib/coquelicot.rb
lib/coquelicot/app.rb [moved from coquelicot_app.rb with 97% similarity]
lib/coquelicot/configure.rb
spec/coquelicot_spec.rb

index ead713a..0ec1c1b 100644 (file)
--- a/Rakefile
+++ b/Rakefile
@@ -6,7 +6,7 @@ task :updatepo do
   require 'haml_parser'
   GetText.update_pofiles(
     "coquelicot",
-    Dir.glob("views/**/*.{rb,haml}") << "coquelicot_app.rb",
+    Dir.glob("views/**/*.{rb,haml}") << "lib/coquelicot/app.rb",
     "coquelicot 1.0.0")
 end
 
index fe7989e..deaac5f 100644 (file)
@@ -1,4 +1,4 @@
-require 'coquelicot_app'
+require 'coquelicot'
 
 app = Coquelicot::Application
 
index 9e509cb..bd67848 100644 (file)
--- a/config.ru
+++ b/config.ru
@@ -1,3 +1,3 @@
-require 'coquelicot_app'
+require 'coquelicot'
 
 run Coquelicot::Application
index f4294b4..61f9a77 100755 (executable)
@@ -2,6 +2,6 @@
 
 $: << File.expand_path(File.join(File.dirname(__FILE__),'..','lib')) << File.expand_path(File.join(File.dirname(__FILE__),'..'))
 require 'bundler/setup'
-require 'coquelicot_app'
+require 'coquelicot'
 
 Coquelicot::Depot.new(Coquelicot.settings.depot_path).gc!
index 0b4ed7b..0559ecd 100644 (file)
@@ -3,6 +3,10 @@ require 'lockfile'
 require 'openssl'
 require 'yaml'
 
+require 'coquelicot/auth'
+require 'coquelicot/configure'
+require 'coquelicot/app'
+
 module Coquelicot
   class BadKey < StandardError; end
 
similarity index 97%
rename from coquelicot_app.rb
rename to lib/coquelicot/app.rb
index feff911..ffda7c8 100644 (file)
@@ -1,13 +1,8 @@
-$:.unshift File.join(File.dirname(__FILE__), 'lib')
-
 require 'sinatra/base'
 require 'haml'
 require 'sass'
 require 'digest/sha1'
 require 'gettext'
-require 'coquelicot'
-require 'coquelicot/auth'
-require 'coquelicot/configure'
 require 'haml_gettext'
 
 module Coquelicot
@@ -51,7 +46,7 @@ module Coquelicot
   end
 
   class Application < Sinatra::Base
-    set :app_file, __FILE__
+    set :root, Proc.new { app_file && File.expand_path('../../..', app_file) }
     include Coquelicot::Configure
 
     GetText::bindtextdomain('coquelicot')
index c687ece..665e9d7 100644 (file)
@@ -1,50 +1,52 @@
-module Coquelicot::Configure
-  def self.included(c)
-    c.extend ClassMethods
-    c.configure
-  end
-
-  module ClassMethods
-    def configure
-      user_settings = load_user_settings if File.exists?(settings_path)
-      merged_settings = default_settings.merge(user_settings || {})
-      merged_settings.each { |k,v| set k,v }
+module Coquelicot
+  module Configure
+    def self.included(c)
+      c.extend ClassMethods
+      c.configure
     end
 
-    def authentication_method=(options)
-      method = options.delete('name') || options.delete(:name)
-      method = method.to_s if method.is_a? Symbol
-      require "coquelicot/auth/#{method}"
-      set :authenticator, Coquelicot::Auth.
-         const_get("#{method.to_s.capitalize}Authenticator").new(self)
-      options.each{|k,v| set k,v }
-    end
+    module ClassMethods
+      def configure
+        user_settings = load_user_settings if File.exists?(settings_path)
+        merged_settings = default_settings.merge(user_settings || {})
+        merged_settings.each { |k,v| set k,v }
+      end
 
-  private
+      def authentication_method=(options)
+        method = options.delete('name') || options.delete(:name)
+        method = method.to_s if method.is_a? Symbol
+        require "coquelicot/auth/#{method}"
+        set :authenticator, Coquelicot::Auth.
+           const_get("#{method.to_s.capitalize}Authenticator").new(self)
+        options.each{|k,v| set k,v }
+      end
 
-    def default_settings
-      {
-        'default_expire' => 60,
-        'maximum_expire' => 60 * 24 * 30, # 1 month
-        'gone_period' => 10080,
-        'filename_length' => 20,
-        'random_pass_length' => 16,
-        'about_text' => '',
-        'additional_css' => '',
-        'depot_path' => Proc.new { File.join(root, 'files') },
-        'authentication_method' => {
-          'name' => 'simplepass',
-          'upload_password' => 'a94a8fe5ccb19ba61c4c0873d391e987982fbbd3'
-        },
-      }
-    end
+    private
 
-    def settings_path
-      @settings_path ||= File.join(File.dirname(__FILE__),'..','..','conf','settings.yml')
-    end
+      def default_settings
+        {
+          'default_expire' => 60,
+          'maximum_expire' => 60 * 24 * 30, # 1 month
+          'gone_period' => 10080,
+          'filename_length' => 20,
+          'random_pass_length' => 16,
+          'about_text' => '',
+          'additional_css' => '',
+          'depot_path' => Proc.new { File.join(root, 'files') },
+          'authentication_method' => {
+            'name' => 'simplepass',
+            'upload_password' => 'a94a8fe5ccb19ba61c4c0873d391e987982fbbd3'
+          },
+        }
+      end
+
+      def settings_path
+        @settings_path ||= File.join(File.dirname(__FILE__),'..','..','conf','settings.yml')
+      end
 
-    def load_user_settings
-      YAML.load(File.read(settings_path))
+      def load_user_settings
+        YAML.load(File.read(settings_path))
+      end
     end
   end
 end
index 2fc7485..839f9de 100644 (file)
@@ -10,7 +10,7 @@ require 'timecop'
 require 'hpricot'
 require 'tmpdir'
 
-require 'coquelicot_app'
+require 'coquelicot'
 
 UPLOAD_PASSWORD = 'secret'