use WikiUpdateEvent
git-svn-id: file:///home/shish/svn/shimmie2/trunk@591 7f39781d-f577-437e-ae19-be835c7a54ca
This commit is contained in:
		
							parent
							
								
									b48cd81da5
								
							
						
					
					
						commit
						1e76d9de9d
					
				| @ -74,7 +74,7 @@ class EventLog extends Extension { | |||||||
| 			$this->add_to_log($event->user, 'Comment Posting', "Posted a comment on image #{$event->image_id}"); | 			$this->add_to_log($event->user, 'Comment Posting', "Posted a comment on image #{$event->image_id}"); | ||||||
| 		} | 		} | ||||||
| 		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"); | ||||||
|  | |||||||
| @ -81,13 +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))) { | ||||||
| 					// send_event(new WikiUpdateEvent($event->user, new WikiPage(...))
 | 					$wikipage = new WikiPage(); | ||||||
| 					if($user->is_admin()) { | 					$wikipage->title = $title; | ||||||
| 						$this->set_page($title, $rev, $body, $lock); | 					$wikipage->rev = $rev; | ||||||
| 					} | 					$wikipage->body = $body; | ||||||
| 					else { | 					$wikipage->lock = $user->is_admin() ? $lock : false; | ||||||
| 						$this->set_page($title, $rev, $body, false); | 					send_event(new WikiUpdateEvent($user, $wikipage)); | ||||||
| 					} |  | ||||||
| 
 | 
 | ||||||
| 					$u_title = url_escape($title); | 					$u_title = url_escape($title); | ||||||
| 
 | 
 | ||||||
| @ -122,7 +121,7 @@ class Wiki extends Extension { | |||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		if(is_a($event, 'WikiUpdateEvent')) { | 		if(is_a($event, 'WikiUpdateEvent')) { | ||||||
| 			$this->set_page($event->wikipage); | 			$this->set_page($event->user, $event->wikipage); | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		if(is_a($event, 'SetupBuildingEvent')) { | 		if(is_a($event, 'SetupBuildingEvent')) { | ||||||
| @ -180,13 +179,13 @@ class Wiki extends Extension { | |||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	// TODO: accept a WikiPage object
 | 	// TODO: accept a WikiPage object
 | ||||||
| 	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)); | ||||||
| 	} | 	} | ||||||
| // }}}
 | // }}}
 | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user