<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Quinterox</title>
	
	<link>http://www.quinterox.com/content</link>
	<description>Cesar Quinteros</description>
	<lastBuildDate>Wed, 22 Sep 2010 04:07:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Quinterox" /><feedburner:info uri="quinterox" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>Quinterox</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Limited Data Plans – Hindering The Internet</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/EHUh_3o-0HY/</link>
		<comments>http://www.quinterox.com/content/blog/limited-data-plans-hindering-the-internet/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 16:04:01 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[blog internet data plans]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=843</guid>
		<description><![CDATA[Are the limited data plans recently introduced to consumers a bad thing or a good thing? I think they will hinder the internet! Check out why.]]></description>
			<content:encoded><![CDATA[<h1>The Past</h1>
<p>Over a decade ago internet providers made the bold move of taking internet access &#8220;off the clock&#8221; by eliminating time restrictions on their service. This along with the ever-evolving connections made the internet  the ideal canvas for creative development. Suddenly the average person was able to generate content that would reach a vast amount of people. This development paved the way for many entrepreneurs. Life on the internet was good, content was free-flowing, accessible, and very cheap to generate. </p>
<h1>Today</h1>
<p>As of June 7, 2010 AT&#038;T introduced two new data plans (and so did many other providers) they said would encourage many users to get a smartphone because they were &#8220;inexpensive&#8221;. While doing this however they discontinued their unlimited data plan forcing new users to pick between a 200 MB plan or a 2 GB plan. Those who wished to keep their unlimited plan could do so as long as they kept their plan (or AT&#038;T allows them to). Though a large percent of data users do not normally go over the 2 GB allowance, the limitation will start to make them think twice before watching a video on youtube, downloading a new app, or watching a streaming movie. And in today&#8217;s  ever-evolving world of mobile devices data transfer will play a larger, more important role as new applications and features are developed.</p>
<h1>Tomorrow</h1>
<p>In the long run the limitations set on users via data caps will hinder the development of the internet and of mobile devices. Users, as I said before will have to think twice about doing anything on their phone that will require a hefty amount of data usage. As time passes, the restriction will offset more and more users to using a wifi connection instead, if enough of this happens there is a possibility ISPs will raise their prices or cap users. And hey, they have already started! Just check out <a href="http://gizmodo.com/5043253/comcasts-250gb-data-caps-now-official-starting-in-october">Gizmodo&#8217;s article</a>. Agh! </p>
<p>So where do you stand? Do you think these new and &#8220;affordable&#8221; plans are good? How much data do you normally use? I seem to be using about 3-4 GB on monthly on my iPhone.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/limited-data-plans-hindering-the-internet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/blog/limited-data-plans-hindering-the-internet/</feedburner:origLink></item>
		<item>
		<title>Twitter: More Than Just Ham Sandwiches</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/TS_kT4xPMVg/</link>
		<comments>http://www.quinterox.com/content/blog/twitter-more-than-just-ham-sandwiches/#comments</comments>
		<pubDate>Fri, 23 Apr 2010 04:48:35 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[twitter uses]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=802</guid>
		<description><![CDATA[Twitter has been ridiculed by many because of the abundance of trivial tweets that flow through its veins. The truth is that Twitter is a lot more useful than what many of us have come to think or been led to believe by our friends. In this blog post I will explain how to use [...]]]></description>
			<content:encoded><![CDATA[<p>Twitter has been ridiculed by many because of the abundance of trivial tweets that flow through its veins. The truth is that Twitter is a lot more useful than what many of us have come to think or been led to believe by our friends. In this blog post I will explain how to use Twitter for everyday purposes and hopefully show that it is much more than posts like &#8220;eating a ham sandwich&#8221;. </p>
<p>Before you go on. I will advise you that in order to make the most use of Twitter it is my opinion that it is best to access it via a smartphone. Portability and accessability are key. You will make best of use of Twitter when you have quick access to it and not as much when you have to rush to a computer. Of course a few minutes a few times a day to read a couple of tweets will help too. I find that a lot of the people that use the website are new to the service and usually wind up dropping it because they don&#8217;t access it as often and therefore do not get the most they could out of if.    </p>
<h2>Breaking News</h2>
<p>While you indeed have those people that tweet their every move, Twitter can have an actual use in our everyday  lives. A real case scenario is, and has been seen used by all of us, the use of Twitter during catastrophes. We&#8217;ve all seen CNN, FOX, and the other networks start reading tweets during this important time. The reason is mainly because Twitter can resonate the voice of the people in the disposition in real-time. Way ahead of any news crew. And it is my opinion that the view of someone living it holds way more value than that of someone who&#8217;s job is to intrigue you with sensationalism to get good ratings. So while it is a good idea to follow your favorite local news network on Twitter for the latest headlines and links to stories, it is possibly a good idea, to save a search on your Twitter account for the words &#8220;earthquake in&#8221;, &#8220;tsunami in&#8221;, or &#8220;tsunami in&#8221;, as well as keeping an eye on the Twitter trends for anything intriguing. This way surely when you hear someone say something in the office about an earthquake somewhere you can tune to Twitter for info, reactions and links to the story often way faster than doing a Google search. </p>
<h2>Following Your Career</h2>
<p>Another great way to use Twitter is to follow people whom are important or iconic in your career. For example if you are a designer you might follow a designer you might consider inspiring or interesting or even follow a website that showcases a great artist&#8217;s work every day. There are so many possibilities. </p>
<p>So what if you aren&#8217;t sure of what person to follow? Well on Twitter there are also Lists of people to follow which are created by users. All it is is a group of people with something in common. It could be Artists, Bloggers, Activists etc. Like following a user you may follow one of these lists if you find one that suits your needs. So how do you find a list to follow? <a href="http://www.listorious.com" target="_blank">Listorious</a> is just one of a few which can help you find the right list. Also to learn more about lists visit <a href="http://mashable.com/2009/11/02/twitter-lists-guide/" target="_blank">this article on Mashable</a>.</p>
<p>Two more things to keep in mind to help you keep your sanity is that it is okay to not read all the new tweets from the people you follow. Also don&#8217;t feel forced to Tweet your every move, doing so might also make you lose interest. Keep yourself informed, keep yourself together.   </p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/twitter-more-than-just-ham-sandwiches/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/blog/twitter-more-than-just-ham-sandwiches/</feedburner:origLink></item>
		<item>
		<title>Google Island – Fiber short of Paradise?</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/XkGdt2ZHvjk/</link>
		<comments>http://www.quinterox.com/content/blog/google-island-fiber-short-of-paradise/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 23:33:21 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[google island fiber sarasota]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=788</guid>
		<description><![CDATA[I went to check out Google Island this weekend to see what it was about. I brought back some pictures!]]></description>
			<content:encoded><![CDATA[<p>I am a Google fanboy. Regardless of the crazy stuff they seldomly pull I still think they are great. But you know what else I think is great? Sarasota. I live in Bradenton but I often travel to Sarasota with my wife and child to get some life&#8217;s stress out. The reason: simply because it&#8217;s paradise. And what is paradise without Google Fiber? Nothing. Exactly!</p>
<p>Today I went out to quench my curiosity by seeing exactly what Google Island a.k.a City Island looks like. It was beautiful! So take this post as my personal nomination to bring Google Fiber to Sarasota. And please keep in mind: I don&#8217;t even live there! I think it&#8217;d be the perfect complement. Also I would like to point out that this is a section of City Island. I am sure the sections I was not able to visit is just as great.     </p>
<p>So here are some pictures (pardon my shoddy image resizing) of what I saw so that you could experience it just a bit. I had a small video as well. Unfortunately I incurred an error during it&#8217;s upload from my phone and it was gone. Sad moment. Bad, bad technology!</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/1.jpeg" alt="Google Island Saratora" title="Google Island Sarasota"  width="480" height="360" class="aligncenter size-full wp-image-791" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/2.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-792" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/3.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-793" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/4.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="640" class="aligncenter size-full wp-image-794" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/5.jpeg" alt="Google Island Saratora" title="Google Island Sarasota"  width="480" height="640" class="aligncenter size-full wp-image-795" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/6.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-796" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/7.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-797" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/8.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-798" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/google-island-fiber-short-of-paradise/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/blog/google-island-fiber-short-of-paradise/</feedburner:origLink></item>
		<item>
		<title>Google Buzz- Great Social Medium or Great Stalker Tool</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/9FjhrIPVXoU/</link>
		<comments>http://www.quinterox.com/content/blog/google-buzz-great-social-medium-or-great-stalker-tool/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 06:27:15 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=771</guid>
		<description><![CDATA[Since Google Buzz's implementation there have been good and bad reviews. This is my view on the whole thing.]]></description>
			<content:encoded><![CDATA[<h3>Love/ Hate Relationship</h3>
<p>A couple of weeks ago Google launched one of its greatest products thus far: Google Buzz. People like myself praised Google for the introduction of this social medium while others criticized it. Those who criticized it had a very good reason to: the Gmail user&#8217;s contacts email addresses were being published on their Google public profiles. This was probably due to the fact that Google developers had tested Buzz between themselves during its development in a corporate environment and thus saw no need for privacy. Though kind of understandable it still does not let Google off the hook in my and many other people&#8217;s eyes. Privacy is something all of us hold dear, and though it is hard to be private on the internet we certainly want to separate what our friends can see versus what our co-workers, bosses and stalkers can see. This separation was  not considered upon Google&#8217;s implementation of Buzz. The lack of privacy controls made a lot of people unhappy and brought Google a few steps back in gaining the user&#8217;s trust. </p>
<p>About two days later Google made some changes to the Buzz application allowing user to have more control over their privacy. This quick response shows, or at least is interpreted by myself that Google cares about its users and I applaud that. </p>
<h3>Looking Forward>>></h3>
<p><b>So after Google tweaks, buffs, and polishes Buzz what will we have? What do you think? Will it fail? Will it replace Facebook, Twitter and friends? Or will it enable communication between all these websites?</b><br />
<br />
I go for the last one! I think this will push social websites to develop ways to &#8220;speak&#8221; between each other and will in the end prove to be a breakthrough. Google, you win! Please just try not to compromise your user&#8217;s privacy anymore or your users won&#8217;t trust you. Like Wallstreet you are also not too big to fail. : )</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/google-buzz-great-social-medium-or-great-stalker-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/blog/google-buzz-great-social-medium-or-great-stalker-tool/</feedburner:origLink></item>
		<item>
		<title>AJAX In A Nutshell- Learning GET</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/MFdypV7T3xw/</link>
		<comments>http://www.quinterox.com/content/code/ajax-in-a-nutshell/#comments</comments>
		<pubDate>Fri, 07 Aug 2009 04:13:11 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[get]]></category>
		<category><![CDATA[simple ajax]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=685</guid>
		<description><![CDATA[A simple explanation and demo of how to execute the GET method using AJAX.]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;ve been trying to drill the super simple concept of AJAX into my head for months (sadly) now. Anyways I think I finally got it down enough to explain it. I know there are libraries out there that can do it for you without any thinking at all. But it is my belief that a developer MUST understand how to build an application&#8217;s functionality from scratch if he/she has to. In this post I will explain how to use an XMLHttpRequest object in conjunction with the form&#8217;s &#8216;GET&#8217; method to retrieve data from the server. In our example application we will push a button passing the message &#8216;Marco&#8217; to the server which will then return the message &#8216;Polo&#8217; back to us. So let&#8217;s begin!</p>
<h2>1. Make XMLHttpRequest Object</h2>
<p>This is the most important thing. It is what AJAX is all about, it is the object that fetches stuff for you to display on your web pages. Without it (and well along with the user having JavaScript enabled) basic AJAX is not possible. I know there are &#8220;workarounds&#8221; that might give the impression of AJAX but I am just talking about straight-up AJAX. Anyways, the XMLHttpRequest object is important, so it is understandable it must work on every browser. I hope I didn&#8217;t lose you. This is how we do it.</p>
<pre>
var req = null; // XMLHttpRequest Object 

var init = function() {
   try { // firefox, safari, ie7
   req = new XMLHttpRequest(); }catch(e) {
   try { // later ie
   req = new ActiveXObject('MSXML2.XMLHTTP');}catch(e) {
   try { //early ie
   req = new ActiveXObject('Microsoft.XMLHTTP');} catch(e) {
   return false;}}}
   return req;
}
</pre>
<p>
So what did we do here? If you look past all the &#8216;try&#8217; you notice that we try to declare the &#8216;req&#8217; object as whatever form of XMLHttpRequest is available depending on your browser. In older versions of Internet Explorer AJAX occurs in the form of ActiveXObjects. This explains most of the clutter in the preceding code.</p>
<h2>2. Open The XMLHttpRequest</h2>
<p>
So you made the object now you need to tell it what to fetch. For this we use the open method of the XMLHttpRequest object which takes three parameters: method (get or post); url, and whether our request is asynchronous or not. What asynchronous means is allowing to happen at different times. </p>
<p>
Additionally you have to execute the &#8216;send&#8217; method of the request object  passing a null value. The &#8216;send&#8217; method ships our request to the server, the value it takes is used for POST requests which is why we pass null this time. This is what it looks like.</p>
<pre>
req.open('GET', 'index.php?call=Marco', true);
req.send(null);
</pre>
<p>
For simplicity&#8217;s sake in our example we are going to use the form&#8217;s &#8216;GET&#8217; method to request text from the server as opposed to XML. Using the form&#8217;s &#8216;POST&#8217; method is a little more difficult and requires additional code. I will later explain how that is done in another post.</p>
<p>
Another thing you might want to know is that some browsers might try to cache the response you received from the server. So no matter how different the response you are expecting is, it returns the same one always. To avoid this you might want to try append the time the request was made to your &#8216;URL&#8217; string as so.</p>
<pre>
var time = new Date();
req.open('GET', 'index.php?call=Marco&#038;time=' + time.getTime(), true);
req.send(null);
</pre>
<h4>Note</h4>
<p>
Also please note that AJAX will only work within the server that made the request so make sure the &#8216;url&#8217; value you pass is a local one. Cross server AJAX requests are not readily possible for security reasons but can be allowed through additional server configuration.</p>
<h2>3. Check For The Request&#8217;s State Change</h2>
<p>
Now the next few steps might get a tiny bit complicated. I will try extra hard to simplify them. <br />
First we want to try to monitor the &#8216;onreadystatechange&#8217; event of the XMLHttpRequest. The &#8216;onreadystatechange&#8217; event tells us when there is a change of state in our request as the name already suggests. So we are going to listen in by making an event handler for it.</p>
<pre>
req.onreadystatechange = function() {
     ...
}
</pre>
<p>
However the &#8216;onreadystatechange&#8217; event handler itself won&#8217;t really tell us anything. The reason being that there are four states the request can move around from which won&#8217;t necessarily hold the data we want.  They are listed below. For our purposes we only care about state #4 which means our data is ready for our viewing.</p>
<ul>
<li>Uninitialized (0)</li>
<li>Loading (1)</li>
<li>Loaded (2)</li>
<li>Interactive (3)</li>
<li>Completed (4)</li>
</ul>
<p>So in order to check when our state is at 4, we create a simple conditional statement within our event listener. </p>
<pre>
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        ...
    }
}
</pre>
<p>
But again we need more since it is not enough for us to know when AJAX has something to show us. The reason is that it might have encountered an error and we wouldn&#8217;t want to show that to the users right? So now we must check to see if everything worked out right and that there were no server errors or anything of the sort. There are two ways to do this. One is to make sure our request&#8217;s status (req.status) is greater than or equal to 200 and that it is also less than or equal to 299. Together with the rest of our state change code it would look like this.
</p>
<pre>
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        if (req.status >= 200 &#038;&#038; req.status <= 299) {
            ...
        }
    }
}
</pre>
<p>
A more simple alternative to the last step we did is to check if the 'statusText' property of our request simply returned 'OK'. For the sake of our Ajax In A Nutshell post name we will stick with the alternative. This is what that looks like.</p>
<pre>
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        if(req.statusText == 'OK') {
            ...
        }
    }
}
</pre>
<p>Now wasn't that a lot easier?</p>
<h2>4. Retrieve Your Data</h2>
<p>Finally we grab our much awaited data which will be stored in our request's 'responseText' property. I suggest you structure your main function to accept a handler function for the data. This handler function would then either further process the data and or place it on the HTML document for viewing. In our example we are going to be passing our data to another function (our handler function) which will display it on a div in our HTML document. Below is what the passing of our data to the 'handler' function will look like along with our state change code from before.</p>
<pre>
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        if(req.statusText == 'OK') {
            dataHandler(req.responseText);
        }
    }
}
</pre>
<p>
So there it is. Getting your data from the server wasn't that hard. Hopefully you are not like me and actually get it on the first few reads. </p>
<h2>Sample Please?</h2>
<p>
I have built a sample page and script that uses this code to submit a form to the server. The form will just submit the hidden value "Marco". The server will then respond "Polo" which will be displayed on a DIV below the button. </p>
<p>
You can download the sample files here:  <a class="downloadlink" href="http://www.quinterox.com/content/wp-content/plugins/download-monitor/download.php?id=ajax_sample.zip" title="Version1.0 downloaded 28 times" >ajax_sample (28)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/code/ajax-in-a-nutshell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/code/ajax-in-a-nutshell/</feedburner:origLink></item>
		<item>
		<title>Enable And Disable Directory Browsing</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/2YRxGxj6Lg8/</link>
		<comments>http://www.quinterox.com/content/code/enable-and-disable-directory-browsing/#comments</comments>
		<pubDate>Sat, 25 Jul 2009 07:32:15 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[add index]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[remove index]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=680</guid>
		<description><![CDATA[Adding and removing Linux server file indexes.]]></description>
			<content:encoded><![CDATA[<p>When setting up the structure to my website that includes private and public files I often found a need for a way for certain folders NOT to display a list of its containing files. After searching the web I found it well as a nice link with some .htaccess know how.</p>
<h3>Removing Indexes</h3>
<pre>
Options -Indexes
</pre>
<p></p>
<h3>Adding Indexes</h3>
<pre>
Options +Indexes
</pre>
<p>
As simple as that! Here is the link I found that might come in pretty handy.<br />
<a href="http://www.hostingmanual.net/other/htfun.shtml">http://www.hostingmanual.net/other/htfun.shtml</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/code/enable-and-disable-directory-browsing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/code/enable-and-disable-directory-browsing/</feedburner:origLink></item>
		<item>
		<title>JavaScript Submitted Form</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/lFVRGxfnqwQ/</link>
		<comments>http://www.quinterox.com/content/code/javascript-submitted-form/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 03:30:26 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[form]]></category>
		<category><![CDATA[submit]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=677</guid>
		<description><![CDATA[How to submit a form using JavaScript.]]></description>
			<content:encoded><![CDATA[<p>Simply this is the code for calling JavaScript to submit a form. One good use is in case you want your submit button to be an anchored image and not a regular form button. You can attach this function to the link/ image and let it do its thing. I am currently learning Ajax so I am using the script to submit my form but not redirect or refresh the page.</p>
<pre>
document.forms['myForm'].onsubmit = function() {
       // Your code
}
</pre>
<p>Or</p>
<pre>
document.forms[0].onsubmit = function() {
       // Your code
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/code/javascript-submitted-form/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/code/javascript-submitted-form/</feedburner:origLink></item>
		<item>
		<title>.img Free Image Gallery</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/mwerN-VAHFM/</link>
		<comments>http://www.quinterox.com/content/my-apps/img-free-image-gallery/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 07:39:28 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[My Apps]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[.img]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[free image gallery]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=658</guid>
		<description><![CDATA[Finally the PHP version of my free gallery Visual Gallery for ASP.NET: .img! Link me and enjoy!]]></description>
			<content:encoded><![CDATA[<p>Remember my free mini ASP.NET web application Visual Gallery? Well its long lost PHP brother is here! And again, it is FREE. All I ask for is a little credit. This time however I made it better with a little help from the JavaScript library <a title="jQuery" href="http://jquery.com/" target="_blank">jQuery</a> and its plugin <a title="jQuery lightbox" href="http://leandrovieira.com/projects/jquery/lightbox/" target="_blank">jQuery Lightbox</a> which really helped speed up the process! Thanks guys, you get a ton of credit from my part.</p>
<p>Currently there is no documentation on this app. However before using it there a couple of things you should know.</p>
<h3>You should know</h3>
<ol>
<li>You need &#8216;write&#8217; permission on the directory where you plan to house your galleries. This application generates resized images and thumbnails and stores them on your server. Without the permission the application will not work.</li>
<li>This application puts ALL the thumbnails of your gallery on the same page. So if you have a million pictures, it will show a million thumbnails. Some web users like myself might find this bothersome. I will try to change it in the future but keep that in mind for now. My recommendation: make different galleries for different things.</li>
<li>The application might not like and therefore might not link up thumbnails and full sized-images with special characters correctly. Again, will be fixed at a later time. For now try to avoid odd characters in your gallery images names.</li>
<li><strong>This application only supports (at the moment) JPEG images. Sorry GIF lovers, maybe on the next update.</strong></li>
<li>Don&#8217;t forget to add your own title on the &#8216;index.php&#8217; file and for search engine optimization I recommend changing the &#8216;author&#8217; and &#8216;description&#8217; meta tags on the html head to fit your needs.</li>
<li>Give lots of love to the jQuery folks and a little to myself. <a href="http://www.dreamhost.com/donate.cgi?id=11277" target="_self">Maybe in the form of a donation to help me pay my hosting</a>? Try the app first though, make sure it works for you.</li>
</ol>
<h3>Installation</h3>
<ol>
<li>Make sure you have &#8216;write&#8217; permission on the folder you wish to store your galleries. You might be able to use your FTP software to change the permission. I recommend setting the permission to CHMOD 0755.</li>
<li>Go into the file &#8216;index.php&#8217; and change the gallery title and meta tags (optional) to fit your needs.</li>
<li>Copy all the <i>.img</i> files to a subdirectory in your gallery&#8217;s directory.
<p>Example:</p>
<p>Main gallery: &#8220;/pictures/&#8221;</p>
<p>Where to put <i>.img</i> files: &#8220;/pictures/italy2009/&#8221; or &#8220;/pictures/mycars/&#8221;.</li>
<li>Delete the sample image&#8217;s and any subdirectories i&#8217;ve included in the &#8216;images&#8217; folder that came with this application.</li>
<li>Rename the htaccess.txt file to .htaccess</li>
<li>Upload your own image files via FTP to the &#8216;images&#8217; folder that came with this application.</li>
<li>Use your web browser to navigate to the location of the subdirectory where you placed the <i>.img</i> files. On the first run the application might take some time to load. This is because it is creating thumbnails and resizing your images (if it thinks theyre too big) in the background. After that is done, it will load much faster, as it has no more images to create.</li>
</ol>
<h3>Also</h3>
<p>If you plan to add/remove/rename images from the &#8216;image&#8217; directory, it is best to delete the &#8216;thumbs&#8217; and &#8216;resized&#8217; folder and rerun the application. This is because eventually you&#8217;ll be left with unused, leftover images in those directories which might confuse you later.</p>
<p>Demo: <a href="http://quinterox.com/shared/handled/dotimg_v1.12J/">http://quinterox.com/shared/handled/dotimg_v1.12J/</a></p>
<p>Download: <a class="downloadlink" href="http://www.quinterox.com/content/wp-content/plugins/download-monitor/download.php?id=img_v1.12.zip" title="Version1.12 downloaded 40 times" >.img (40)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/my-apps/img-free-image-gallery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/my-apps/img-free-image-gallery/</feedburner:origLink></item>
		<item>
		<title>Adding Expire Headers to Htaccess File</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/JDyX487ZE-Q/</link>
		<comments>http://www.quinterox.com/content/code/adding-expire-headers-to-htaccess-file/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 04:29:48 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[expire headers]]></category>
		<category><![CDATA[htaccess]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=654</guid>
		<description><![CDATA[How to add expire headers to your .htaccess file in order to save you from unnecessary server requests.]]></description>
			<content:encoded><![CDATA[<p>Adding expire headers is a good way to keep client requests to a minimum. Without them every time the client&#8217;s browser requests a file the server has to serve it. Adding expire headers, in this case to the .htaccess file, keeps a cached version of the requested file on the client&#8217;s computer in case it is requested again. For example, you have an image gallery. The client clicks on a picture, the picture is served to them, fine. Now when the client clicks the link at the top of your page to return to the main gallery page, ALL those thumbnails of the large images are requested from the server. With this code the client merely retrieves the same images he originally saw again, without the extra server requests. Nice isn&#8217;t it?<br />
<code><br />
&lt;FilesMatch "(?i)^.*\.(ico|flv|jpg|jpeg|png|gif|js|css)$"&gt;<br />
Header unset Last-Modified<br />
Header set Expires "Fri, 10 Jun 2050 00:00:00 GMT"<br />
Header set Cache-Control "public, no-transform"<br />
&lt;/FilesMatch&gt;</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/code/adding-expire-headers-to-htaccess-file/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/code/adding-expire-headers-to-htaccess-file/</feedburner:origLink></item>
		<item>
		<title>Turning on Gzip Compression</title>
		<link>http://feedproxy.google.com/~r/Quinterox/~3/_NQvi-yYI6w/</link>
		<comments>http://www.quinterox.com/content/code/turning-on-gzip-compression/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 04:14:47 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[gzip]]></category>
		<category><![CDATA[htaccess]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=650</guid>
		<description><![CDATA[How to Gzip through the .htaccess file.]]></description>
			<content:encoded><![CDATA[<p>Gzipping files could be very useful when trying to speed up your website.</p>
<p>Though I do not have the whole .htaccess thing down yet. I have found some code that simply works. As always I post it for myself as well as anyone who needs it.</p>
<p><code><br />
&lt;IfModule mod_deflate.c&gt;<br />
&lt;FilesMatch "\.(js|css)$"&gt;<br />
SetOutputFilter DEFLATE<br />
&lt;/FilesMatch&gt;<br />
&lt;/IfModule&gt;<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/code/turning-on-gzip-compression/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.quinterox.com/content/code/turning-on-gzip-compression/</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 0.328 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-09-23 00:02:19 -->

