<?xml version="1.0" encoding="UTF-8"?>
<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/"
	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/"
	>

<channel>
	<title>philpalmieri</title>
	<atom:link href="http://philpalmieri.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://philpalmieri.com</link>
	<description>php, codeigniter, mysql, jquery, UI, UX</description>
	<lastBuildDate>Thu, 10 May 2012 13:38:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>IIS PHP cURL Authorize.net SSL</title>
		<link>http://philpalmieri.com/2012/02/iis-php-curl-authorize-net-ssl/</link>
		<comments>http://philpalmieri.com/2012/02/iis-php-curl-authorize-net-ssl/#comments</comments>
		<pubDate>Thu, 09 Feb 2012 16:43:36 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[General Internet Stuff]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=227</guid>
		<description><![CDATA[I&#8217;ve been working on a checkout system for a client site&#8230; Everything works well on our local and dev servers, but when we launched to the production box, which happens to be IIS, the checkout bombs. After digging, cursing, googling, complaining to the ISP, etc&#8230; I finally found out that apparently, IIS windows servers do <a href="http://philpalmieri.com/2012/02/iis-php-curl-authorize-net-ssl/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on a checkout system for a client site&#8230; Everything works well on our local and dev servers, but when we launched to the production box, which happens to be IIS, the checkout bombs.</p>
<p>After digging, cursing, googling, complaining to the ISP, etc&#8230; I finally found out that apparently, IIS windows servers do not verify the connection&#8230; In fact it times out if you try to.</p>
<p>So, im posting this to help save someone else hours of frustration&#8230;  In your cURL call to an https url, you just need to add the following</p>
<pre>
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // <-- Add this for IIS
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
</pre>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2012/02/iis-php-curl-authorize-net-ssl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Asinine Publishers Killing Kindle and other E-Books</title>
		<link>http://philpalmieri.com/2010/10/asinine-publishers-killing-kindle-and-other-e-books/</link>
		<comments>http://philpalmieri.com/2010/10/asinine-publishers-killing-kindle-and-other-e-books/#comments</comments>
		<pubDate>Tue, 05 Oct 2010 01:14:15 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[General Internet Stuff]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=206</guid>
		<description><![CDATA[I know this has nothing to do with programming, but this is one of those things that drives me crazy. I have a Kindle, I love my Kindle, I love reading before bed on My Kindle, then picking up where i left off on my Droid when I&#8217;m standing in line at Disney. Unfortunately, I <a href="http://philpalmieri.com/2010/10/asinine-publishers-killing-kindle-and-other-e-books/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I know this has nothing to do with programming, but this is one of those things that drives me crazy.  I have a Kindle, I love my Kindle, I love reading before bed on My Kindle, then picking up where i left off on my Droid when I&#8217;m standing in line at Disney.</p>
<p>Unfortunately, I think that e-books will not make it.  At least not without some major changes in publishers attitudes.  A while back, Amazon started letting publishers (not by choice) set pricing for Kindle editions.  Now, In my pessimistic point of view, they are beginning to strategically kill the media.</p>
<p><span id="more-206"></span></p>
<p>Take a look below &#8211; this is happening more and more often when i am looking for a new book.</p>
<p>-<br />
<img class="aligncenter size-full wp-image-207" title="20101005-1de22ut79h64eidxkieg2e8ajq" src="http://philpalmieri.com/wp-content/uploads/2010/10/20101005-1de22ut79h64eidxkieg2e8ajq.jpeg" alt="" width="554" height="422" /></p>
<p><img class="aligncenter size-full wp-image-208" title="20101005-bcwg2br1mtem4n6t4qp7hr8wiq" src="http://philpalmieri.com/wp-content/uploads/2010/10/20101005-bcwg2br1mtem4n6t4qp7hr8wiq.jpeg" alt="" width="584" height="429" /></p>
<p>At lease Under the Dome is a few dollars less for the &#8216;free to replicate&#8217; Kindle edition. The Glass Castle on the other hand is less expensive to purchase the tangible paperback that has actual hard costs!  I do not expect these books to be free, but to charge more for an electronic version than you do for a tangible version is inexplicable.</p>
<p>The only thing i can think of that would prevent these e-books from sold at $5 or so, is that the publishers, who are now setting the sale price, must be in some way making a profit on the production of the paperbacks.  Why else would they care?  I can&#8217;t imagine how the publishers would not make more profit on e-books than any other media.  There are no hard costs (beyond licensing etc.) to cut into the profit % that pays for the system.</p>
<p>As much as I would like to read The Glass Castle &#8211; I like obscure memoirs&#8230;, I can&#8217;t bring myself to pay $9.99 for it when i can buy it for a flat $9 (no tax, and i get free shipping with my Prime account).  I know it is only .99 but this is just one instance, i have seen a several dollar difference between versions before.   Maybe i&#8217;ll just go download a torrent of the audio book or find a PDF version&#8230;  When will publishers, record companies, tv studios, etc..  get it through their skulls..  give people what they want, how they want it and we will happily pay a fair price for it. When they limit the experience, use crazy DRM, or force us to jump through hoops &#8211; we will just go get it free somewhere else.</p>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2010/10/asinine-publishers-killing-kindle-and-other-e-books/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Personalized User Vanity Url&#8217;s in Codeigniter</title>
		<link>http://philpalmieri.com/2010/04/personalized-user-vanity-urls-in-codeigniter/</link>
		<comments>http://philpalmieri.com/2010/04/personalized-user-vanity-urls-in-codeigniter/#comments</comments>
		<pubDate>Sat, 03 Apr 2010 04:47:20 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[codeigniter]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=197</guid>
		<description><![CDATA[This may seem an obvious solution, but after doing some digging, i didn&#8217;t find anyone else writing about it. What I tried to accomplish was personalized urls like http://www.site.com/philpalmieri.  First i tried to use a pre_controller hook, but the url was being interpreted to quickly&#8230;  So i came up with a simple solution &#8211; hopefully <a href="http://philpalmieri.com/2010/04/personalized-user-vanity-urls-in-codeigniter/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This may seem an obvious solution, but after doing some digging, i didn&#8217;t find anyone else writing about it.</p>
<p>What I tried to accomplish was personalized urls like http://www.site.com/philpalmieri.  First i tried to use a pre_controller hook, but the url was being interpreted to quickly&#8230;  So i came up with a simple solution &#8211; hopefully it can help someone else out.</p>
<p>First step is to create an &#8216;aliases&#8217; controller (and module if you are using them)..  Create a method in the aliases controller  &#8211; something like check()&#8230; This is what we will be passing the personalized url to to figure out what to do.</p>
<p>How this works is that we check for any modules or controllers that would normally be called in uri-&gt;segment(1).  Then, dynamically account for each one in your routes file&#8230;.  finally, we route everything else to aliases/create/*</p>
<p>So.   for the code</p>
<p>add &amp; customize the following to your routes file (before any other custom routes).</p>
<pre lang="php"><code>$handle = opendir(APPPATH."/modules");
while (false !== ($file = readdir($handle))) {
  if(is_dir(APPPATH."/modules/".$file)){
    $route[$file] = $file;
    $route[$file."/(.*)"] = $file."/$1";
  }
}

/*Your custom routes here*/

/*Wrap up, anything that isnt accounted for pushes to the alias check*/
$route['([a-z\-_\/]+)'] = "aliases/check/$1";</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2010/04/personalized-user-vanity-urls-in-codeigniter/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Codeigniter Simpletest Modular Extensions Suite</title>
		<link>http://philpalmieri.com/2010/01/codeigniter-simpletest-matchbox-suite/</link>
		<comments>http://philpalmieri.com/2010/01/codeigniter-simpletest-matchbox-suite/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 03:04:45 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[codeigniter]]></category>
		<category><![CDATA[matchbox & modular extensions]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=192</guid>
		<description><![CDATA[Update&#8230; I am still having issues with MB  - and apparently others are too view thread.  So, I am once again switching back to HMVC / Modular Extensions.. With that switch I am also converting the Simpletest module as well as my Tag and Template libraries over as well.. I&#8217;ll release them soon (this month&#8230;. really) &#8212;- <a href="http://philpalmieri.com/2010/01/codeigniter-simpletest-matchbox-suite/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Update&#8230;</p>
<p>I am still having issues with MB  - and apparently others are too <a target="_blank" href="http://codeigniter.com/forums/viewthread/144164/" target="_blank">view thread</a>.  So, I am once again switching back to HMVC / Modular Extensions.. With that switch I am also converting the Simpletest module as well as my Tag and Template libraries over as well..</p>
<p>I&#8217;ll release them soon (this month&#8230;. really)</p>
<p>&#8212;-</p>
<p>So, I am primarily writing this pre-post as incentive for myself to have a deadline and accountability.</p>
<p>After reading Jaime Rumbelow&#8217;s post on <a target="_blank" href="http://jamieonsoftware.com/P10/" target="_blank">Codeigniter and Simpletest</a> I realized I needed a way to do TDD in my Matchbox modules without having to set everything up each time.</p>
<p>I have an almost ready matchbox simpletest module that scans other modules for tests and auto runs them.   Each module you want to build with TDD only needs to contain its tests (which can  run on their own by loading the simpletest lib from the simpletest module) or can be auto loaded in batch from the main simpletest module.</p>
<p>If you are interested in helping me beta test, let me know &#8211; i plan to release a beta somewhere around Feb 1.</p>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2010/01/codeigniter-simpletest-matchbox-suite/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Moved to Mediatemple</title>
		<link>http://philpalmieri.com/2009/12/moved-to-mediatemple/</link>
		<comments>http://philpalmieri.com/2009/12/moved-to-mediatemple/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 13:07:00 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[General Internet Stuff]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=185</guid>
		<description><![CDATA[As of today, this site is now hosted on MediaTemple&#8217;s GS! I found a coupon code online for 20% for life, so now i&#8217;m only paying $16/month for all my personal hosting needs (up to 100 domains). The admin panel and server are surprisingly fast and easy to configure too. I know a few people <a href="http://philpalmieri.com/2009/12/moved-to-mediatemple/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>As of today, this site is now hosted on MediaTemple&#8217;s GS!</p>
<p>I found a<a target="_blank" href="http://www.retailmenot.com/view/mediatemple.net" target="_blank"> coupon code online</a> for 20% for life, so now i&#8217;m only paying $16/month for all my personal hosting needs (up to 100 domains).  The admin panel and server are surprisingly fast and easy to configure too.</p>
<p>I know a few people who weren&#8217;t happy with the GS when it first came out, but so far so good.</p>
<p>To migrate over this site, i just shelled in and rsynced my www folder (took about 1 minute &#8211; including my personal large uploads folder).  Then, just turn on the database, tweak the wp-options and I was online.</p>
<p>If you are considering a new, inexpensive, reliable host, i would highly recommend them.</p>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2009/12/moved-to-mediatemple/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CodeIgniter Textmate Bundle</title>
		<link>http://philpalmieri.com/2009/10/codeigniter-textmate-bundle/</link>
		<comments>http://philpalmieri.com/2009/10/codeigniter-textmate-bundle/#comments</comments>
		<pubDate>Fri, 16 Oct 2009 11:26:09 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[codeigniter]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[textmate]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=176</guid>
		<description><![CDATA[I Know this is a few days old already, but its just too good of a tool to not post in as many places as possible. There is now a CodeIgniter Textmate bundle avaialable! If you are like me, you have a bunch of snippets already available for common CodeIgniter code. Well, David Ferguson wrote <a href="http://philpalmieri.com/2009/10/codeigniter-textmate-bundle/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I Know this is a few days old already, but its just too good of a tool to not post in as many places as possible.</p>
<p>There is now a CodeIgniter Textmate bundle avaialable!  If you are like me, you have a bunch of snippets already available for common CodeIgniter code.    Well, <a target="_blank" href="http://sourceforge.net/users/jdfwarrior" target="_blank">David Ferguson</a> wrote a <a target="_blank" href="http://sourceforge.net/projects/cibundle/" target="_blank">CodeIgniter Textmate bundle</a> that has snippets and shortcuts for every helper and class available in 1.7.2</p>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2009/10/codeigniter-textmate-bundle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery Plugin/Widget Quick Screencasts</title>
		<link>http://philpalmieri.com/2009/09/jquery-pluginwidget-quick-screencasts/</link>
		<comments>http://philpalmieri.com/2009/09/jquery-pluginwidget-quick-screencasts/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 00:37:01 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[jquery]]></category>
		<category><![CDATA[jquery ui]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=160</guid>
		<description><![CDATA[I have been toying with the idea of putting up a series of 5-10 minute screencasts.  To start I am going to focus on the default jQuery UI widgets, and then pick and choose the most commonly used plugins. Although the widgets are pretty self-explanatory the documentation may be confusing to a new jQuery user <a href="http://philpalmieri.com/2009/09/jquery-pluginwidget-quick-screencasts/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I have been toying with the idea of putting up a series of 5-10 minute screencasts.  To start I am going to focus on the default jQuery UI widgets, and then pick and choose the most commonly used plugins. Although the widgets are pretty self-explanatory the documentation may be confusing to a new jQuery user in regards to settings, effects, or anything beyond the default demo.</p>
<p>I am going to start with the simple defaults of Tabs or Dialog, then go in depth with effects, and different options and uses for the widget(s).</p>
<link type="text/css" rel="stylesheet" href="http://philpalmieri.com/wp-content/plugins/surveys/style.css" />
<script type="text/javascript" src="http://philpalmieri.com/wp-includes/js/jquery/jquery.js"></script>
<script type="text/javascript" src="http://philpalmieri.com/wp-content/plugins/surveys/script.js"></script>

<div class="survey-area ">
<form action="" method="post" class="survey-form" id="survey-1">
<div class='survey-question' id='question-1'>Which of these jQuery UI Plugins / Widgets would you be interested in seeing a screencast on?  (select as many as you would like, or add your own answer from a 3rd party plugin)
<input type='hidden' name='question_id[]' value='1' />
<br /><input type='checkbox' name='answer-1[]' id='answer-id-1' class='answer' value='1' />
<label for='answer-id-1'>Tabs Widget</label><br />
<input type='checkbox' name='answer-1[]' id='answer-id-2' class='answer' value='2' />
<label for='answer-id-2'>Dialog Widget</label><br />
<input type='checkbox' name='answer-1[]' id='answer-id-3' class='answer' value='3' />
<label for='answer-id-3'>Calendar Widget</label><br />
<input type='checkbox' name='answer-1[]' id='answer-id-4' class='answer' value='4' />
<label for='answer-id-4'>Progress Bar</label><br />
<input type='checkbox' name='answer-1[]' id='answer-id-5' class='answer' value='5' />
<label for='answer-id-5'>Write your own Plugin</label><br />
<input type='checkbox' name='answer-1[]' id='answer-id-5' class='answer' value='user-answer' />
<input type='text' name='user-answer-1' class='user-answer' value='' /><br />
</div>

<br />
<input type="button" id="survey-next-question" value="Next &gt;"  /><br />

<input type="submit" name="action" id="survey-action-button" value="Submit Survey"  />
<input type="hidden" name="survey_id" value="1" />
</form>

<script type="text/javascript">survey_questions_per_page = 1;</script>
</div>


]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2009/09/jquery-pluginwidget-quick-screencasts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Matchbox is Back! So Long Modular Extensions&#8230;</title>
		<link>http://philpalmieri.com/2009/09/matchbox-is-back-so-long-modular-extensions/</link>
		<comments>http://philpalmieri.com/2009/09/matchbox-is-back-so-long-modular-extensions/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 01:32:50 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[codeigniter]]></category>
		<category><![CDATA[matchbox & modular extensions]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=151</guid>
		<description><![CDATA[So, for once, my procrastination has paid off! A while back i was complaining, in the most polite way of course, about the lack of development of matchbox. A few days ago Zacharias released Matchbox RC1.  He completely re-wrote it from the ground up and has made it 100% compatible with the latest Codeigniter release. <a href="http://philpalmieri.com/2009/09/matchbox-is-back-so-long-modular-extensions/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>So, for once, my procrastination has paid off!  A while back i was complaining, in the most polite way of course, about the lack of development of matchbox. A few days ago Zacharias released Matchbox RC1.  He completely re-wrote it from the ground up and has made it 100% compatible with the latest Codeigniter release.</p>
<p>I downloaded the release candidate from <a target="_blank" href="http://codeigniter.com/wiki/Matchbox/">http://codeigniter.com/wiki/Matchbox/</a>, dropped it into a new branch of some projects that use the old version, and was off and running.</p>
<p>As i play with it more i plan to release some of our code like the <a title="AMFPHP Codeigniter" href="http://philpalmieri.com/2009/04/codeigniter-amfphp-library/">AMFPHP library</a> as self contained modules that can be dropped into an application.</p>
<p>Thanks again to Zacharias for all your hard work.</p>
<p>Phil</p>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2009/09/matchbox-is-back-so-long-modular-extensions/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Snow Leopard / MAMP Pro mySQL woes</title>
		<link>http://philpalmieri.com/2009/09/snow-leopard-mamp-pro-mysql-woes/</link>
		<comments>http://philpalmieri.com/2009/09/snow-leopard-mamp-pro-mysql-woes/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 03:23:46 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[codeigniter]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[mamp]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=144</guid>
		<description><![CDATA[After wiping my computer and installing 10.6 from scratch, my local php/mysql would not work at all.  The biggest problem was that I was receiving an error when trying to connect to mySQL &#8220;Lost connection to MySQL server at &#8216;reading initial communication packet&#8217;, system error: 61&#8243;. It turns our that in MAMP Pro 1.8, they <a href="http://philpalmieri.com/2009/09/snow-leopard-mamp-pro-mysql-woes/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>After wiping my computer and installing 10.6 from scratch, my local php/mysql would not work at all.  The biggest problem was that I was receiving an error when trying to connect to mySQL &#8220;Lost connection to MySQL server at &#8216;reading initial communication packet&#8217;, system error: 61&#8243;.</p>
<p>It turns our that in MAMP Pro 1.8, they left out the local bind-address declaration, which for some reason freaks out the default PHP/Apache setup.</p>
<p>So, if you are running Snow Leopard and MAMP Pro and can&#8217;t connect to your mySQL, it&#8217;s an easy fix.  In MAMP Pro edit your my.cnf template (File &gt; Edit Template) .  Add this line somewhere after the &#8220;[mysqld]&#8221; declaration (and reload) &#8211; Everything should be good.</p>
<blockquote><p>bind-address = 127.0.0.1</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2009/09/snow-leopard-mamp-pro-mysql-woes/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>idleTimeout &#8211; jQuery Idle Session Auto Timeout with Prompt</title>
		<link>http://philpalmieri.com/2009/09/jquery-session-auto-timeout-with-prompt/</link>
		<comments>http://philpalmieri.com/2009/09/jquery-session-auto-timeout-with-prompt/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 00:59:15 +0000</pubDate>
		<dc:creator>Phil</dc:creator>
				<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://philpalmieri.com/?p=125</guid>
		<description><![CDATA[## Updated &#8211; Moved to Github for bugs &#38; pull requests ## Update: I just added a CC license (see below) and renamed this project idleTimeout I just finished the first draft of idleTimeout -  jQuery auto prompt / logout / session expire plugin.  It is fairly simple, but seems to work well for my <a href="http://philpalmieri.com/2009/09/jquery-session-auto-timeout-with-prompt/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<h3>## Updated &#8211; <a target="_blank" title="jquery idle Timeout" href="https://github.com/philpalmieri/jquery-idleTimeout" target="_blank">Moved to Github</a> for bugs &amp; pull requests ##</h3>
<blockquote><p>Update: I just added a CC license (see below) and renamed this project idleTimeout</p></blockquote>
<p>I just finished the first draft of idleTimeout -  jQuery auto prompt / logout / session expire plugin.  It is fairly simple, but seems to work well for my needs.</p>
<p><a style="text-decoration: none;" href="http://philpalmieri.com/wp-content/uploads/2009/09/session-timeout.png"><img class="aligncenter size-medium wp-image-135" title="session-timeout" src="http://philpalmieri.com/wp-content/uploads/2009/09/session-timeout-550x459.png" alt="session-timeout" width="550" height="459" /></a></p>
<p><span id="more-125"></span></p>
<p><strong>* NEW &#8211; Moved to github&#8230; Fork away for updates *</strong></p>
<p>Installation is simple: grab a copy of <a target="_blank" title="jQuery Timed Logout plugin" href="https://github.com/philpalmieri/jquery-idleTimeout" target="_blank">jquery-idleTimeout.js</a> , include it in your page, and activate it.</p>
<pre lang="javascript"><code> /** Run with defaults **/ $(document).ready(function(){ $(document).idleTimeout(); }); </code></pre>
<pre lang="javascript"><code> /** With Optional Overrides **/ $(document).ready(function(){ $(document).idleTimeout({ inactivity: 30000, noconfirm: 10000, sessionAlive: 10000 }); }); </code></pre>
<blockquote><p><em>Note:  This uses the jQuery UI dialog, and UI themes.  I am working on a non UI version &#8211; but it may be a while</em></p></blockquote>
<p>I have an <a target="_blank" title="jQuery auto logout timer" href="http://www.philpalmieri.com/js_sandbox/timedLogout/" target="_blank">active demo here</a> &#8211; it is running on a 30 second timer for the logout, and if you open firebug you will see the keep alive firing every 10 seconds.</p>
<p>The plugin has a few configuration items so you can customize it for your own needs&#8230;</p>
<ul>
<li><strong>inactivity</strong>: 1200000 //20 Minute default (how long before showing the notice)</li>
<li><strong>sessionAlive</strong>: 300000, //5 minutes default how often to hit alive_url, we use for our ajax interfaces where the page doesn&#8217;t change very often. This helps to prevent the logout screen of your app appearing in ajax callbacks.  If you set this to false it won&#8217;t send off.</li>
<li><strong>alive_url</strong>: &#8216;/path/to/your/imHere/url&#8217;, //send alive ping to this url</li>
<li><strong>redirect_url</strong>: &#8216;/js_sandbox/&#8217;, //Where to go when log out</li>
<li><strong>click_reset</strong>: true, //Reset timeout on clicks (for ajax interface) &#8211; resets the sessionAlive timer, so we are not hitting up your app with alive_url if we just did an ajax call for another  reason.</li>
<li><strong>logout_url</strong>: &#8216;/js_sandbox/timedLogout/index.html&#8217; //logout before redirect (url so you can completely destroy the session before redirecting to login screen)</li>
</ul>
<p><a target="_blank" href="http://creativecommons.org/licenses/by-sa/3.0/us/" rel="license"><img style="border-width: 0;" src="http://i.creativecommons.org/l/by-sa/3.0/us/80x15.png" alt="Creative Commons License" /></a><br />
<span>idleTimeout</span> by <a target="_blank" href="philpalmieri.com" rel="cc:attributionURL">Phillip Palmieri</a> is licensed under a <a target="_blank" href="http://creativecommons.org/licenses/by-sa/3.0/us/" rel="license">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
<p>Please let me know if you are using it, or if you have any ideas to make it better!</p>
<p>Thanks,<br />
Phil</p>
]]></content:encoded>
			<wfw:commentRss>http://philpalmieri.com/2009/09/jquery-session-auto-timeout-with-prompt/feed/</wfw:commentRss>
		<slash:comments>120</slash:comments>
		</item>
	</channel>
</rss>

