This commit is contained in:
Pentium44 2021-01-03 17:14:09 -08:00
parent 68770cff9e
commit f133f5c046
3 changed files with 29 additions and 26 deletions

View File

@ -143,14 +143,14 @@ input, button, select, textarea{
#msgs tr:nth-child(even) { background-color: #333333; }
#msgs tr:nth-child(odd) { background-color: #262626; }
#msgs td:nth-child(even) { width: 100%; }
#msgs td:nth-child(odd) { min-width: 120px; }
#msgs td:nth-child(even) { width: 80%; max-width: 950px; min-width: 320px; }
#msgs td:nth-child(odd) { width: 20%; min-width: 120px; max-width: 190px; }
#msgs td { padding: 0px 4px 0px 4px; border-radius: 3px; }
#logmsgs tr:nth-child(even) { background-color: #333333; }
#logmsgs tr:nth-child(odd) { background-color: #262626; }
#logmsgs td:nth-child(even) { width: 100%; }
#logmsgs td:nth-child(odd) { min-width: 120px; }
#logmsgs td:nth-child(even) { width: 80%; max-width: 950px; min-width: 320px; }
#logmsgs td:nth-child(odd) { width: 20%; min-width: 120px; max-width: 190px; }
#logmsgs td { padding: 0px 4px 0px 4px; border-radius: 3px; }
#footer {

21
irc.php
View File

@ -79,7 +79,7 @@ socket_write($socket, $userline, strlen($userline));
// Continue the rest of the script here
// While script will continue as long as socket continues to be active
while($bytes = socket_recv($socket, $r_data, 3096, MSG_DONTWAIT) !== '') {
while($bytes = socket_recv($socket, $r_data, 2048, MSG_DONTWAIT) !== '') {
if($bytes !== FALSE) {
//$data = socket_read($socket, 2048, PHP_NORMAL_READ);
$packetdata = $r_data;
@ -108,14 +108,14 @@ while($bytes = socket_recv($socket, $r_data, 3096, MSG_DONTWAIT) !== '') {
// If data variable is set and buffer has data to recieve
// RECIEVE IT!
if(isset($packetdata)) { // If data variable is set, there's data from socket
doLog("Server received chunk: $packetdata");
//doLog("Server received chunk: $packetdata");
$lines = explode("\r\n", $packetdata);
foreach($lines as $data) {
if($data == "") { continue; }
doLog("Line: $data");
//doLog("Line: $data");
$socketFileContents = file_get_contents("users/$username.log");
$stringMsg = explode('PRIVMSG', $data); // Strip IRC commands
@ -133,14 +133,14 @@ while($bytes = socket_recv($socket, $r_data, 3096, MSG_DONTWAIT) !== '') {
$senderNick = get_string_between($data, ":", "!");
$senderIp = get_string_between($data, "@", " ");
$exitMsg = explode('PART', $data);
$msgline = "<tr><td class='userinfo'><b>$senderNick</b><br /><span style='color:$ipcolor;'>$senderIp</span></td><td> left " . stripslashes(trim($exitMsg[1])) . "</td></tr>";
$msgline = "<tr><td class='userinfo'><b>$senderNick</b>: Leaving<br /><span style='color:$ipcolor;font-size:9px;'>$senderIp</span></td><td> left " . stripslashes(trim($exitMsg[1])) . "</td></tr>";
file_put_contents("users/$username.log", $socketFileContents . $msgline);
} else if ($ex[1] == "JOIN") {
$senderNick = get_string_between($data, ":", "!");
$senderIp = get_string_between($data, "@", " ");
$joinChannel = explode("JOIN :", $data);
if($senderNick != $usernickname) {
$msgline = "<tr><td class='userinfo'><b>$senderNick</b><br /><span style='color:$ipcolor;'>$senderIp</span></td><td> joined " . $joinChannel[1] . "</td></tr>\n";
$msgline = "<tr><td class='userinfo'><b>$senderNick</b>:" . $joinChannel[1] . "<br /><span style='color:$ipcolor;font-size:9px;'>$senderIp</span></td><td> joined " . $joinChannel[1] . "</td></tr>\n";
file_put_contents("users/$username.log", $socketFileContents . $msgline);
} else {
$msgline = "<tr><td class='userinfo'><span style='color:$ipcolor;'>" . $server_address . "</span> ~ </td><td>Joining " . $joinChannel[1] . "</td></tr>\n";
@ -150,20 +150,23 @@ while($bytes = socket_recv($socket, $r_data, 3096, MSG_DONTWAIT) !== '') {
$senderNick = get_string_between($data, ":", "!");
$senderIp = get_string_between($data, "@", " ");
$nickMsg = explode('NICK', $data);
$msgline = "<tr><td class='userinfo'><b>$senderNick</b><br /><span style='color:$ipcolor;'>$senderIp</span></td><td> $senderNick is now known as" . trim($nickMsg[1]) . "</td></tr>\n";
$msgline = "<tr><td class='userinfo'><b>$senderNick</b>:" . trim($nickMsg[1]);
$msgline .= "<br /><span style='color:$ipcolor;font-size:9px;'>$senderIp</span>";
$msgline .= "</td><td> $senderNick is now known as" . trim($nickMsg[1]);
$msgline .= "</td></tr>\n";
file_put_contents("users/$username.log", $socketFileContents . $msgline);
} else if ($ex[1] == "QUIT") {
$senderNick = get_string_between($data, ":", "!");
$senderIp = get_string_between($data, "@", " ");
$quitMsg = explode('QUIT :', $data);
$msgline = "<tr><td class='userinfo'><span style='color:$ipcolor;'>$server_address</span> ~</td><td> $senderNick left: " . trim($quitMsg[1]) . "</td></tr>\n";
$msgline = "<tr><td class='userinfo'><b>$senderNick</b><br /><span style='color:$ipcolor;font-size:9px;'>$senderIp</span></td><td> $senderNick left: " . trim($quitMsg[1]) . "</td></tr>\n";
file_put_contents("users/$username.log", $socketFileContents . $msgline);
} else if ($ex[2] == $usernickname && $ex[1] == "PRIVMSG") {
$senderNick = get_string_between($data, ":", "!");
$senderIp = get_string_between($data, "@", " ");
$privMsg = explode($usernickname . " :", $stringMsg[1]);
file_put_contents("users/.$username.pmed", "$senderNick");
$msgline = "<tr><td class='userinfo'>PM from: <b>$senderNick</b><br /><span style='color:$ipcolor;'>$senderIp</span></td><td> " . htmlentities(stripslashes(trim($privMsg[1]))) . "</td></tr>\n";
$msgline = "<tr><td class='userinfo'>PM from <b>$senderNick</b><br /><span style='color:$ipcolor;font-size:9px;'>$senderIp</span></td><td> " . htmlentities(stripslashes(trim($privMsg[1]))) . "</td></tr>\n";
file_put_contents("users/$username.log", $socketFileContents . $msgline);
$msg = "";
} else if ($stringMsg[1] != "") {
@ -172,7 +175,7 @@ while($bytes = socket_recv($socket, $r_data, 3096, MSG_DONTWAIT) !== '') {
$channel = explode(" :", $stringMsg[1]);
$msg = explode($channel[0] . " :", $stringMsg[1]);
$msgline = "<tr><td class='userinfo'><b>$senderNick</b>:" . $channel[0] . "<span style='color:$ipcolor;font-size:9px;'>$senderIp</span></td><td> " . htmlentities(stripslashes(trim($msg[1]))) . "</td></tr>";
$msgline = "<tr><td class='userinfo'><b>$senderNick</b>:" . $channel[0] . "<br /><span style='color:$ipcolor;font-size:9px;'>$senderIp</span></td><td> " . htmlentities(stripslashes(trim($msg[1]))) . "</td></tr>";
if(usernameInMsg($usernickname, $msg[1])==true) {
file_put_contents("users/.$username.mentioned", "$senderNick");
}

View File

@ -27,8 +27,8 @@ html {
body {
margin: 0 auto;
padding: 4px;
background-color: #c9c9c9;
border: solid 1px #bbbbbb;
background-color: #dddddd;
border: solid 1px #cccccc;
border-radius: 10px;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
@ -52,8 +52,8 @@ a:hover {
}
input, button, select, textarea{
background-color: #d3d3d3;
border: solid 1px #bbbbbb;
background-color: #d2d2d2;
border: solid 1px #cccccc;
outline: none;
border-radius: 6px;
font-size: 16px;
@ -80,7 +80,7 @@ input, button, select, textarea{
color: #222222;
padding: 3px 6px 4px 6px;
border-radius: 6px;
border: solid 1px #bbbbbb;
border: solid 1px #cccccc;
box-shadow: 0px 0px 6px #bbbbbb;
margin: 0 auto;
width: fit-content;
@ -140,16 +140,16 @@ input, button, select, textarea{
overflow-x: auto;
}
#msgs tr:nth-child(even) { background-color: #bbbbbb; }
#msgs tr:nth-child(odd) { background-color: #b1b1b1; }
#msgs td:nth-child(even) { width: 100%; }
#msgs td:nth-child(odd) { min-width: 120px; }
#msgs tr:nth-child(even) { background-color: #bbbbbb; color: #000000; }
#msgs tr:nth-child(odd) { background-color: #b1b1b1; color: #000000; }
#msgs td:nth-child(even) { width: 80%; max-width: 950px; min-width: 320px; }
#msgs td:nth-child(odd) { width: 20%; min-width: 120px; max-width: 190px; }
#msgs td { padding: 0px 4px 0px 4px; border-radius: 3px; }
#logmsgs tr:nth-child(even) { background-color: #bbbbbb; }
#logmsgs tr:nth-child(odd) { background-color: #b1b1b1; }
#logmsgs td:nth-child(even) { width: 80%; }
#logmsgs td:nth-child(odd) { min-width: 120px;}
#logmsgs tr:nth-child(even) { background-color: #bbbbbb; color: #000000; }
#logmsgs tr:nth-child(odd) { background-color: #b1b1b1; color: #000000; }
#logmsgs td:nth-child(even) { width: 80%; max-width: 950px; min-width: 320px; }
#logmsgs td:nth-child(odd) { width: 20%; min-width: 120px; max-width: 190px; }
#logmsgs td { padding: 0px 4px 0px 4px; border-radius: 3px; }
#footer {