From 258ae60ca970629218447a5e1f5903fc80c8b6ee Mon Sep 17 00:00:00 2001 From: hukl Date: Mon, 2 Nov 2009 22:18:49 +0100 Subject: make sure user and published_at stay the same --- app/models/node.rb | 4 ++-- app/models/page.rb | 11 ++++++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/app/models/node.rb b/app/models/node.rb index 7a79594..44e6c47 100644 --- a/app/models/node.rb +++ b/app/models/node.rb @@ -63,7 +63,7 @@ class Node < ActiveRecord::Base draft elsif draft && self.lock_owner.nil? lock_for! current_user - draft.user = current_user + draft.user = current_user if draft.user.nil? draft.save draft elsif draft && self.lock_owner != current_user @@ -80,7 +80,7 @@ class Node < ActiveRecord::Base def create_new_draft user empty_page = self.pages.create! - empty_page.user = user unless (self.head && self.head.user) + empty_page.user = (self.head ? self.head.user : user) empty_page.save empty_page.clone_attributes_from self.head diff --git a/app/models/page.rb b/app/models/page.rb index 24c3ef2..56e1692 100644 --- a/app/models/page.rb +++ b/app/models/page.rb @@ -35,8 +35,12 @@ class Page < ActiveRecord::Base # Filter before_create :set_page_title + before_create :set_published_at before_save :rewrite_links_in_body + # Validations + validates_presence_of :published_at, :on => :update + # Security attr_accessible :title, :abstract, :body, :template_name, :published_at, :user_id @@ -126,7 +130,6 @@ class Page < ActiveRecord::Base self.tag_list = page.tag_list self.template_name = page.template_name self.published_at = page.published_at - self.user = page.user # Getting rid of the auto-generated empty translations self.globalize_translations.delete_all @@ -196,6 +199,12 @@ class Page < ActiveRecord::Base end end + def set_published_at + if self.published_at.nil? + self.published_at = Time.now + end + end + def rewrite_links_in_body begin if self.body -- cgit v1.3