make the user extension work again

This commit is contained in:
Shish 2009-01-04 10:31:54 -08:00
parent 63cc962457
commit 820f60d5e8

View File

@ -15,12 +15,11 @@ class UserBlockBuildingEvent extends Event {
} }
class UserPageBuildingEvent extends Event { class UserPageBuildingEvent extends Event {
var $page = null; var $display_user;
var $user = null;
public function UserPageBuildingEvent($page, $user) { public function __construct(RequestContext $context, User $display_user) {
$this->page = $page; parent::__construct($context);
$this->user = $user; $this->display_user = $display_user;
} }
} }
@ -105,7 +104,7 @@ class UserPage implements Extension {
global $database; global $database;
$duser = ($event->count_args() == 0) ? $user : User::by_name($config, $database, $event->get_arg(0)); $duser = ($event->count_args() == 0) ? $user : User::by_name($config, $database, $event->get_arg(0));
if(!is_null($duser)) { if(!is_null($duser)) {
send_event(new UserPageBuildingEvent($event->page, $duser)); send_event(new UserPageBuildingEvent($event->context, $duser));
} }
else { else {
$this->theme->display_error($event->page, "No Such User", $this->theme->display_error($event->page, "No Such User",
@ -117,15 +116,15 @@ class UserPage implements Extension {
if($event instanceof UserPageBuildingEvent) { if($event instanceof UserPageBuildingEvent) {
global $user; global $user;
global $config; global $config;
$this->theme->display_user_page($event->page, $event->user, $user); $this->theme->display_user_page($event->context->page, $event->context->user, $user);
if($user->id == $event->user->id) { if($user->id == $event->display_user->id) {
$ubbe = new UserBlockBuildingEvent($event->user); $ubbe = new UserBlockBuildingEvent($event->display_user);
send_event($ubbe); send_event($ubbe);
ksort($ubbe->parts); ksort($ubbe->parts);
$this->theme->display_user_links($event->page, $event->user, $ubbe->parts); $this->theme->display_user_links($event->context->page, $event->context->user, $ubbe->parts);
} }
if(($user->is_admin() || $user->id == $event->user->id) && ($user->id != $config->get_int('anon_id'))) { if(($user->is_admin() || $user->id == $event->display_user->id) && ($user->id != $config->get_int('anon_id'))) {
$this->theme->display_ip_list($event->page, $this->count_upload_ips($event->user), $this->count_comment_ips($event->user)); $this->theme->display_ip_list($event->context->page, $this->count_upload_ips($event->display_user), $this->count_comment_ips($event->display_user));
} }
} }