return;
}
$targetUser->getModes()->setModes($modes);
- if($this->eventHandler)
+ $fakemodes = NULL;
+ if($targetUser->getModes()->hasMode("x") && $targetUser->getModes()->hasMode("r") && !$targetUser->getModes()->hasMode("f")) {
+ //user is registered and has umode +x set (automatically assign default fakehost)
+ $fakemodes = "+f ".$targetUser->getModes()->hasMode("r").".".$this->getSetting("his_usermask");
+ $targetUser->getModes()->setModes($fakemodes);
+ }
+ if($this->eventHandler) {
$this->eventHandler->event_usermode($targetUser, $modes);
+ if($fakemodes)
+ $this->eventHandler->event_usermode($targetUser, $fakemodes);
+ }
}
}
}
$auth = $args[1];
$user->getModes()->setModes("+r ".$auth);
- if($this->eventHandler)
+ $fakemodes = NULL;
+ if($user->getModes()->hasMode("x") && !$user->getModes()->hasMode("f")) {
+ //user is registered and has umode +x set (automatically assign default fakehost)
+ $fakemodes = "+f ".$auth.".".$this->getSetting("his_usermask");
+ $user->getModes()->setModes($fakemodes);
+ }
+ if($this->eventHandler) {
$this->eventHandler->event_usermode($user, "+r ".$auth);
+ if($fakemodes)
+ $this->eventHandler->event_usermode($user, $fakemodes);
+ }
}
private function recv_fakehost($from, $args) {