summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorhukl <contact@smyck.org>2009-10-20 23:30:39 +0200
committerhukl <contact@smyck.org>2009-10-20 23:30:39 +0200
commit20056a0e9b4f96680ca0c643166885f65dcd0be7 (patch)
treea52396b8781ceacfbc33715d6b360a9bb32a77a7 /app
parent8d8b530e2c9f5e2debb2d6abb421187c31733c34 (diff)
allow to overwrite the original user in edit view
Diffstat (limited to 'app')
-rw-r--r--app/helpers/nodes_helper.rb3
-rw-r--r--app/models/node.rb6
-rw-r--r--app/models/page.rb3
-rw-r--r--app/views/nodes/edit.html.erb4
4 files changed, 14 insertions, 2 deletions
diff --git a/app/helpers/nodes_helper.rb b/app/helpers/nodes_helper.rb
index 79e75dc..d889719 100644
--- a/app/helpers/nodes_helper.rb
+++ b/app/helpers/nodes_helper.rb
@@ -21,6 +21,9 @@ module NodesHelper
21 Page.custom_templates.map {|x| [x.gsub("_", " ").titlecase, x]} 21 Page.custom_templates.map {|x| [x.gsub("_", " ").titlecase, x]}
22 end 22 end
23 23
24 def user_list
25 User.all.map {|u| [u.login, u.id]}
26 end
24 27
25 def event_information 28 def event_information
26 if @node.event 29 if @node.event
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
diff --git a/app/views/nodes/edit.html.erb b/app/views/nodes/edit.html.erb
index 0063dd9..8e27d0f 100644
--- a/app/views/nodes/edit.html.erb
+++ b/app/views/nodes/edit.html.erb
@@ -55,6 +55,10 @@
55 <td><%= d.select :template_name, custom_page_templates, {:prompt => 'Select Template'} %></td> 55 <td><%= d.select :template_name, custom_page_templates, {:prompt => 'Select Template'} %></td>
56 </tr> 56 </tr>
57 <tr> 57 <tr>
58 <td class="description">Author</td>
59 <td><%= d.select :user_id, user_list %></td>
60 </tr>
61 <tr>
58 <td class="description">Images</td> 62 <td class="description">Images</td>
59 <td> 63 <td>
60 <ul id="image_box" rel="<%= @draft.id %>"> 64 <ul id="image_box" rel="<%= @draft.id %>">