diff options
| author | hukl <contact@smyck.org> | 2009-10-20 23:30:39 +0200 |
|---|---|---|
| committer | hukl <contact@smyck.org> | 2009-10-20 23:30:39 +0200 |
| commit | 20056a0e9b4f96680ca0c643166885f65dcd0be7 (patch) | |
| tree | a52396b8781ceacfbc33715d6b360a9bb32a77a7 /app/models | |
| parent | 8d8b530e2c9f5e2debb2d6abb421187c31733c34 (diff) | |
allow to overwrite the original user in edit view
Diffstat (limited to 'app/models')
| -rw-r--r-- | app/models/node.rb | 6 | ||||
| -rw-r--r-- | app/models/page.rb | 3 |
2 files changed, 7 insertions, 2 deletions
diff --git a/app/models/node.rb b/app/models/node.rb index db484f9..7a79594 100644 --- a/app/models/node.rb +++ b/app/models/node.rb | |||
| @@ -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 | 83 | empty_page.user = user unless (self.head && self.head.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 |
| @@ -159,6 +159,10 @@ class Node < ActiveRecord::Base | |||
| 159 | !children.empty? && !children.first.path_to_root.include?(self.slug) | 159 | !children.empty? && !children.first.path_to_root.include?(self.slug) |
| 160 | end | 160 | end |
| 161 | 161 | ||
| 162 | def head? | ||
| 163 | head_id | ||
| 164 | end | ||
| 165 | |||
| 162 | protected | 166 | protected |
| 163 | def lock_for! current_user | 167 | def lock_for! current_user |
| 164 | self.lock_owner = current_user | 168 | self.lock_owner = current_user |
diff --git a/app/models/page.rb b/app/models/page.rb index 29fcae6..8eeab53 100644 --- a/app/models/page.rb +++ b/app/models/page.rb | |||
| @@ -38,7 +38,7 @@ class Page < ActiveRecord::Base | |||
| 38 | before_save :rewrite_links_in_body | 38 | before_save :rewrite_links_in_body |
| 39 | 39 | ||
| 40 | # Security | 40 | # Security |
| 41 | attr_accessible :title, :abstract, :body, :template_name, :published_at | 41 | attr_accessible :title, :abstract, :body, :template_name, :published_at, :user_id |
| 42 | 42 | ||
| 43 | # Class Methods | 43 | # Class Methods |
| 44 | 44 | ||
| @@ -126,6 +126,7 @@ class Page < ActiveRecord::Base | |||
| 126 | self.tag_list = page.tag_list | 126 | self.tag_list = page.tag_list |
| 127 | self.template_name = page.template_name | 127 | self.template_name = page.template_name |
| 128 | self.published_at = page.published_at | 128 | self.published_at = page.published_at |
| 129 | self.user = page.user | ||
| 129 | 130 | ||
| 130 | # Getting rid of the auto-generated empty translations | 131 | # Getting rid of the auto-generated empty translations |
| 131 | self.globalize_translations.delete_all | 132 | self.globalize_translations.delete_all |
