Add extra validation to messages and diary entries.
authorTom Hughes <tom@compton.nu>
Tue, 4 Sep 2007 14:05:13 +0000 (14:05 +0000)
committerTom Hughes <tom@compton.nu>
Tue, 4 Sep 2007 14:05:13 +0000 (14:05 +0000)
app/controllers/diary_entry_controller.rb
app/controllers/message_controller.rb
app/models/diary_entry.rb
app/models/message.rb

index 83fcb4aea8362119e88064271c56c51d23584405..e763dfd7225ef7eaff433ca618fbebe8773077ed 100644 (file)
@@ -7,9 +7,9 @@ class DiaryEntryController < ApplicationController
   def new
     @title = 'new diary entry'
     if params[:diary_entry]     
-      @entry = DiaryEntry.new(params[:diary_entry])
-      @entry.user = @user
-      if @entry.save 
+      @diary_entry = DiaryEntry.new(params[:diary_entry])
+      @diary_entry.user = @user
+      if @diary_entry.save 
         redirect_to :controller => 'diary_entry', :action => 'list', :display_name => @user.display_name 
       end
     end
index f52274cd06e2c5dad64e2bfdb0a8c2234d0afe0f..8521d76b3f5cf326604aac6b634e84ab1b411379 100644 (file)
@@ -7,23 +7,15 @@ class MessageController < ApplicationController
   def new
     @title = 'send message'
     if params[:message]
-      to_user = User.find(params[:user_id])
-      body = params[:message][:body]
-      title = params[:message][:title]
-      message = Message.new
-      message.body = body
-      message.title = title
-      message.to_user_id = params[:user_id]
-      message.from_user_id = @user.id
-      message.sent_on = Time.now
+      @message = Message.new(params[:message])
+      @message.to_user_id = params[:user_id]
+      @message.from_user_id = @user.id
+      @message.sent_on = Time.now
    
-      if message.save
+      if @message.save
         flash[:notice] = 'Message sent'
         redirect_to :controller => 'message', :action => 'inbox', :display_name => @user.display_name
-      else
-        @message.errors.add("Sending message failed")
       end
-
     end
   end
 
index ad334151c37f8eafc786b7a8fe9212c7d6ad523e..8894f44355cddb66feb936e40a3eb61e85ef2668 100644 (file)
@@ -1,3 +1,8 @@
 class DiaryEntry < ActiveRecord::Base
   belongs_to :user
+
+  validates_presence_of :title, :body
+  validates_numericality_of :latitude, :allow_nil => true
+  validates_numericality_of :longitude, :allow_nil => true
+  validates_associated :user
 end
index 039c8d30b9e3f31e2f0e4096eb84d57935dfa40c..97e411192b0df5cedbd89d7255f236ac7fb2cf35 100644 (file)
@@ -1,4 +1,8 @@
 class Message < ActiveRecord::Base
   belongs_to :sender, :class_name => "User", :foreign_key => :from_user_id
   belongs_to :recipient, :class_name => "User", :foreign_key => :to_user_id
+
+  validates_presence_of :title, :body, :sent_on
+  validates_inclusion_of :message_read, :in => [ true, false ]
+  validates_associated :sender, :recipient
 end