diff --git a/README.md b/README.md index 4353679..d2390f9 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,9 @@ Installation settings.email_prefix = '[FEEDBACKER]' # default value end +9. Mount the engine in config/routes.rb + mount Feedbacker::Engine, at: '/' Contributions ------------- diff --git a/app/controllers/remarks_controller.rb b/app/controllers/remarks_controller.rb index f235bf9..0944a01 100644 --- a/app/controllers/remarks_controller.rb +++ b/app/controllers/remarks_controller.rb @@ -1,3 +1,5 @@ -class RemarksController < ::ApplicationController - include Feedbacker::RemarksControllerMethods -end \ No newline at end of file +module Feedbacker + class RemarksController < ::ApplicationController + include Feedbacker::RemarksControllerMethods + end +end diff --git a/app/mailers/feedback_mailer.rb b/app/mailers/feedback_mailer.rb index 9981b35..951abd3 100644 --- a/app/mailers/feedback_mailer.rb +++ b/app/mailers/feedback_mailer.rb @@ -1,11 +1,13 @@ -class FeedbackMailer < ActionMailer::Base - def feedback(remark) - @remark = remark - mail( - to: Feedbacker::SETTINGS.email_to, - from: Feedbacker::SETTINGS.email_to, - reply_to: remark.user.email, - subject: "#{Feedbacker::SETTINGS.email_prefix} Feedback Notification" - ) +module Feedbacker + class FeedbackMailer < ActionMailer::Base + def feedback(remark) + @remark = remark + mail( + to: Feedbacker::SETTINGS.email_to, + from: Feedbacker::SETTINGS.email_to, + reply_to: remark.user.email, + subject: "#{Feedbacker::SETTINGS.email_prefix} Feedback Notification" + ) + end end end diff --git a/app/models/remark.rb b/app/models/remark.rb index 2421807..600558c 100644 --- a/app/models/remark.rb +++ b/app/models/remark.rb @@ -1,3 +1,5 @@ -class Remark < ActiveRecord::Base - include Feedbacker::RemarkMethods +module Feedbacker + class Remark < ActiveRecord::Base + include Feedbacker::RemarkMethods + end end diff --git a/app/views/remarks/_form.html.erb b/app/views/feedbacker/remarks/_form.html.erb similarity index 83% rename from app/views/remarks/_form.html.erb rename to app/views/feedbacker/remarks/_form.html.erb index 5cff103..f5acea2 100644 --- a/app/views/remarks/_form.html.erb +++ b/app/views/feedbacker/remarks/_form.html.erb @@ -1,6 +1,6 @@ -<%= form_for @remark, :remote => true do |f| %> +<%= form_for [feedbacker, @remark], :remote => true do |f| %>

<%= f.text_area :content %>
<%= f.submit 'Submit Feedback' %> <%= link_to 'Cancel', '#', :class => 'toggle_feedback' %>
-<% end %> \ No newline at end of file +<% end %> diff --git a/app/views/remarks/_greeting.html.erb b/app/views/feedbacker/remarks/_greeting.html.erb similarity index 100% rename from app/views/remarks/_greeting.html.erb rename to app/views/feedbacker/remarks/_greeting.html.erb diff --git a/app/views/remarks/create.js.erb b/app/views/feedbacker/remarks/create.js.erb similarity index 100% rename from app/views/remarks/create.js.erb rename to app/views/feedbacker/remarks/create.js.erb diff --git a/config/routes.rb b/config/routes.rb index 51447f5..5febab8 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,3 +1,3 @@ -Rails.application.routes.draw do +Feedbacker::Engine.routes.draw do resources :remarks, :only => [:create] -end \ No newline at end of file +end diff --git a/lib/feedbacker.rb b/lib/feedbacker.rb index 5ab8056..ec01555 100644 --- a/lib/feedbacker.rb +++ b/lib/feedbacker.rb @@ -1,10 +1,4 @@ -Dir[File.join(File.dirname(__FILE__), '/feedbacker/*.rb')].each {|file| require file } +require 'feedbacker/engine' module Feedbacker - class Engine < ::Rails::Engine - config.active_record.observers = :remark_observer - rake_tasks do - Dir[File.join(File.dirname(__FILE__),'tasks/*.rake')].each { |f| load f } - end - end end diff --git a/lib/feedbacker/engine.rb b/lib/feedbacker/engine.rb new file mode 100644 index 0000000..430d2a3 --- /dev/null +++ b/lib/feedbacker/engine.rb @@ -0,0 +1,17 @@ +Dir[File.join(File.dirname(__FILE__), '*.rb')].each { |f| require f } + +module Feedbacker + class Engine < Rails::Engine + isolate_namespace Feedbacker + + config.active_record.observers = :remark_observer + + rake_tasks do + Dir[File.join(File.dirname(__FILE__),'tasks/*.rake')].each { |f| load f } + end + + initializer "feedbacker.assets.precompile" do |app| + app.config.assets.precompile += %w(feedbacker.js feedbacker.css) + end + end +end