function format_message($row) { $msg = irc_split_message($row['data']); extract($msg); switch ($command) { case 'PRIVMSG': if ($message[0] == "") { $o = "* " . format_nick($origin) . " " . str_replace("ACTION", '', $message); } else { $o = "<" . format_nick($origin) . "> {$message}"; } break; case 'NICK': $o = format_nick($origin) . " is now known as\n\t\t\t\t" . format_nick($message); break; case 'JOIN': $o = format_nick($origin) . " has joined {$dest}"; break; case 'QUIT': $o = format_nick($origin) . " has quit ({$message})"; break; default: $o = $row['data']; } return format_timestamp($row['timestamp']) . " {$o}<br />"; }
queue('Status', 'Test....'); $windows = get_windows(); if (!$NICKNAME) { exit; } $ircserver = 'femme.sapphite.org'; if ($irc = fsockopen($ircserver, 6667)) { socket_set_blocking($irc, FALSE); fputs($irc, "NICK {$NICKNAME}\n"); fputs($irc, "USER {$NICKNAME} 1 1 1 1\n"); while (!feof($irc)) { set_time_limit(60); $r = fgets($irc, 512); if ($r) { print "< " . $r; $msg = irc_split_message($r); extract($msg); if ($command == 'PING') { fputs($irc, ":{$NICKNAME} PONG :{$message}\n"); } elseif ($dest and strtolower($dest) != strtolower(format_nick($origin)) and strtolower($origin) != $ircserver and $dest != 'AUTH' and $command != 'QUIT') { if (strtolower($dest) != strtolower($NICKNAME)) { queue($dest, $r); } else { queue(format_nick($origin), $r); } } else { queue('Status', $r); } } $r = get_outgoing(); foreach ($r as $row) {