public function run() { $channel = ChannelManager::get($this->channel); $channel->removeConnectedNick($this->targetNick); ChannelManager::store($this->channel, $channel); if (!ChannelManager::isConnectedToTrackedChannel($this->targetNick)) { UserManager::remove($this->targetNick); } }
public function run() { $workingLine = explode(" ", $this->runMessage, 5); $channel = $workingLine[3]; $workingLine = explode(" :", $this->runMessage, 2); $newTopic = $workingLine[1]; $channelObject = ChannelManager::get($channel); $channelObject->topic = $newTopic; ChannelManager::store($channel, $channelObject); }
public function run() { $channel = ChannelManager::get($this->channel); $channel->addConnectedNick($this->senderNick); ChannelManager::store($this->channel, $channel); $line = new ReceivedLine($this->runMessage); $line->parse(); $user = UserManager::get($this->senderNick); $user->nickname = $line->senderNick; $user->ident = $line->senderIdent; $user->host = $line->senderHost; UserManager::store($this->senderNick, $user); }
public function run() { if ($this->parameters(2)) { $channel = $this->parameters(2); } else { $channel = $this->channel; } $channelObject = ChannelManager::get($channel); if ($channelObject->hasPrivilegeOrHigher($this->senderNick, "@")) { $server = Server::getInstance(); $server->channelInvite($this->parameters(1), $channel); } }
public function run() { $channel = ChannelManager::get($this->channel); $line = new ReceivedLine($this->runMessage); $line->parse(); // We currently only process modes with targets. We can therefor skip if no targets present. if (empty($line->targetNick)) { return; } $modes = array(); if (strlen($line->message) > 2) { $split = str_split($line->message); $symbol = ""; foreach ($split as $id => $character) { if ($character == "+" || $character == "-") { $symbol = $character; } else { $modes[] = $symbol . $character; } } } else { $modes[] = $line->message; } $targetIndex = 0; foreach ($modes as $mode) { switch ($mode) { case "+v": $channel->addPrivilege($this->getTargetNick($line, $targetIndex++), "+"); break; case "+h": $channel->addPrivilege($this->getTargetNick($line, $targetIndex++), "%"); break; case "+o": $channel->addPrivilege($this->getTargetNick($line, $targetIndex++), "@"); break; case "+a": $channel->addPrivilege($this->getTargetNick($line, $targetIndex++), "&"); break; case "+q": $channel->addPrivilege($this->getTargetNick($line, $targetIndex++), "~"); break; default: if (in_array($mode, static::$modesWithTarget)) { $targetIndex++; } break; } } ChannelManager::store($this->channel, $channel); }
public function run() { $channel = ChannelManager::get($this->channel); $line = new ReceivedLine($this->runMessage); $line->parse(); $modes = array(); if (strlen($line->message) > 2) { $split = str_split($line->message); foreach ($split as $id => $character) { if ($id == 0) { $symbol = $split[0]; } else { $modes[] = $symbol . $character; } } } else { $modes[] = $line->message; } foreach ($modes as $mode) { switch ($mode) { case "+v": $channel->addPrivilege($line->targetNick, "+"); break; case "+h": $channel->addPrivilege($line->targetNick, "%"); break; case "+o": $channel->addPrivilege($line->targetNick, "@"); break; case "+a": $channel->addPrivilege($line->targetNick, "&"); break; case "+q": $channel->addPrivilege($line->targetNick, "~"); break; } } ChannelManager::store($this->channel, $channel); }
public function run() { // Channel $workingLine = explode(" ", $this->runMessage); $channel = $workingLine[4]; // Names $workingLine = explode(" :", $this->runMessage); $names = trim($workingLine[1]); $names = explode(" ", $names); // Fetch the channel object $channelObject = ChannelManager::get($channel); // Loop through the names adding them to the channel and UserManager foreach ($names as $name) { $privileges = false; if (strpos($name, "~") === 0) { $privileges = "~"; } if (strpos($name, "&") === 0) { $privileges = "&"; } if (strpos($name, "@") === 0) { $privileges = "@"; } if (strpos($name, "%") === 0) { $privileges = "%"; } if (strpos($name, "+") === 0) { $privileges = "+"; } $nick = str_replace(array("~", "@", "&", "%", "+"), "", $name); $channelObject->addConnectedNick($nick, $privileges); $user = UserManager::get($nick); $user->nickname = $nick; UserManager::store($nick, $user); } // Store away the channel object ChannelManager::store($channel, $channelObject); }