<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://labs.coldacid.net" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Chris Charabaruk: Code Snippets</title>
 <link>http://labs.coldacid.net/code</link>
 <description>Loose code and work too small to warrant a proper project.</description>
 <language>en</language>
<item>
 <title>Number rounding extension method</title>
 <link>http://labs.coldacid.net/code/number-rounding-extension-method</link>
 <description>using System;

namespace TestApp
{
    public static class ExtensionMethods
    {
        public static int RoundOff (this int i)
        {
            return ((int)Math.Round(i / 10.0)) * 10;
        }
    }

    public class TestApp
    {
        public static void Main()
        {
            int roundedNumber = 236.RoundOff(); // returns 240
            int roundedNumber2 = 11.RoundOff(); // returns 10
            Console.WriteLine(roundedNumber);
            Console.WriteLine(roundedNumber2);
        }
    }
}
</description>
 <category domain="http://labs.coldacid.net/code/tags/net-35">.NET 3.5</category>
 <category domain="http://labs.coldacid.net/code/tags/extension-method">extension method</category>
 <category domain="http://labs.coldacid.net/code/tags/sample">sample</category>
 <category domain="http://labs.coldacid.net/code/tags/stack-overflow">Stack Overflow</category>
 <enclosure url="http://labs.coldacid.net/system/files/roundoff.exe" length="4096" type="application/x-msdos-program" />
 <pubDate>Tue, 03 Mar 2009 07:32:24 -0800</pubDate>
 <dc:creator>Chris Charabaruk</dc:creator>
 <guid isPermaLink="false">2 at http://labs.coldacid.net</guid>
</item>
<item>
 <title>Anti-Telus filter</title>
 <link>http://labs.coldacid.net/code/anti-telus-filter</link>
 <description>#!/usr/bin/perl

$user = &#039;REDIR@EXAMPLE.ADDRESS&#039;;
$pass = &#039;PASSWORD&#039;;
$host = &#039;POP3.SERVER.ADDRESS&#039;;

%redir = (
    &#039;sender@example.address&#039; =&gt; &#039;reciever@example.address&#039;
);

$sendmail = &#039;/usr/sbin/sendmail -t&#039;;
#DEBUG $sendmail = &#039;cat &gt;&gt;test2.txt&#039;;

use Mail::POP3Client;

# connection
$pop = new Mail::POP3Client(HOST =&gt; $host);
$pop-&gt;User($user);
$pop-&gt;Pass($pass);

$pop-&gt;Connect() &gt;= 0 || die $pop-&gt;Message();

# loop through messages
for ($i = 1; $i &lt;= $pop-&gt;Count(); $i++) {
    %head = ();

    foreach ($pop-&gt;Head($i)) {
        /^(From|Subject|Content-type):\s+(.+)/i;
        $head{lc($1)} = $2;
    }
#    print &quot;From: $head{&#039;from&#039;}\n&quot;;
#    print &quot;Subject: $head{&#039;subject&#039;}\n&quot;;
#    print &quot;Content-type: $head{&#039;content-type&#039;}\n&quot;;

    $head{&#039;from&#039;} =~ /&lt;(.+)&gt;$/;
    $email = $1;

    $body = $pop-&gt;Body($i);
    $body =~ s/Email on the go, sent by TELUS//mi;

    open(SENDMAIL, &quot;|$sendmail&quot;) or die &quot;Cannot open $sendmail: $!\n&quot;;
    print SENDMAIL &quot;From: $head{&#039;from&#039;}\nReply-to: $head{&#039;from&#039;}\n&quot;;
    print SENDMAIL &quot;Subject: $head{&#039;subject&#039;}\n&quot;;
    print SENDMAIL &quot;To: $redir{$email}\n&quot;;
    print SENDMAIL &quot;Content-type: $head{&#039;content-type&#039;}\n\n&quot;;
    print SENDMAIL $body;
    close(SENDMAIL);

#    print $body
#    print &quot;\n\n=====\n\n&quot;;

    $pop-&gt;Delete($i);
}

$pop-&gt;Close;
</description>
 <category domain="http://labs.coldacid.net/code/tags/email">email</category>
 <category domain="http://labs.coldacid.net/code/tags/filter">filter</category>
 <category domain="http://labs.coldacid.net/code/tags/hack">hack</category>
 <category domain="http://labs.coldacid.net/code/tags/mobile-email">mobile email</category>
 <category domain="http://labs.coldacid.net/code/tags/telus">Telus</category>
 <pubDate>Fri, 13 Feb 2009 12:37:47 -0800</pubDate>
 <dc:creator>Chris Charabaruk</dc:creator>
 <guid isPermaLink="false">1 at http://labs.coldacid.net</guid>
</item>
</channel>
</rss>
