summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/models/node.rb4
-rw-r--r--app/models/page.rb11
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
63 draft 63 draft
64 elsif draft && self.lock_owner.nil? 64 elsif draft && self.lock_owner.nil?
65 lock_for! current_user 65 lock_for! current_user
66 draft.user = current_user 66 draft.user = current_user if draft.user.nil?
67 draft.save 67 draft.save
68 draft 68 draft
69 elsif draft && self.lock_owner != current_user 69 elsif draft && self.lock_owner != current_user
@@ -80,7 +80,7 @@ class Node < ActiveRecord::Base
80 80
81 def create_new_draft user 81 def create_new_draft user
82 empty_page = self.pages.create! 82 empty_page = self.pages.create!
83 empty_page.user = user unless (self.head && self.head.user) 83 empty_page.user = (self.head ? self.head.user : user)
84 empty_page.save 84 empty_page.save
85 85
86 empty_page.clone_attributes_from self.head 86 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
35 35
36 # Filter 36 # Filter
37 before_create :set_page_title 37 before_create :set_page_title
38 before_create :set_published_at
38 before_save :rewrite_links_in_body 39 before_save :rewrite_links_in_body
39 40
41 # Validations
42 validates_presence_of :published_at, :on => :update
43
40 # Security 44 # Security
41 attr_accessible :title, :abstract, :body, :template_name, :published_at, :user_id 45 attr_accessible :title, :abstract, :body, :template_name, :published_at, :user_id
42 46
@@ -126,7 +130,6 @@ class Page < ActiveRecord::Base
126 self.tag_list = page.tag_list 130 self.tag_list = page.tag_list
127 self.template_name = page.template_name 131 self.template_name = page.template_name
128 self.published_at = page.published_at 132 self.published_at = page.published_at
129 self.user = page.user
130 133
131 # Getting rid of the auto-generated empty translations 134 # Getting rid of the auto-generated empty translations
132 self.globalize_translations.delete_all 135 self.globalize_translations.delete_all
@@ -196,6 +199,12 @@ class Page < ActiveRecord::Base
196 end 199 end
197 end 200 end
198 201
202 def set_published_at
203 if self.published_at.nil?
204 self.published_at = Time.now
205 end
206 end
207
199 def rewrite_links_in_body 208 def rewrite_links_in_body
200 begin 209 begin
201 if self.body 210 if self.body