Updated to newer Ratchet and also fixed some explosions.
This commit is contained in:
parent
c1710d2c2b
commit
4dce69a63b
6 changed files with 817 additions and 434 deletions
|
@ -1,5 +1,8 @@
|
|||
{
|
||||
"require": {
|
||||
"cboden/ratchet": "0.3.*"
|
||||
"cboden/ratchet": "^0.4.4"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpstan/phpstan": "^1.10"
|
||||
}
|
||||
}
|
||||
|
|
1219
composer.lock
generated
1219
composer.lock
generated
File diff suppressed because it is too large
Load diff
|
@ -236,7 +236,7 @@ class Database {
|
|||
Database::$statements["logstore"]["uname"] = $user->username;
|
||||
Database::$statements["logstore"]["color"] = $user->color;
|
||||
Database::$statements["logstore"]["chan"] = $chan == null ? $user->channel : $chan;
|
||||
Database::$statements["logstore"]["chrank"] = $chan[0] == "@" ? 0 : Context::GetChannel($user->channel)->permissionLevel;
|
||||
Database::$statements["logstore"]["chrank"] = $chan[0] == "@" ? 0 : Context::GetChannel($user->channel)->permissionLevel ?? 0;
|
||||
Database::$statements["logstore"]["msg"] = $msg;
|
||||
Database::$statements["logstore"]["flags"] = substr($flags, 0, 4) ."0";
|
||||
Database::Execute("logstore");
|
||||
|
|
13
lib/mods.php
13
lib/mods.php
|
@ -10,13 +10,14 @@ class Modules {
|
|||
$mods = glob("./mods/*", GLOB_ONLYDIR);
|
||||
foreach($mods as $mod) {
|
||||
$name = substr($mod, strrpos($mod, "/")+1);
|
||||
if(file_exists("{$mod}/{$name}.php")) {
|
||||
include("{$mod}/{$name}.php");
|
||||
if(class_exists("\\sockchat\\mods\\{$name}\\Main")) {
|
||||
$fileName = "{$mod}/{$name}.php";
|
||||
if(file_exists($fileName)) {
|
||||
include($fileName);
|
||||
$className = "\\sockchat\\mods\\{$name}\\Main";
|
||||
if(class_exists($className)) {
|
||||
Modules::$mods[$name] = $name;
|
||||
|
||||
$cmds = call_user_func_array("\\sockchat\\mods\\{$name}\\Main::Init", []);
|
||||
$cmds = call_user_func_array("\\sockchat\\mods\\{$name}\\Main::GetCommands", []);
|
||||
call_user_func([$className, 'Init']);
|
||||
$cmds = call_user_func([$className, 'GetCommands']);
|
||||
foreach($cmds as $cmd) {
|
||||
if(array_key_exists($cmd, self::$cmds))
|
||||
echo "Error loading module $name: Command $cmd has already been defined by module ". self::$cmds[$cmd] ."!\n";
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
|
||||
namespace sockchat\mods\core;
|
||||
|
||||
use \sockchat\mods\GenericMod;
|
||||
|
||||
use \sockchat\Context;
|
||||
|
@ -402,7 +402,7 @@ class Main extends GenericMod {
|
|||
}
|
||||
}
|
||||
|
||||
public static function OnCommandReceive($user, &$cmd, &$args) {
|
||||
public static function OnCommandReceive($user, $cmd, $args) {
|
||||
/*if(!self::IsSilenced($user) || (self::IsSilenced($user) && in_array($cmd, self::$allowedCmds))) {
|
||||
if($cmd == "afk") {
|
||||
$val = isset($args[0]) ? strtoupper(mb_substr($args[0], 0, self::$maxAfkTagLength)) : "AFK";
|
||||
|
|
|
@ -37,12 +37,12 @@ class Chat implements MessageComponentInterface {
|
|||
}
|
||||
|
||||
public function onOpen(ConnectionInterface $conn) {
|
||||
$conn->remoteAddress = $conn->WebSocket->request->getHeader('X-Real-IP') ?? $conn->remoteAddress;
|
||||
$conn->remoteAddress = $conn->httpRequest->getHeader('X-Real-IP')[0] ?? $conn->remoteAddress;
|
||||
Context::CheckPings();
|
||||
}
|
||||
|
||||
public function onMessage(ConnectionInterface $conn, $msg) {
|
||||
$conn->remoteAddress = $conn->WebSocket->request->getHeader('X-Real-IP') ?? $conn->remoteAddress;
|
||||
$conn->remoteAddress = $conn->httpRequest->getHeader('X-Real-IP')[0] ?? $conn->remoteAddress;
|
||||
Context::CheckPings();
|
||||
if(true) {
|
||||
$parts = explode(Utils::$separator, $msg);
|
||||
|
@ -128,7 +128,7 @@ class Chat implements MessageComponentInterface {
|
|||
}
|
||||
|
||||
public function onClose(ConnectionInterface $conn) {
|
||||
$conn->remoteAddress = $conn->WebSocket->request->getHeader('X-Real-IP') ?? $conn->remoteAddress;
|
||||
$conn->remoteAddress = $conn->httpRequest->getHeader('X-Real-IP')[0] ?? $conn->remoteAddress;
|
||||
echo $conn->remoteAddress ." has disconnected\n";
|
||||
foreach(Context::$onlineUsers as $user) {
|
||||
if($user->sock == $conn) {
|
||||
|
@ -141,7 +141,7 @@ class Chat implements MessageComponentInterface {
|
|||
}
|
||||
|
||||
public function onError(ConnectionInterface $conn, \Exception $err) {
|
||||
$conn->remoteAddress = $conn->WebSocket->request->getHeader('X-Real-IP') ?? $conn->remoteAddress;
|
||||
$conn->remoteAddress = $conn->httpRequest->getHeader('X-Real-IP')[0] ?? $conn->remoteAddress;
|
||||
Context::CheckPings();
|
||||
echo "Error on ". $conn->remoteAddress .": ". $err ."\n";
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue