use WikiUpdateEvent in stable

git-svn-id: file:///home/shish/svn/shimmie2/branches/branch_2.1@592 7f39781d-f577-437e-ae19-be835c7a54ca
This commit is contained in:
shish 2007-10-28 17:22:35 +00:00
parent de6547cd4b
commit 74ac306040
2 changed files with 11 additions and 11 deletions

View File

@ -69,7 +69,7 @@ class EventLog extends Extension {
global $user; // bad global $user; // bad
if(is_a($event, 'WikiUpdateEvent')) { if(is_a($event, 'WikiUpdateEvent')) {
$this->add_to_log($event->user, 'Wiki Update', "Edited '{$event->page->title}'"); $this->add_to_log($event->user, 'Wiki Update', "Edited '{$event->wikipage->title}'");
} }
if(is_a($event, 'ConfigSaveEvent')) { if(is_a($event, 'ConfigSaveEvent')) {
$this->add_to_log($user, 'Config Save', "Updated the board config"); $this->add_to_log($user, 'Config Save', "Updated the board config");

View File

@ -81,12 +81,12 @@ class Wiki extends Extension {
global $user; global $user;
if($this->can_edit($user, $this->get_page($title))) { if($this->can_edit($user, $this->get_page($title))) {
if($user->is_admin()) { $wikipage = new WikiPage();
$this->set_page($title, $rev, $body, $lock); $wikipage->title = $title;
} $wikipage->rev = $rev;
else { $wikipage->body = $body;
$this->set_page($title, $rev, $body, false); $wikipage->lock = $user->is_admin() ? $lock : false;
} send_event(new WikiUpdateEvent($user, $wikipage));
$u_title = url_escape($title); $u_title = url_escape($title);
@ -121,7 +121,7 @@ class Wiki extends Extension {
} }
if(is_a($event, 'WikiUpdateEvent')) { if(is_a($event, 'WikiUpdateEvent')) {
$this->update_wiki_page($event->user, $event->page); $this->set_page($event->user, $event->wikipage);
} }
if(is_a($event, 'SetupBuildingEvent')) { if(is_a($event, 'SetupBuildingEvent')) {
@ -177,13 +177,13 @@ class Wiki extends Extension {
ORDER BY revision DESC", array($title)); ORDER BY revision DESC", array($title));
return ($row ? new WikiPage($row) : null); return ($row ? new WikiPage($row) : null);
} }
private function set_page($title, $rev, $body, $locked) { private function set_page($user, $wpage) {
global $database; global $database;
global $user;
// FIXME: deal with collisions // FIXME: deal with collisions
$row = $database->Execute(" $row = $database->Execute("
INSERT INTO wiki_pages(owner_id, owner_ip, date, title, revision, locked, body) INSERT INTO wiki_pages(owner_id, owner_ip, date, title, revision, locked, body)
VALUES (?, ?, now(), ?, ?, ?, ?)", array($user->id, $_SERVER['REMOTE_ADDR'], $title, $rev, $locked?'Y':'N', $body)); VALUES (?, ?, now(), ?, ?, ?, ?)", array($user->id, $_SERVER['REMOTE_ADDR'],
$wpage->title, $wpage->rev, $wpage->locked?'Y':'N', $wpage->body));
} }
// }}} // }}}
} }