Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Netham45

Pages: 1 2 [3] 4
OmnomIRC Development / Having issues with OmnomIRC? START HERE!
« on: May 02, 2011, 07:31:01 pm »
First off, please make sure your browser is compatible.
Spoiler For Browser Compatibility:
Opera 11 - Full
Firefox 4 - Full (Mildly slow.)
Chrome 11 - Full
IE9 - Most Works(Does not scroll properly, stylesheets do not work quite right.) Really slow.
IE8 - Does not work(Does not load properly).

From here on, I will no longer be supporting IE8-. It just doesn't work right. If you must use IE, please upgrade to IE9. If you don't need to use IE, please use Opera, Firefox, or Chrome.

I will be supporting IE9 and above, though it will receive features and bug fixes at the lowest priority.

Older browsers will not be supported. FF3.0, for example, came out in June of 2008, almost 3 years ago, therefore it will not be supported.
Please clear your browser caches before submitting bug reports. Here's how to clear them!

Spoiler For Opera:
press Alt+T
Select 'Delete Private Data'
Uncheck everything except for 'Delete entire cache' under 'Detailed Options'
Click on 'Delete'
Spoiler For Chrome:
Press Ctrl+Shift+Del
Uncheck everything except for 'Empty the cache'
Click on 'Clear browsing data'
Spoiler For Firefox:
Press Alt+T
Select 'Clear Recent History'
Set time rage to 'Everything'
Unselect everything except 'Cache' under Details
Spoiler For Internet Explorer:
Switch to Opera, Chrome, or Firefox and follow those instructions.
For those stuck on IE:
Press Alt+T
Select 'Delete Browsing History'
Check 'Preserve Favorites Website Data', and 'Temporary Internet Files'
Uncheck everything else
Hit 'Delete'
Spoiler For Safari:
Goto tools(Alt+T on Windows, Command+T on Mac)
Select "Reset Safari"
Deselect all the boxes except Clear Cookies and Clear Cache
Click ok

Quick refreshes:

Opera: F5
Chrome: Ctrl+F5
Firefox: Ctrl+Shift+R
IE: Ctrl+F5
Safari: Ctrl+Shift+R

If you are still having issues after clearing your cache, please make a new topic/reply in an applicable topic with your:
Browser Type/Version
Browser Extensions(noscript, for example)
OS (Windows/Linux)
Version of OS(7/Debian)
When you first noticed the bug

Archive / OmnomIRC Options Page
« on: May 02, 2011, 06:47:38 am »
I've been working on an options page for OmnomIRC off and on for the past couple weeks(as DJ found out, thanks for that rickroll btw. :|), and I just finished it a few minutes ago.

Quite a few changes were made internally(cookie storage method, numerous changes to the parser, and some other things), some of which were bugfixes, and some for the features. But, that's not the fun stuff! If you look at the top bar on OmnomIRC, you'll notice a new link, 'Options'. In there, you can can change things like how highlighting works, or rather you have colored names or not.

As always, I'm expecting a few bugs to crop up with this update(It wouldn't be OmnomIRC without 'em!), so feel free to make a new post in the 'OmnomIRC Chat and Spybot45 Suggestions & Bug Reports' section. I only ask that before you do, please clear your cache, as that has been the culprit more times than I can count.

TI-Nspire / Idea for nleash on new boot2
« on: April 26, 2011, 03:47:43 am »
*disclaimer, it's 2 AM on a tuesday.*

