fixes #989
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
class WikiPage < ActiveRecord::Base
|
class WikiPage < ActiveRecord::Base
|
||||||
before_save :normalize_title
|
before_save :normalize_title
|
||||||
before_create :initialize_creator
|
before_validation :initialize_creator, :on => :create
|
||||||
|
before_validation :initialize_updater
|
||||||
after_save :create_version
|
after_save :create_version
|
||||||
belongs_to :creator, :class_name => "User"
|
belongs_to :creator, :class_name => "User"
|
||||||
validates_uniqueness_of :title, :case_sensitive => false
|
validates_uniqueness_of :title, :case_sensitive => false
|
||||||
@@ -126,10 +127,18 @@ class WikiPage < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def updater_name
|
||||||
|
User.id_to_name(updater_id)
|
||||||
|
end
|
||||||
|
|
||||||
def initialize_creator
|
def initialize_creator
|
||||||
self.creator_id = CurrentUser.user.id
|
self.creator_id = CurrentUser.user.id
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def initialize_updater
|
||||||
|
self.updater_id = CurrentUser.user.id
|
||||||
|
end
|
||||||
|
|
||||||
def post_set
|
def post_set
|
||||||
@post_set ||= PostSets::WikiPage.new(title, 1, 4)
|
@post_set ||= PostSets::WikiPage.new(title, 1, 4)
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
<% @wiki_pages.each do |wiki_page| %>
|
<% @wiki_pages.each do |wiki_page| %>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="tag-category-<%= wiki_page.category_name %>"><%= link_to wiki_page.pretty_title, wiki_page_path(wiki_page, :noredirect => 1) %></td>
|
<td class="tag-category-<%= wiki_page.category_name %>"><%= link_to wiki_page.pretty_title, wiki_page_path(wiki_page, :noredirect => 1) %></td>
|
||||||
<td><%= wiki_page.updated_at.strftime("%Y-%m-%d %I:%M") %> by <%= h link_to wiki_page.creator.name, user_path(wiki_page.creator) %></td>
|
<td><%= wiki_page.updated_at.strftime("%Y-%m-%d %I:%M") %> by <%= h link_to wiki_page.updater_name, user_path(wiki_page.updater_id) %></td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
class AddUpdaterIdToWikiPages < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
add_column :wiki_pages, :updater_id, :integer
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -2672,7 +2672,8 @@ CREATE TABLE wiki_pages (
|
|||||||
body_index tsvector NOT NULL,
|
body_index tsvector NOT NULL,
|
||||||
is_locked boolean DEFAULT false NOT NULL,
|
is_locked boolean DEFAULT false NOT NULL,
|
||||||
created_at timestamp without time zone NOT NULL,
|
created_at timestamp without time zone NOT NULL,
|
||||||
updated_at timestamp without time zone NOT NULL
|
updated_at timestamp without time zone NOT NULL,
|
||||||
|
updater_id integer
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
@@ -6259,3 +6260,5 @@ INSERT INTO schema_migrations (version) VALUES ('20130318030619');
|
|||||||
INSERT INTO schema_migrations (version) VALUES ('20130318031705');
|
INSERT INTO schema_migrations (version) VALUES ('20130318031705');
|
||||||
|
|
||||||
INSERT INTO schema_migrations (version) VALUES ('20130318231740');
|
INSERT INTO schema_migrations (version) VALUES ('20130318231740');
|
||||||
|
|
||||||
|
INSERT INTO schema_migrations (version) VALUES ('20130320070700');
|
||||||
7
script/fixes/009.rb
Normal file
7
script/fixes/009.rb
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env ruby
|
||||||
|
|
||||||
|
require File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'config', 'environment'))
|
||||||
|
|
||||||
|
ActiveRecord::Base.connection.execute("set statement_timeout = 0")
|
||||||
|
|
||||||
|
ActiveRecord::Base.connection.execute("update wiki_pages set updater_id = creator_id")
|
||||||
Reference in New Issue
Block a user