<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Emilio's Blog</title>
	<link>http://e-falcon.net/blog</link>
	<description>Everything and anything you probably never cared to know...</description>
	<pubDate>Fri, 31 Aug 2007 20:50:13 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
	<language>en</language>
			<item>
		<title>OpenDNS</title>
		<link>http://e-falcon.net/blog/index.php/2007/08/31/opendns/</link>
		<comments>http://e-falcon.net/blog/index.php/2007/08/31/opendns/#comments</comments>
		<pubDate>Fri, 31 Aug 2007 20:50:13 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2007/08/31/opendns/</guid>
		<description><![CDATA[An interesting find. OpenDNS is a free DNS provider: http://www.opendns.com/
]]></description>
			<content:encoded><![CDATA[<p>An interesting find. OpenDNS is a free DNS provider: http://www.opendns.com/</p>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2007/08/31/opendns/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Grant access to wget and curl to user x</title>
		<link>http://e-falcon.net/blog/index.php/2006/11/10/grant-access-to-wget-and-curl-to-user-x/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/11/10/grant-access-to-wget-and-curl-to-user-x/#comments</comments>
		<pubDate>Fri, 10 Nov 2006 08:02:02 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/11/10/grant-access-to-wget-and-curl-to-user-x/</guid>
		<description><![CDATA[Q: What command do I need to run as root to grant access to wget and curl to user x?
A: Curl and wget is locked down on the server. You need to add the user x to both of these groups in order grant them the necessary privileges.
Both the steps below can be followed for [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Q: What command do I need to run as root to grant access to wget and curl to user x?</strong></p>
<p><strong>A: </strong>Curl and wget is locked down on the server. You need to add the user x to both of these groups in order grant them the necessary privileges.</p>
<p>Both the steps below can be followed for this:<br />
1) vi /etc/group and add the user x to the group seperated by comma.( this will look like curl:x:32474:x,y)<br />
2) Use the command gpasswd; syntax: gpasswd -a x curl<br />
note: use gpasswd -d x curl to remove x from curl.</p>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/11/10/grant-access-to-wget-and-curl-to-user-x/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Protected: phplist customization</title>
		<link>http://e-falcon.net/blog/index.php/2006/11/09/phplist-customization/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/11/09/phplist-customization/#comments</comments>
		<pubDate>Thu, 09 Nov 2006 23:26:23 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/11/09/phplist-customization/</guid>
		<description><![CDATA[There is no excerpt because this is a protected post.]]></description>
			<content:encoded><![CDATA[<form action="http://e-falcon.net/blog/wp-pass.php" method="post">
<p>This post is password protected. To view it please enter your password below:</p>
<p><label>Password:<br />
<input name="post_password" type="password" size="20" /></label><br />
<input type="submit" name="Submit" value="Submit" /></p></form>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/11/09/phplist-customization/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Create web page in CakePHP</title>
		<link>http://e-falcon.net/blog/index.php/2006/11/07/create-web-page-in-cakephp/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/11/07/create-web-page-in-cakephp/#comments</comments>
		<pubDate>Tue, 07 Nov 2006 17:12:02 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/11/07/create-web-page-in-cakephp/</guid>
		<description><![CDATA[To create a webpage in cake:
Basically, everything you do has to be an action in a controller. An &#8220;Action&#8221; is a function in a controller.
urls are formed as follows:
http://www.site.com/path_to_cake_installation/action/controller/param1/param2/param3/param4/etc&#8230;
so if I visit:
http://www.site.com/sphere/people/view/
you&#8217;re saying that there&#8217;s a people controller with action called &#8216;view&#8217;. The action is a function within a controller class.
So to define a view [...]]]></description>
			<content:encoded><![CDATA[<p><strong>To create a webpage in cake:</strong></p>
<p>Basically, everything you do has to be an action in a controller. An &#8220;Action&#8221; is a function in a controller.<br />
urls are formed as follows:<br />
http://www.site.com/path_to_cake_installation/action/controller/param1/param2/param3/param4/etc&#8230;</p>
<p>so if I visit:<br />
http://www.site.com/sphere/people/view/</p>
<p>you&#8217;re saying that there&#8217;s a people controller with action called &#8216;view&#8217;. The action is a function within a controller class.<br />
So to define a view action in a People controller, you would place the following code in sphere/app/controllers/people_controller.php:</p>
<p>< ?php<br />
class PeopleController extends AppController<br />
{<br />
var $name = 'People';<br />
function view()<br />
{<br />
// programming logic goes here.<br />
}<br />
}<br />
?></p>
<p>For this respective controller action to be rendered, you must create a view by placing the following code in sphere/app/views/people/view.thtml:</p>
<h1>Hello world</h1>
<p>The above view would be rendered by cake when the people controller is called with the view action.</p>
<p><strong>SPECIAL CASES:<br />
</strong></p>
<p>If you visit: http://www.site.com/sphere/people/, with no action defined, then the index() action is called. To define the index html contents, put the following in your controller:<br />
function index()<br />
{<br />
}<br />
and define the contents in index.thtml in app/views/people/</p>
<p><strong>PAGES CONTROLLER:<br />
</strong></p>
<p>For static pages that require no backend and that don&#8217;t really belong in a controller, there is a &#8220;PagesController&#8221; defined in cake that is accessed as follows:<br />
http://www.site.com/sphere/pages/display/page1/<br />
where page1 can be defined in<br />
/app/views/pages/page1.thtml<br />
page1.thtml can be called anything (say, poopoo.thtml) and will be accessed by visiting:<br />
http://www.site.com/sphere/pages/display/poopoo/<br />
I don&#8217;t know that you&#8217;ll be making any static pages though.<br />
Either way, you can then define what&#8217;s called &#8220;routes&#8221; to allow http://www.site.com/sphere/pages/display/PAGE_NAME to be visited simply by accessing http://www.site.com/sphere/PAGE_NAME/<br />
The route should be defined by default. So you should be able to access http://www.site.com/sphere/pages/display/poopoo/ by going to http://www.site.com/sphere/poopoo/</p>
<p><strong>OTHER STUFF<br />
</strong></p>
<p>Oh, and be sure to read this for how to name classes and files so that cake finds them:<br />
http://manual.cakephp.org/appendix/conventions<br />
and if you want to render an element in every page (say, a menu), donâ€™t use include(), instead create an element. To see an example, look at the following files:<br />
app/views/auth/index.thtml (and other files in this folder)<br />
app/views/elements/authz/menu.thtml<br />
Also, read http://manual.cakephp.org/chapter/helpers<br />
you HAVE to use the < ?=$html->link()?> and < ?=$html->url()?> functions to do relative linking, and it saves you a bunch of typing when you get used to it (5 min learning curve).<br />
I think that should cover everythingâ€¦ You should be an up and coming cake pro in about 20 mins.</p>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/11/07/create-web-page-in-cakephp/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Configuring a CVS server on Win XP Pro</title>
		<link>http://e-falcon.net/blog/index.php/2006/09/26/configuring-a-cvs-server-on-win-xp-pro/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/09/26/configuring-a-cvs-server-on-win-xp-pro/#comments</comments>
		<pubDate>Tue, 26 Sep 2006 22:57:06 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/09/26/configuring-a-cvs-server-on-win-xp-pro/</guid>
		<description><![CDATA[A quick guide written mainly to help me set up the CVS server if ever something happened to my current installation. It&#8217;s not complete and might not apply to you, but might help you out if you&#8217;re also looking for a relatively secure, internet-accessible CVS setup on an XP Pro box. I opted for using [...]]]></description>
			<content:encoded><![CDATA[<p>A quick guide written mainly to help me set up the CVS server if ever something happened to my current installation. It&#8217;s not complete and might not apply to you, but might help you out if you&#8217;re also looking for a relatively secure, internet-accessible CVS setup on an XP Pro box. I opted for using CVSNT with sserver protocol.</p>
<ol>
<li>Download <a title="CVSNT" href="http://web.telia.com/~u86216177/cvsnt-2.5.3.2382.zip">CVSNT</a></li>
<li>Run installer, following <a href="http://web.telia.com/~u86216177/InstallCVSNT25.html#InstallSteps">this tutorial</a></li>
<li>I removed simple file sharing as instructed by the tutorial but did not start messing around with user accesses/priviledges and it still worked fine.</li>
<li>Follow the tutorial instruction to the letter, using the sserver protocol.</li>
<li>I created 2 Windows users using the Computer Management administrative tool, as shown in the tutorial, and then linked the cvsuser account to 2 different CVS users with CVS aliasing (<code>cvs passwd -r  -a )</code></li>
<li>I created a folder on my desktop and Using TortoiseCVS I created a new module and entered my CVS server&#8217;s info.</li>
<li>Voila, it worked!</li>
<li>Consider using a fixed IP to allow Internet access, or use something like no-ip.org.</li>
<li>Open up TCP port 2401 on your router to allow remote access</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/09/26/configuring-a-cvs-server-on-win-xp-pro/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Protected: checkup on ss5</title>
		<link>http://e-falcon.net/blog/index.php/2006/07/24/checkup-on-ss5/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/07/24/checkup-on-ss5/#comments</comments>
		<pubDate>Mon, 24 Jul 2006 04:54:31 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/07/24/checkup-on-ss5/</guid>
		<description><![CDATA[There is no excerpt because this is a protected post.]]></description>
			<content:encoded><![CDATA[<form action="http://e-falcon.net/blog/wp-pass.php" method="post">
<p>This post is password protected. To view it please enter your password below:</p>
<p><label>Password:<br />
<input name="post_password" type="password" size="20" /></label><br />
<input type="submit" name="Submit" value="Submit" /></p></form>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/07/24/checkup-on-ss5/feed/</wfw:commentRss>
		</item>
		<item>
		<title>I&#8217;ve moved!</title>
		<link>http://e-falcon.net/blog/index.php/2006/06/28/ive-moved/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/06/28/ive-moved/#comments</comments>
		<pubDate>Wed, 28 Jun 2006 04:53:16 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Everything and anything]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/06/28/ive-moved/</guid>
		<description><![CDATA[Thanks to all that dropped by to help me move out 2 weekends ago. My place is still a mess but at least we&#8217;re in our new appartment! Drop by if you don&#8217;t mind seeing a giant mess consisting of large boxes, unassembled furniture scattered cat fur (yay!).
You can see where the appartment is located [...]]]></description>
			<content:encoded><![CDATA[<p>Thanks to all that dropped by to help me move out 2 weekends ago. My place is still a mess but at least we&#8217;re in our new appartment! Drop by if you don&#8217;t mind seeing a giant mess consisting of large boxes, unassembled furniture scattered cat fur (yay!).</p>
<p>You can <a title="google maps" href="http://maps.google.com/maps?f=q&#038;hl=en&#038;q=765+Rue+du+Couvent,+Montr%C3%A9al,+QC,+Canada&#038;ie=UTF8&#038;om=1">see where the appartment is located using Google Maps</a>.</p>
<p>Check out pics from the move in my <a title="pics of the move" href="http://www.e-falcon.net/friends/">friends section</a>. Username/password: friends.</p>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/06/28/ive-moved/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How to make form data safe for Database storage</title>
		<link>http://e-falcon.net/blog/index.php/2006/06/06/how-to-make-form-data-safe-for-database-storage/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/06/06/how-to-make-form-data-safe-for-database-storage/#comments</comments>
		<pubDate>Tue, 06 Jun 2006 19:14:35 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/06/06/how-to-make-form-data-safe-for-database-storage/</guid>
		<description><![CDATA[Prevent malicious DB injection and faulty automated queries. Read http://us3.php.net/manual/en/function.mysql-real-escape-string.php
In particular, check out the section describing the function: function quote_smart($value)
]]></description>
			<content:encoded><![CDATA[<p>Prevent malicious DB injection and faulty automated queries. Read <a target="_blank" href="http://us3.php.net/manual/en/function.mysql-real-escape-string.php">http://us3.php.net/manual/en/function.mysql-real-escape-string.php</a></p>
<p>In particular, check out the section describing the function: <code><span class="html"></span><span class="keyword">function </span><span class="default">quote_smart</span><span class="keyword">(</span><span class="default">$value</span><span class="keyword">)</span></code></p>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/06/06/how-to-make-form-data-safe-for-database-storage/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Display submitted form</title>
		<link>http://e-falcon.net/blog/index.php/2006/06/06/display-submitted-form/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/06/06/display-submitted-form/#comments</comments>
		<pubDate>Tue, 06 Jun 2006 14:49:55 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/06/06/display-submitted-form/</guid>
		<description><![CDATA[When displaying submitted form elements back to the user back to the user (for confirmation or whatnot), use PHP&#8217;s htmlspecialchars() to properly encode special characters (especially useful for French or non-english forms as it takes care of properly displaying all the accented characters)
]]></description>
			<content:encoded><![CDATA[<p>When displaying submitted form elements back to the user back to the user (for confirmation or whatnot), use <a target="_blank" href="http://ca3.php.net/manual/en/function.htmlspecialchars.php">PHP&#8217;s htmlspecialchars()</a> to properly encode special characters (especially useful for French or non-english forms as it takes care of properly displaying all the accented characters)</p>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/06/06/display-submitted-form/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lesson of the day&#8230;don&#8217;t run an open proxy</title>
		<link>http://e-falcon.net/blog/index.php/2006/06/06/lesson-of-the-daydont-run-an-open-proxy/</link>
		<comments>http://e-falcon.net/blog/index.php/2006/06/06/lesson-of-the-daydont-run-an-open-proxy/#comments</comments>
		<pubDate>Tue, 06 Jun 2006 03:27:29 +0000</pubDate>
		<dc:creator>Emil</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://e-falcon.net/blog/index.php/2006/06/06/lesson-of-the-daydont-run-an-open-proxy/</guid>
		<description><![CDATA[What not to do:

Rent out a new server
Install a new proxy you&#8217;re unfamiliar with and run a quick install
Test the proxy out with mIRC, for just long enough to get scanned and marked as an open relay for spammers
Leave the server unattended for 2 days or so&#8230;

45,000 spam emails and 7 GB of bandwidth consumption [...]]]></description>
			<content:encoded><![CDATA[<p>What not to do:</p>
<ol>
<li>Rent out a new server</li>
<li>Install a new proxy you&#8217;re unfamiliar with and run a quick install</li>
<li>Test the proxy out with mIRC, for just long enough to get scanned and marked as an open relay for spammers</li>
<li>Leave the server unattended for 2 days or so&#8230;</li>
</ol>
<p>45,000 spam emails and 7 GB of bandwidth consumption later, expect VERY angry emails from server admins at your datacenter&#8230;</p>
<p>You live, you learn&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://e-falcon.net/blog/index.php/2006/06/06/lesson-of-the-daydont-run-an-open-proxy/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