Basically, the nleash exploit for 2.x was a zip that extracted beyond the size of the calcs available ram, causing corruption that slid into some code that did stuff(What it did, I don't know.)

The .tno/.tnc's are zips(along with a large portion of the nspire.img inside.)

Would it be possible to basically make a custom OS upgrade and put ndless inside, or does the zip routine in the new boot2 actually check for an overflow?

Edit: changed all instances of 'ndless' in this post to 'nleash'

Archive / Colored Names
« on: April 16, 2011, 05:16:45 am »
I implemented colored names using X-Chat 2's coloring algorithm, but I'm not entirely sure if I like them or not. Opinions?

(You may need to clear cache/refresh to see them)

OmnomIRC Development / Various bits of OmnomIRC Source Code
« on: April 15, 2011, 06:59:27 am »
Edit: SVN!

Here's the new log parser for OmnomIRC. I'm planning to start open-sourcing components as soon as I'm not totally ashamed of the code in 'em. Regex's are awesome.

Log Parser
Spoiler For view_omnom.php:
Code: [Select]
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");  
<link rel="stylesheet" type="text/css" href="" />
$noShowNames = array("omnomirc","omnimaga","spybot45","spybot46");
function parseColors($colorStr)
$colorStr = htmlspecialchars($colorStr);
$colorStr = clickable_links($colorStr);
//$colorStr = preg_replace("/^  &lt;(.+?)&gt;/",'   &lt;<a target="_parent" href=";sa=page;p=13&userSearch=\1">\1</a>&gt;',$colorStr);
preg_match("/^  &lt;(.+?)&gt;/",$colorStr,$arrayName);
if (count($arrayName) > 0)
$colorStr = preg_replace("/^  &lt;(.+?)&gt;/",getOmnomNameColor($arrayName[1]),$colorStr);
$lcount = 0;
while(strpos($colorStr,"\x03") > 0)
if(count($arrayResults) > 4) //FG & BG
$colorStr = $arrayResults[1].'<span class="fg-'.$arrayResults[2]*1 .'"><span class="bg-'.$arrayResults[3]*1 .'">'.$arrayResults[4];
elseif(count($arrayResults2) > 3) //FG Only
$colorStr = $arrayResults2[1].'<span class="fg-' . $arrayResults2[2]*1 . '">'.$arrayResults2[3];
else //We have a color control character w/o a color, most clients interperet this as clear colors.
$colorStr = preg_replace("/\x03/","",$colorStr,1);
/*Strip codes*/
$colorStr = preg_replace("(\x03|\x02|\x1F|\x09|\x0F)","",$colorStr);
$colorStr = str_replace("\x07","&lt;",$colorStr); // Removes beeps and is functional!
function clickable_links($text) {
$text = str_replace("","h111://",$text);
$text = str_replace("","h111://",$text);
$text = eregi_replace('((h111://(|[[email protected]:;%_+.~#?&//=]+)', '<a target="_parent" href="\1">\1</a>', $text);
$text = eregi_replace('(((f|ht){1}(tp|tps)://)[[email protected]:;%_+.~#?&//=]+)', '<a target="_blank" href="\1">\1</a>', $text);
$text = eregi_replace('([[:space:]()[{}])(www.[[email protected]:;%_+.~#?&//=]+)', '\1<a target="_blank" href="http://\2">\2</a>', $text);
$text = str_replace("h111","http",$text);
return $text;
function getNameColor($name)
$rcolors = array(19, 20, 22, 24, 25, 26, 27, 28, 29);
$sum = $i = 0;
while (isset($name[$i]))
$sum += ord($name[$i++]);
$sum %= 9;
return '<span class="uName-'.$rcolors[$sum].'">'.$name.'</span>';
function getOmnomNameColor($name)
$rcolors = array(19, 20, 22, 24, 25, 26, 27, 28, 29);
$sum = $i = 0;
while (isset($name[$i]))
$sum += ord($name[$i++]);
$sum %= 9;
return '  &lt;<a target="_parent" href=";sa=page;p=13&userSearch='.$name.'"><span class="uName-'.$rcolors[$sum].'">'.$name.'</span></a>&gt';
$myFile = "#" . $_GET["log"] . "." . date("Ymd") . ".log";
$arrayFile = file($myFile);
$count = count($arrayFile);
if (isset($_GET["trim"]))
$startAt = $count - $_GET["trim"];
$topic = $output = "";
$highlight = "\xFF";
if (isset($_GET["high"]))
$highlight = base64_decode($_GET["high"]);
for($i = 0;$i<$count;$i++)
$curLine = $arrayFile[$i];
//Try to get the topic
preg_match("/(Topic is|changes topic to) '(.*.)'/",$curLine,$topicGet);
$topic = $topicGet[2];
if ($i < $startAt) continue;

preg_match("/(^.*)(\[[0-9]{2}:[0-9]{2}:[0-9]{2}\]).\<(.+?)>(.*)/",$curLine,$curLineParts); //Try to match color, timestamp, message, and name
if(count($curLineParts) > 3)
$curLineParts[3] = str_replace("@","",$curLineParts[3]);
$curLineParts[3] = str_replace("+","",$curLineParts[3]);
$output = $output . '<span class="irc-date">'.$curLineParts[2].'</span>';
if (strpos(strtolower($curLineParts[4]),strtolower($highlight),in_array(strtolower($curLineParts[3]),$noShowNames)?strpos($curLineParts[4]," ",5):0))
$output = $output . '<span style="font-weight:bold;color:#F44">';
if (!in_array(strtolower($curLineParts[3]),$noShowNames))
$output = $output . " &lt;" . getNameColor($curLineParts[3]) . "&gt;";
$curLineParts[4] = str_replace("<","\x07",$curLineParts[4]);
$output = $output . parseColors(" ".$curLineParts[1].$curLineParts[4]);
if (strpos($curLineParts[4],$highlight))
$output = $output . '</span>';
preg_match("/(^.*)(\[[0-9]{2}:[0-9]{2}:[0-9]{2}\])(.*)/",$curLine,$curLineParts); //Try to match color, timestamp and message, no name
$output = $output . '<span class="irc-date">'.$curLineParts[2].'</span>';
$output = $output . parseColors(" ".$curLineParts[1] . $curLineParts[3]);
else //Give up and print line
$output = $output . parseColors($curLine);
$output = $output . '<br/>';
<span class="irc-topic">Current Topic:<?PHP echo parseColors($topic); ?></span><br/><br/>
<?PHP echo $output; ?>

The CSS for the previous document:
Spoiler For omnimaganoie.css:
Code: [Select]
body, td, th , tr     {font-size: 10px;font-family:verdana,sans-serif;}

.irc-date       {color: #000000;}
.irc-topic     {text-decoration :none;font-size:12;color:#333333;font-family:Arial;border-style:dashed;border-width:1px;width:99%;position:absolute;text-align:center;}
.irc-green     {color: #009200;}
.irc-black     {color: #000000;}
.irc-brown     {color: #7b0000;}
.irc-navy       {color: #00007b;}
.irc-brick     {color: #9c009c;}
.irc-red       {color: #ff0000;}
.irc-teal     {color: #1A5555;}

.fg-white, .fg-0   {color: #FFFFFF;}
.fg-black, .fg-1   {color: #000000;}
.fg-dkBlue, .fg-2   {color: #3636B2;}
.fg-dkgreen, .fg-3   {color: #2A8C2A;}
.fg-red, .fg-4   {color: #C33B3B;}
.fg-dkRed , .fg-5   {color: #C73232;}
.fg-dkPurple, .fg-6   {color: #80267F;}
.fg-orange, .fg-7   {color: #E19317;}
.fg-yellow, .fg-8   {color: #D9A641;}
.fg-green, .fg-9   {color: #3DCC3D;}
.fg-teal, .fg-10 {color: #1A5555;}
.fg-ltBlue, .fg-11 {color: #2F8C74;}
.fg-blue, .fg-12 {color: #4545E6;}
.fg-pink, .fg-13 {color: #B037B0;}
.fg-dkGray, .fg-14 {color: #4C4C4C;}
.fg-ltGray, .fg-15 {color: #959595;}

.bg-white, .bg-0   {}/*Placeholder*/
.bg-black, .bg-1   {background-color: #000000;}
.bg-dkBlue, .bg-2   {background-color: #3636B2;}
.bg-dkgreen, .bg-3   {background-color: #2A8C2A;}
.bg-red, .bg-4   {background-color: #C33B3B;}
.bg-dkRed , .bg-5   {background-color: #C73232;}
.bg-dkPurple, .bg-6   {background-color: #80267F;}
.bg-orange, .bg-7   {background-color: #E19317;}
.bg-yellow, .bg-8   {background-color: #D9A641;}
.bg-green, .bg-9   {background-color: #3DCC3D;}
.bg-teal, .bg-10 {background-color: #1A5555;}
.bg-ltBlue, .bg-11 {background-color: #2F8C74;}
.bg-blue, .bg-12 {background-color: #4545E6;}
.bg-pink, .bg-13 {background-color: #B037B0;}
.bg-dkGray, .bg-14 {background-color: #4C4C4C;}
.bg-ltGray, .bg-15 {background-color: #959595;}
Spoiler For Spybot45 code:
Code: (Spybot45.php) [Select]
$sqlConnection = mysql_connect("","omnimaga_Netham","-Snip-");
if (!$sqlConnection)
die("Could not connect to SQL DB.");
if (!mysql_select_db("omnimaga_forums",$sqlConnection)) die('Invalid query: ' . mysql_error());

function sql_query()
global $sqlConnection;
$params = func_get_args();
$query = $params[0];
$args = Array();
for ($i=1;$i<count($params);$i++)
$args[$i-1] = mysql_real_escape_string($params[$i],$sqlConnection);
$result = mysql_query(vsprintf($query,$args),$sqlConnection);
if (!$result)
return $result;

function postMessage($Poster,$Topic,$tID,$mID,$board)
$frBoards = array('101','105','169','171');
$adminBoards = array('68','3','44');
$boardsToExclude = array('2','20','69','125','172','173');
if (in_array($board,$boardsToExclude))
return false;
if (in_array($board,$frBoards))
$WriteLine = sprintf("12(O)10 Nouveau message par03 %s10 dans04 %s12\n",$Poster,$Topic,$tID,$mID);
$fileName = "c:\\Omnimaga IRC Spybot\\fposts";
else if (in_array($board,$adminBoards))
$WriteLine = sprintf("12(O)10 New post by03 %s10 in04 %s12\n",$Poster,$Topic,$tID,$mID);
$fileName = "c:\\Omnimaga IRC Spybot\\aposts";
$WriteLine = sprintf("12(O)10 New post by03 %s10 in04 %s12\n",$Poster,$Topic,$tID,$mID);
$fileName = "c:\\Omnimaga IRC Spybot\\posts";
$fp = fopen($fileName, 'w');

$curMID = 0;

$message = mysql_fetch_array(sql_query("SELECT `id_msg`,`id_topic`,`posterName` FROM `omnitempboard_messages` WHERE id_msg = (SELECT MAX(`id_msg`) FROM `omnitempboard_messages`)"));
$mID = $message['id_msg'];

if ($mID == $curMID)

$curMID = $mID;

$tID = $message['id_topic'];
$mPoster = $message['posterName'];

$topic = mysql_fetch_array(sql_query("SELECT `id_board`,`id_first_msg` FROM `omnitempboard_topics` WHERE `id_topic` = %s",$tID));
$tBoard = $topic['id_board'];
$tFirstID = $topic['id_first_msg'];

$fMessage = mysql_fetch_array(sql_query("SELECT `subject` FROM `omnitempboard_messages` WHERE `id_msg` = %s",$tFirstID));
$tTopicName = $fMessage['subject'];
echo sprintf("New Post by %s in %s Board ID:%s\n", $mPoster,$tTopicName,$tID,$mID,$tBoard);

Edit: I suppose I should attach a license to this. Do whatever you want with the code, but I'd like credit somewhere if you use it. If you wish to use it for a corporate or profitable purpose, contact me for permission.

If you look closely at OmnomIRC, you'll see two new links at the top.

One of them will say either "Fran├žais" or "English". This will toggle the chat between the English channel and the French channel (#omnimaga and #omnimaga-fr, respectively). With this, French users can now use OmnomIRC to have a conversation in their language of choice!

The other, "Disable OmnomIRC" makes OmnomIRC stop updating, so users who are on slow computers and/or slow internet connections no longer need to be placed in a group that completely disables OmnomIRC.

These settings are both cookie based, so they will not transfer between computers/browsers.

The third update is that I'm now using a different method for getting the messages to my server, so you no longer have to type 5 '\'s to get a single one.

Today's Logs, This Year's logs, and Java chat now all respect the current channel setting, and will forward to the proper page

Edit: If you are just minimizing OmnomIRC to disable it, could you please hit 'Disable' before minimizing it to help reduce load on my server.

UPDATE (23:29): OmnomIRC now supports highlighting. When someone says your nickname, text will show up in bold red color.

News / Incoming OmnomIRC downtime!
« on: April 08, 2011, 03:45:17 pm »
(I'm liking making threads right now)

OmnomIRC is going to be going down periodically over the weekend(4/8-4/10), as I will be rebuilding my server.

I'll also be fixing the permissions so the people who I e-mailed the login credentials to the FTP server can actually get on, so that they may help with OmnomIRC too.

Edit: I should also note that this will be affecting Spybot45 too.

Update: Ha, ninja'd that server move. I may have to do some tweaks and such over the next few days, but I'm not planning on any more major downtime.

Archive / Should I Allow colors in OmnomIRC?
« on: April 08, 2011, 03:42:13 pm »
Pretty simple poll, should I allow colors in OmnomIRC?

Other / Anonymous attacks on Sony
« on: April 06, 2011, 02:57:42 am »

Dun dun dunnnn

TL;DR: Sony abused the legal system, prosecuting numerous people, Anonymous responds with DDoSing

Humour and Jokes / Check what I found
« on: November 27, 2010, 01:14:09 am »
Found this in a local record store

Archive /,, or other?
« on: October 20, 2010, 09:52:00 pm »
What domain should I use?

I'm staying cheap, so it needs to be at a free registrar, like

I can use any domain they have open with ease, as long as it is 4 or over in length.

Archive /
« on: October 20, 2010, 08:44:59 pm »
I maded a tinyurl thingey ish thing for Spybot45, it'll now use instead of TinyURL. It'll ONLY work with Omnimaga links.

If anyone wants to make a link on it, here's the method:<threadid62>/<postid62>

where threadid62 is the thread number converted to base 62(converted, not base62 encoded), and postid62 is the post number converted to base62 :D

OmnomIRC Development / OmnomIRC/Spybot45 Development and Changes
« on: October 03, 2010, 05:15:46 am »
OmnomIRC changelog

Fix/Internal Change | New Feature
10-03-2010 Fixed Color bug
10-08-2010 Fixed merged line bug(for reals, this time)
10-19-2010 Updated urls for new cap-sensitive host
10-20-2010 Updated OmnomIRC to use the new addresses properly(open in current tab, basically)
10-21-2010 Updated OmnomIRC to link OmnomIRC users names to their profile.
                  Fixed semicolons breaking clickable links
                  Added support for HTTPS links
04-12-2011 Updated Userlist to show more info, and not say everyone is on IRC
04-14-2011 Fixed OmnomIRC breaking after a couple messages in Opera 11.10
                  Added a disable link to the top of OmnomIRC, this stops updating of OmnomIRC.
                  Added support for #omnimaga-fr
                  Updated links to support switching between
                  Fixed users with 1337 or whatever the other post count not being able to use OmnomIRC.
04-15-2011 Moved OmnomIRC to a new faster log parsing engine.
                  Fixed regex for usernames to be lazy when searching for '>' for username links
                  Fixed IE only being able to send any one message once(Cache issue)
                  Fixed borders showing in IE
                  Fixed scrollbar
                  Added Highlighting
04-16-2011 Added colored names, not sure if I'm going to keep 'em. (Later removed, then an option added to readd them)
05-01-2011 Fixed /me highlights
                  Fixed /me names
                  Fixed Javascript not sending to those with fewer than the minimum posts
                  Added alternating line colors for OmnomIRC
                  Fixed links not opening in new tabs
                  Fixed CSS for userlist to dot the links, instead of a full underline.
                  Hovering over an OmnomIRC name in the userlist now shows their last seen time.
                  Redid how Omnom stores info in cookies
                  Enabled the 'Options' page.
                       Colored Names toggle available
                       Highlight Bold toggle available
                       Highlight Red toggle available
                       Alternating Line Colors toggle available
                       Framework set up for future options and changes
                  Changed changelog layout
                  Disabled sending colors from OmnomIRC, due to spam
05-02-2011  Fixed '* test *' bugging out.
                  Fixed chat defaulting to English when text box defaults to French
                  Highlights now highlight based off of the first 4 characters in your name
                  Added tab completion for names
                  Removed bold on colored names
05-06-2011  Moved bulk of OmnomIRC to my server. There should be speed increases.
                  New domain, points to my server (, made for same-origin issues.
                  Fixed OmnomIRC defaulting to french output with english text
                  Fixed Omnom user search in IE. IE sucks.
05-13-2011  OmnomIRCv2 goes live, this is almost a complete rewrite.
                       Long polling for small updates
                       Radically reduced bandwidth consumption
                       Flexible engine
06-15-2011  OmnomIRC moved to PHP bot for IRC.
06-16-2011  #Omnimaga-fr fixed
                  Nifty channel support
                  Tab Completion restored
                  Userlist updates properly now
                  UTF-8 now properly supported
06-17-2011  Timestamps are now localized, in your timezone/format
                  CSS fix for large view
                  When users leave/join a different channel, it now shows the proper channel
                  Userlist now shows for all channels, even hidden ones
                  Users quitting/parting without a reason no longer show 'Undefined' as a reason
                  Enabled signature checks on messages again
                  Added support for arbitrary channels on OmnomIRC(/join @chan, /part @chan to control it
                  Added a command engine into OmnomIRC, I can now make client-side commands
                  OmnomIRC tab switching no longer reloads the entire iframe
                  Added cookie support for the channel list. I will eventually support adding/removing of official IRC chans to/from the list.
                  *sigh* IE support restored.
06-18-2011  Userlist is now caps-insensitive
                  Finished PM support. You can now use /msg to send a PM, /q(uery) to open a PM window.
                  Other tabs now turn red, ding, and notify(chrome only) when you are highlighted in them
                  Fixed insignificant HTML injection on outgoing PMs
06-21-2011  Fixed joins not being registered properly(causing quits to not register)
06-23-2011  Made it so tab does not stop the focus change if the line is blank
                  Relinked networks. All channels have an equivalent for the time being
06-26-2011  Stylesheet updates
                  OmnomIRC is now far more DOM compliant, allowing it to work properly in both IE and browsers that don't suck with almost the same code(styles are still a bit different
                  Added an option to toggle timestamps
                  Fixed cookies in IE
                  Fixed the message box losing focus in IE after sending a message
09-30-2011  Fixed caching in update.php
                  Made client update slower if it's not focused
                  update.php no longer terminates earlier than it has to
10-12-2011  Made OmnomIRC stop updating on error to avoid violent query storms
                  update.php terminates again after 25 seconds
                  Added feature where OmnomIRC updates new messages in your browsers' status bar

Miscellaneous / QR Barcode for Omnimaga WAP Version
« on: September 02, 2010, 03:06:31 pm »

Scanning this takes an android/windows mobile page to

Humour and Jokes / Heheheh
« on: September 01, 2010, 02:07:30 pm »
Check out my new avatar.

Pages: 1 2 [3] 4