diff options
| -rw-r--r-- | app/controllers/inboxes/discussions_controller.rb | 4 | ||||
| -rw-r--r-- | app/controllers/inboxes/inboxes_settings_controller.rb | 8 | ||||
| -rw-r--r-- | app/models/inboxes_setting.rb | 5 | ||||
| -rw-r--r-- | config/routes.rb | 5 | ||||
| -rw-r--r-- | lib/generators/inboxes/templates/install.rb | 8 | 
5 files changed, 30 insertions, 0 deletions
| diff --git a/app/controllers/inboxes/discussions_controller.rb b/app/controllers/inboxes/discussions_controller.rb index d23f5a5..13dae3d 100644 --- a/app/controllers/inboxes/discussions_controller.rb +++ b/app/controllers/inboxes/discussions_controller.rb @@ -39,6 +39,10 @@ class Inboxes::DiscussionsController < Inboxes::BaseController        render :action => "new"      end    end +   +  def settings +    @settings = InboxesSetting.find_or_create_by_user_id(current_user) +  end    private diff --git a/app/controllers/inboxes/inboxes_settings_controller.rb b/app/controllers/inboxes/inboxes_settings_controller.rb new file mode 100644 index 0000000..6851791 --- /dev/null +++ b/app/controllers/inboxes/inboxes_settings_controller.rb @@ -0,0 +1,8 @@ +class Inboxes::InboxesSettingsController < Inboxes::BaseController +  def update +    @settings = InboxesSetting.find_or_create_by_user_id(current_user) +    @settings.update_attributes(:send_email_notification => params[:inboxes_setting][:send_email_notification]) +     +    redirect_to '/discussions/settings' +  end +end diff --git a/app/models/inboxes_setting.rb b/app/models/inboxes_setting.rb new file mode 100644 index 0000000..1581131 --- /dev/null +++ b/app/models/inboxes_setting.rb @@ -0,0 +1,5 @@ +class InboxesSetting < ActiveRecord::Base +   +  attr_accessible :send_email_notification + +end diff --git a/config/routes.rb b/config/routes.rb index 3ecb989..a23ed52 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,5 +1,10 @@  Rails.application.routes.draw do +  scope :module => :inboxes do +    match '/discussions/settings' => 'discussions#settings' +    resources :inboxes_settings, :only => [:update] +  end +      resources :discussions, :except => :edit, :module => :inboxes do      resources :messages, :only => [:create, :index]      resources :speakers, :only => [:create, :destroy] diff --git a/lib/generators/inboxes/templates/install.rb b/lib/generators/inboxes/templates/install.rb index 472cd95..18a8a6c 100644 --- a/lib/generators/inboxes/templates/install.rb +++ b/lib/generators/inboxes/templates/install.rb @@ -20,11 +20,19 @@ class InstallInboxes < ActiveRecord::Migration        t.timestamps      end +     +    create_table :inboxes_settings do |t| +      t.references :user +      t.boolean :send_email_notification, :default => 1 +       +      t.timestamps +    end    end    def self.down      drop_table :speakers      drop_table :discussions      drop_table :messages +    drop_table :inboxes_settings    end  end | 
