<?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>ReloadedPC Ashland, Ohio</title>
	<atom:link href="http://www.reloadedpc.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.reloadedpc.com</link>
	<description>Small Business Website Development</description>
	<lastBuildDate>Sun, 21 Feb 2010 17:33:19 +0000</lastBuildDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Zencart + Price Breaks + Easy Populate</title>
		<link>http://www.reloadedpc.com/zen-cart/zencart-price-breaks-easy-populate/</link>
		<comments>http://www.reloadedpc.com/zen-cart/zencart-price-breaks-easy-populate/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 17:33:19 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[Zen-Cart]]></category>
		<category><![CDATA[easy populate]]></category>
		<category><![CDATA[price breaks]]></category>
		<category><![CDATA[zencart]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=168</guid>
		<description><![CDATA[Here is another update to the popular add-on for Zencart called Easy Populate. For those unfamiliar with Easy Populate, it&#8217;s a fantastic add-on for Zencart. Easy Populate allows user to create comma separated values (.csv) files to editing the list of products in their Zencart installation. A user recently emailed me requesting an additional feature [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_18" class="wp-caption alignright" style="width: 156px"><a href="http://www.reloadedpc.com/wp-content/uploads/2009/07/zen-cart-logo.png"><img class="size-full wp-image-18" title="zen-cart-logo" src="http://www.reloadedpc.com/wp-content/uploads/2009/07/zen-cart-logo.png" alt="Zencart + Price Breaks + Easy Populate zen cart logo " width="146" height="40" /></a><p class="wp-caption-text">Zen-Cart</p></div>
<p>Here is another update to the popular add-on for Zencart called Easy Populate. For those unfamiliar with Easy Populate, it&#8217;s a fantastic add-on for Zencart. Easy Populate allows user to create comma separated values (.csv) files to editing the list of products in their Zencart installation. A user recently emailed me requesting an additional feature of price break imports to be included in Easy Populate.<span id="more-168"></span><br />
Price breaks are created in Zencart by navigation to your cart admin page. Then clicking on the menu I originally tried creating a very complex SQL query that didn&#8217;t quite reach it&#8217;s potential. I ended coding a solution that worked pretty well. The updated version of Easy Populate is availabe to download below. Instructions are included in the file about installation or upgrading from previous versions of Easy Populate.</p>
<p>This updated version of the script will export the model number, price, discount type, discount qty, discount price, discount qty, discount price, etc. Edit the discount type as follows:</p>
<blockquote><p>The v_discount_type values are:<br />
0: none,<br />
1: Percentage,<br />
2: Actual Price,<br />
3: Amount off</p></blockquote>
<p>If any item is set to discount type 0 then any previous price breaks entered will be deleted upon import of file. If you need more columns than what is exported by default, just simple copy the pattern of titles of the columns (ie discount_qty_0, discount_qty_1,&#8230;discount_qty_n and discount_price_0, discount_price_1,&#8230;discount_price_n).</p>
<p><a href="http://www.reloadedpc.com/wp-content/uploads/2009/12/easy_populate_csv_1-2-5-8.zip">Download Easy Populate v 1.2.5.8 </a></p>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="8DNGYPD3WRZCQ">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="Zencart + Price Breaks + Easy Populate pixel " border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1" title="Zencart + Price Breaks + Easy Populate" /><br />
</form>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/zen-cart/zencart-price-breaks-easy-populate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zencart Custom Session Length</title>
		<link>http://www.reloadedpc.com/zen-cart/zencart-custom-session-length/</link>
		<comments>http://www.reloadedpc.com/zen-cart/zencart-custom-session-length/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 17:17:47 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[Zen-Cart]]></category>
		<category><![CDATA[expiration]]></category>
		<category><![CDATA[lose cart]]></category>
		<category><![CDATA[session]]></category>
		<category><![CDATA[timeout]]></category>
		<category><![CDATA[zencart]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=203</guid>
		<description><![CDATA[Lately, I have been developing a few modifications for Zencart. One of things I have noticed during the development process, is my shopping cart being lost while typing code and then refreshing the page a little while later. This was no big deal. Just go in add another product, and test again. Then, I got [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_18" class="wp-caption alignleft" style="width: 156px"><a href="http://www.zen-cart.com"><img class="size-full wp-image-18" title="zen-cart-logo" src="http://www.reloadedpc.com/wp-content/uploads/2009/07/zen-cart-logo.png" alt="Zencart Custom Session Length zen cart logo " width="146" height="40" /></a><p class="wp-caption-text">Zen-Cart</p></div>
<p>Lately, I have been developing a few modifications for Zencart. One of things I have noticed during the development process, is my shopping cart being lost while typing code and then refreshing the page a little while later. This was no big deal. Just go in add another product, and test again. Then, I got to talking to a few other users who seem to experience the same problem of losing their session. As an end user or a customer this can be frustrating that you have added items to your cart, and then something come ups. They come back to their cart, go to another page, and they have lost their shopping cart. Zencart checks your php.ini for session length. On some hosting accounts, you don&#8217;t have access to change this value, or you just want a more user friendly way to adjust this.  This contribution / modification for Zen-cart will fix this problem. No core files are touched with this mod. You can extend the session length / timeout / expiration from the admin page.</p>
<p><span id="more-203"></span>Download <a href="http://www.reloadedpc.com/wp-content/uploads/2010/02/zencart-custom_session.zip">Zencart Custom Session Timeout</a></p>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="8DNGYPD3WRZCQ">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="Zencart Custom Session Length pixel " border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1" title="Zencart Custom Session Length" /><br />
</form>
<p>Installation instructions are included in the zip file in readme.txt. Here is a copy of the instructions:</p>
<ol>
<li>-Unzip folder contents.</li>
<li>-Rename /admin folder to match the name of your custom admin folder.</li>
<li>-Upload files to your server</li>
<li>-Login into your admin page for zencart (-This should automatically install this mod)</li>
<li> -Goto Admin-&gt;Configuration-&gt;My Store</li>
<li> -Click on Customer Session Time Out in Seconds and set your desired value.</li>
<li> -Click [Update] button to save changes.</li>
<li>-You&#8217;re Done!!</li>
</ol>
<p>Now, you will be able to change the session timeout / length / expiration for your zencart store.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/zen-cart/zencart-custom-session-length/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zen-Cart reCAPTCHA Contribution Mod</title>
		<link>http://www.reloadedpc.com/zen-cart/zencart-recaptcha-contribution-mod/</link>
		<comments>http://www.reloadedpc.com/zen-cart/zencart-recaptcha-contribution-mod/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 14:33:44 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[Zen-Cart]]></category>
		<category><![CDATA[recaptcha]]></category>
		<category><![CDATA[zencart]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=198</guid>
		<description><![CDATA[One of the few options to try and combat SPAM on your zencart install, is to try and implement a CAPTCHA text/image on your contact us page. I recently updated a contribution I  created several months ago. This reCAPTCHA contribution will add configuration fields to the database for your api key and password, color theme [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_18" class="wp-caption alignleft" style="width: 156px"><a href="www.zencart.com"><img class="size-full wp-image-18" title="zen-cart-logo" src="http://www.reloadedpc.com/wp-content/uploads/2009/07/zen-cart-logo.png" alt="Zen Cart reCAPTCHA Contribution Mod zen cart logo " width="146" height="40" /></a><p class="wp-caption-text">Zen-Cart</p></div>
<p>One of the few options to try and combat SPAM on your zencart install, is to try and implement a CAPTCHA text/image on your contact us page. I recently updated a contribution I  created several months ago. This reCAPTCHA contribution will add configuration fields to the database for your api key and password, color theme selection, and enable/disable feature on contact us form.  The original contribution had used native mysql queries, so I have updated the contribution to support zencart&#8217;s $db:Factory object.<span id="more-198"></span>Download the file below, and read the included instructions. There is only one original core file that has been overwritten. The reCAPTCHA logic had to be added to the contact us form validation.</p>
<p>Upload files to your zencart installation folder, and login into your admin page. The contribution will automatically install it&#8217;s configuration values. On a page refresh, you should see a new box under Admin-&gt;Configuration-&gt;reCAPTCHA.</p>
<p>If you are upgrading from a previous install of this mod, append [&amp;remove_recaptcha=yes] to the url in your admin page, and press [Enter]. This will reinstall the contribution.</p>
<p><a href="http://www.reloadedpc.com/wp-content/uploads/2010/02/contactus_recaptcha_v1-1.zip">Download Zencart reCAPTCHA</a></p>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="8DNGYPD3WRZCQ">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="Zen Cart reCAPTCHA Contribution Mod pixel " border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1" title="Zen Cart reCAPTCHA Contribution Mod" /><br />
</form>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/zen-cart/zencart-recaptcha-contribution-mod/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zencart + UPS XML Dimensional Support</title>
		<link>http://www.reloadedpc.com/zen-cart/zencart-ups-xml-dimensional-support/</link>
		<comments>http://www.reloadedpc.com/zen-cart/zencart-ups-xml-dimensional-support/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 16:19:12 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[Zen-Cart]]></category>
		<category><![CDATA[ups xml]]></category>
		<category><![CDATA[zencart]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=192</guid>
		<description><![CDATA[One task I have put off from switching from osCommerce to ZenCart shopping cart platform, was updating the UPS XML contribution.  For those familiar with the shopping cart system, you know by default they only support standard UPS shipping. The cart figures shipping all the items together in one box. However, some products can&#8217;t be [...]]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_18" class="wp-caption alignleft" style="width: 156px"><a href="http://www.zencart.com"><img src="http://www.reloadedpc.com/wp-content/uploads/2009/07/zen-cart-logo.png" alt="Zencart + UPS XML Dimensional Support zen cart logo " title="zen-cart-logo" width="146" height="40" class="size-full wp-image-18" /></a><p class="wp-caption-text">Zen-Cart</p></div>One task I have put off from switching from osCommerce to ZenCart shopping cart platform, was updating the UPS XML contribution.  For those familiar with the shopping cart system, you know by default they only support standard UPS shipping. The cart figures shipping all the items together in one box. However, some products can&#8217;t be shipped together, and distorts shipping quotes for UPS. The solution that evolved in osCommerce was using UPS shipping API to get detailed freight quotes.<br />
<span id="more-192"></span></p>
<p>The UPS API accepts a XML document with shipment details, and returns rates for the various services available.  The current UPS XML  contribution for ZenCart lacked the packing and dimensional support that had been added to the osCommerce version. I was familiar with the code in osCommerce, and started porting the code over to ZenCart. Thankfully, for the override system in ZenCart, makes adding modifications alot easier.</p>
<p>This contribution only overwrites 2 original file. The file is:</p>
<p>/admin/includes/modules/product/collect_info.php<br />
/admin/includes/modules/update_product.php</p>
<p>This edits add the data entry for dimension fields to the add/update products screen. The zip file contains readme instructions for installing this.</p>
<p>Download <a href='http://www.reloadedpc.com/wp-content/uploads/2010/02/zencart-UPS_XMLv1.3.1.zip'>zencart-UPS_XMLv1.3.1</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/zen-cart/zencart-ups-xml-dimensional-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setup WAMP and SVN Subversion on Windows</title>
		<link>http://www.reloadedpc.com/other/setup-wamp-svn-subversion-windows/</link>
		<comments>http://www.reloadedpc.com/other/setup-wamp-svn-subversion-windows/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 05:17:04 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[wamp]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=175</guid>
		<description><![CDATA[Say you work on a desktop and a laptop computer, and you synchronize your laptop. Edit some files, save, and upload. Everything is fine. Now you get home or back in the office, sit down at the desktop, and forget to synchronize. You edit the files some more, upload, and save. Uh-oh, now you lost [...]]]></description>
			<content:encoded><![CDATA[<p>Say you work on a desktop and a laptop computer, and you synchronize your laptop. Edit some files, save, and upload. Everything is fine. Now you get home or back in the office, sit down at the desktop, and forget to synchronize. You edit the files some more, upload, and save. Uh-oh, now you lost the changes you made on your laptop. You&#8217;ll have to get a copy off the laptop, and find all the changes you made. Ever done this? Version Control makes this scenario so much easier to resolve.<span id="more-175"></span></p>
<p>I&#8217;ve been putting off for quite some time setting up version control for the various websites I work on. I was finding myself sometimes editing a file, saving my changes, and getting uploaded to the site to find I had made an error or broke another feature. I&#8217;ve been using Dreamweaver to do my php coding and css editing, and enjoyed the easy benefit of using the synchronize feature.  Dreamweaver makes it easy to get the lastest edits off the server, and have a local copy to work on. Dreamweaver will also save automatically back via FTP. However, it makes for a better WYSIWYG editor than a development environment, and does not offer any backup option. </p>
<p>I tried out a few PHP IDE&#8217;s like <a href="http://netbeans.org/">Netbeans</a>. Wow, coding became alot simpler with the advantages of code completion and hints. Unfortunately, I didn&#8217;t seem to find an IDE that uses the synchronization feature, but all support SVN version control. I decided to take the plunge and setup my computers to harness the advantages of version control.</p>
<p>I&#8217;ve been using WAMP on several computers, and makes it just as easy to setup as it was in Ubuntu. WAMP is a pre-configured Apache, MySQL, PHP, phpMyAdmin, and SQLiteManager stack for Windows. You can setup a webserver in under 5 mins on your windows box. I have set this up on both Windows Vista x64 and Windows XP SP3. I followed several guides online, and each seemed to be missing a piece here or there. <strong>Also, beware of the SVN 1 click installer</strong>. The download contains a version of Subversion that&#8217;s not compatible with Apache 2.2.11 included with WAMP. I learned this the hard way.</p>
<h3>Summary of Folder Layout</h3>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\clients\project1 -&gt; Working Copy
c:\svn -&gt; Subversion Installation
c:\svnrepos -&gt; Repository Parent Location
c:\svnrepos\project1 -&gt; Sample Repository
c:\wamp -&gt;WAMP Installation
c:\wamp\www\project1 -&gt; Live Copy
c:\Program Files\TortoiseSVN -&gt;TortoiseSVN Installation</pre></div></div>

<p>You will need 3 things to get a WAMP + Subversion up and running.</p>
<ol>
<li><a href="http://www.wampserver.com/en/download.php">Wamp</a> v2.0i</li>
<li><a href="http://subversion.tigris.org/files/documents/15/46906/Setup-Subversion-1.6.6.msi">Subversion</a> v1.6.6</li>
<li><a href="http://tortoisesvn.net/downloads">TortoiseSVN</a> v1.6.6</li>
</ol>
<p>First, you need to install each of the packages. During the install of Subversion, select &#8220;Bind to Apache 2.2.x&#8221;. I chose to install subversion to:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\svn</pre></div></div>

<p>Try to prevent using spaces in your file paths to eliminate any problems in Apache. This will provide the right files to be installed that will work with the version of Apache that&#8217;s installed by WAMP. Now, that you have the packages installed, it&#8217;s time to marry WAMP with SVN. You will need to copy files between folders.</p>
<p>Copy <strong>mod_authz_svn.so</strong> and <strong>mod_dav_svn.so</strong> from</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\svn\bin to C:\wamp\bin\apache\Apache2.2.11\modules</pre></div></div>

<p>Copy <strong>intl3_svn.dll</strong> and <strong>libdb44.dll</strong></p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\svn\bin to C:\wamp\bin\apache\Apache2.2.11\bin</pre></div></div>

<p>Now click on the white half circle tray icon for WAMP->Apache->httpd.conf. We need to add these modules into Apache&#8217;s configuration file. Find the lines:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">#LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so</pre></div></div>

<p>Change to:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so</pre></div></div>

<p>Save the file. Click on the WAMP tray icon again, and then click Restart All Services. Wait for the icon to turn all white again. When it does you are ready to proceed with setting up your first repository. If you have trouble, try exiting WAMP, and then start the application again.<br />
Now you need to create a repository folder. I chose:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\svnrepos</pre></div></div>

<p>Since I will be hosting multiple projects go ahead and create another subfolder:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\svnrepos\project1</pre></div></div>

<p><del datetime="2010-02-01T14:11:14+00:00">Now let&#8217;s create the repository by right clicking on the c:\svnrepos\project1 folder->TortoiseSVN->Create Repository Here. You will get a confirmation that folder was created successfully.</del><br />
<strong>Update 2010-02-01</strong>:<br />
I&#8217;ve noticed the latest build of TortoiseSVN is not creating compatible version for Apache, but will the command line version will work.<br />
Open command line, and type:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">cd c:\svnrepos\
svnadmin create c:\svnrepos\project1</pre></div></div>

<p>Time to setup Apache to allow browsing of the repository. Click on the WAMP icon->Apache->httpd.conf. Scroll to the bottom of the file and above:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">Include &quot;c:/wamp/alias/*&quot;</pre></div></div>

<p>Add:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">&lt;Location /svn&gt;
	DAV svn
	SVNParentPath C:/svnrepos
&lt;/Location&gt;</pre></div></div>

<p>Save the file. Leave it open, and click on WAMP tray icon->Restart All Services. Wait for icon to turn all white again. Now you should be able to navigate to <a href="http://localhost/svn/project1">http://localhost/svn/project1</a>. If successful, you should see a blank directory listing for project1 &#8211; Revision 0.</p>
<p>If you don&#8217;t require any authentication, you are done. Go have some fun and enjoy your free SVN repository. In Windows Explorer navigate again to c:\svnrepos\project1, right click on folder->TortoiseSVN->Repo-browser. In the right-hand pane right click again->Create directory. Then type in trunk. Repeat to create folders branches and tags. Now start importing your files into the trunk folder. Do this by right-click in right pane->Add File(Folder). Choose a file/folder, add a comment and click okay. You now have started your repository. You can refresh the browser page and check out the changes.</p>
<p>Ready to add user authentication? It&#8217;s easy to setup a basic user/password method. First we need to create a password file for Apache to protect the browsing of the repository. Create the password file by using the command line:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">cd C:\wamp\bin\apache\Apache2.2.11\bin
htpasswd -c svnpasswd username</pre></div></div>

<p>Open httpd.conf file again. You need to add a few commands to the <Location> block at the bottom of the file. Below the line:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">SVNParentPath C:/svnrepos</pre></div></div>

<p>Add:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">AuthType Basic
AuthName &quot;Subversion Repository&quot;
AuthUserFile bin/svnpasswd
Require valid-user</pre></div></div>

<p>Click on WAMP tray icon->Restart All Services. Refresh your browser page and you should be asked for your login credentials. Congrats! Remember this authentication method only protects browsing. It does not control who can read/write/edit/commit/delete file from the repository.</p>
<h3>Putting It All Together</h3>
<p>We&#8217;ve got WAMP/SVN up and running, but how do you use this? Here&#8217;s what I am doing right now. Get all the files imported into your repository /trunk folder using TortoiseSVN. I created folder for my working copies that I will be developing and testing. I used:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\clients</pre></div></div>

<p>Navigate to this folder create a new folder (ie. project1). Right click on folder->SVN Checkout . Fill out as shown:<br />
<a href="http://www.reloadedpc.com/wp-content/uploads/2010/01/wamp-svn_19012010_223704.jpg"><img src="http://www.reloadedpc.com/wp-content/uploads/2010/01/wamp-svn_19012010_223704.jpg" alt="Setup WAMP and SVN Subversion on Windows wamp svn 19012010 223704 " title="wamp-svn_project1-checkout" width="468" height="361" class="alignleft size-full wp-image-180" /></a></p>
<p>Click OK, and all the files from the repository will be copied/downloaded to the folder. In order to be able to debug/test your working copy, create an alias that points to that folder. I use an alias because I use my WAMP webroot for serving real pages. Right click WAMP tray icon->Apache->Alias directories->Add alias. A command prompt will open, type in alias and the path to the folder using forward slashes.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">svnproject1 [Press Enter]
c:/clients/project1</pre></div></div>

<p>Point your browser to <a href="http://localhost/svn/project1/">http://localhost/svn/project1</a>, and you should see your test site. You have a separate method to test your working copy. Make some changes/edits of files. Commit your changes to the repository by right click on the folder:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\clients\project1</pre></div></div>

<p>Choose SVN Commit, enter a comment, and click OK. Once you have a working copy you would like to move to live, navigate to:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">c:\wamp\www</pre></div></div>

<p>Right click in Windows Explorer->SVN Checkout and fill out as shown:<br />
<a href="http://www.reloadedpc.com/wp-content/uploads/2010/01/wamp-svn_19012010_231759.jpg"><img src="http://www.reloadedpc.com/wp-content/uploads/2010/01/wamp-svn_19012010_231759.jpg" alt="Setup WAMP and SVN Subversion on Windows wamp svn 19012010 231759 " title="wamp-svn-live-checkout" width="468" height="361" class="alignleft size-full wp-image-181" /></a></p>
<p>Click OK, and the latest revision will be copied to the folder. Browse <a href="http://localhost/project1">http://localhost/project1</a>. You are running a live copy. Whenever you&#8217;ve ready to roll out an update, just right click on the folder->SVN Update. All changes will be synchronized.</p>
<p>I am running this setup at work for one of our small internal web applications. I have the repository on my computer. I&#8217;ve created a working copy. I work on adding some new reports, or improving the UI with some jQuery. Test it locally, and fix any bugs. Open a ssh session to the server an issue &#8220;svn update&#8221; in the webroot, and the applications are updated without going down.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/other/setup-wamp-svn-subversion-windows/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Zencart Related Products</title>
		<link>http://www.reloadedpc.com/zen-cart/zencart-related-products/</link>
		<comments>http://www.reloadedpc.com/zen-cart/zencart-related-products/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 17:00:09 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zen-Cart]]></category>
		<category><![CDATA[related products]]></category>
		<category><![CDATA[zencart]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=155</guid>
		<description><![CDATA[Zen-cart is an excellent open source ecommerce shopping cart system. One of the features I like about Zen-cart is that once you understand the templating structure, writing plugins becomes pretty easy.
One of the features I enjoyed using with osCommerce, was a plugin for creating a related products box below a displayed. The plugin was easily [...]]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_18" class="wp-caption alignright" style="width: 156px"><a href="http://www.zen-cart.com"><img class="size-full wp-image-18 " title="zen-cart-logo" src="http://www.reloadedpc.com/wp-content/uploads/2009/07/zen-cart-logo.png" alt="Zen-Cart" width="146" height="40" /></a><p class="wp-caption-text">Zen-Cart</p></div><a href="http://www.zen-cart.com">Zen-cart</a> is an excellent open source ecommerce shopping cart system. One of the features I like about Zen-cart is that once you understand the templating structure, writing plugins becomes pretty easy.</p>
<p>One of the features I enjoyed using with osCommerce, was a plugin for creating a related products box below a displayed. The plugin was easily implemented, and used an extra field add to the database. That was a great asset, that I felt missed using. Zen-cart offers something very similar in its port of XSell (Cross Sell). This feature would work fine if you are adding a few products at time, and do not have many related products. However, in my case, I have about 4,000 items in my catalog. The products are mostly lighting fixtures, which for must companies have coordinating fixtures for each room. This would be a bit cumbersome to create all of the related items. This is why I decided to write a quick plugin to get this simple functionality back.<span id="more-155"></span>The code works by simply selecting products that have the same products_family value from the products table. You will first need to add this field to your database.</p>
<p>The default products table is &#8220;zen_products&#8221;, and in your favorite MySQL editor add:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">ALTER TABLE zen_products ADD COLUMN products_family VARCHAR<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">50</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Next, you will need to add values to your new field family_products. The easiest to do this is to use custom fields in <a href="http://www.reloadedpc.com/zen-cart/zen-cart-easy-populate/">Easy Populate</a>. I added the code to Easy Poplulate for zen-cart to be able to add your own custom fields to the import/export file.</p>
<p>Now that you&#8217;ve got the fields added to the database, it&#8217;s time to upload some files. <a href="http://www.reloadedpc.com/wp-content/uploads/2009/12/related_products.zip">Download Zencart Related Plugins</a>. Read the included readme file, and upload to your zen cart folder.</p>
<p>Open the file /includes/templates/CUSTOM/templates/tpl_product_info_display.php and find the block around line 463:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;!--bof also purchased products module --&gt;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">require</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$template</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">get_template_dir</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'tpl_modules_also_purchased_products.php'</span><span style="color: #339933;">,</span> DIR_WS_TEMPLATE<span style="color: #339933;">,</span> <span style="color: #000088;">$current_page_base</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'templates'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span> <span style="color: #0000ff;">'/'</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'tpl_modules_also_purchased_products.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;!--eof also purchased products module --&gt;</pre></div></div>

<p>Above that copy this into your file:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;!--bof also related products module--&gt;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">require</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$template</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">get_template_dir</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'tpl_modules_related_products.php'</span><span style="color: #339933;">,</span> DIR_WS_TEMPLATE<span style="color: #339933;">,</span> <span style="color: #000088;">$current_page_base</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'templates'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span> <span style="color: #0000ff;">'/'</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'tpl_modules_related_products.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;!--eof also related products module--&gt;</pre></div></div>

<p>You should now see products being displayed under the products description.	You will want to add some CSS styles to the box to your liking. Default styles should be:</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#relatedProducts</span>	<span style="color: #00AA00;">&#123;</span><span style="color: #000000; font-weight: bold;">text-align</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">center</span><span style="color: #00AA00;">;</span><span style="color: #00AA00;">&#125;</span>
<span style="color: #6666ff;">.centerBoxContentsRelatedProduct</span>	<span style="color: #00AA00;">&#123;</span><span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span> <span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #933;">1em</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span><span style="color: #00AA00;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/zen-cart/zencart-related-products/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thunderbird 3 Search Not Working</title>
		<link>http://www.reloadedpc.com/other/thunderbird-3-search-working/</link>
		<comments>http://www.reloadedpc.com/other/thunderbird-3-search-working/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 15:32:18 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[thunderbird]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=151</guid>
		<description><![CDATA[Mozilla recently had Thunderbird 3 Release Candidate 2 available for download. I was interested in trying out the new version. I upgraded my XP machine from version 2 to the Release Candidate version. Upgrade completed successfully. I opened up Thunderbird, and all of my emails were imported fine after the upgrade, and the program proceeded [...]]]></description>
			<content:encoded><![CDATA[<p>Mozilla recently had Thunderbird 3 Release Candidate 2 available for download. I was <a href="http://www.mozillamessaging.com/en-US/thunderbird/"><img class="alignright size-medium wp-image-152" title="Thunderbird3" src="http://www.reloadedpc.com/wp-content/uploads/2009/12/Thunderbird3-300x113.png" alt="Thunderbird 3 Search Not Working Thunderbird3 300x113 " width="300" height="113" /></a>interested in trying out the new version. I upgraded my XP machine from version 2 to the Release Candidate version. Upgrade completed successfully. I opened up Thunderbird, and all of my emails were imported fine after the upgrade, and the program proceeded to index all of my emails.</p>
<p>I thought I would test out some the new features being touted in the new release. To my frustration, the new search feature would never complete. I would start typing in a search phrase, and then click on one of the terms suggested to me by sqlite. Thundbird opened a new tabbed, and the interface just showed my search criteria at the top with a dialog in the middle reading &#8220;Searching&#8230;&#8221;. The first couple of tries, I thought there was no matching criteria because Thunderbird&#8217;s search seemed to never complete.<span id="more-151"></span></p>
<p>My next step was to scour the <a href="http://getsatisfaction.com/mozilla_messaging">new</a> and <a href="http://forums.mozillazine.org/viewforum.php?f=39">old</a> message boards from Mozilla. Nothing matched my same problem. A number of people have mentioned and posted about long indexing times for accounts with a lot of email messages. I have about 2000 messages saved on my computer, so it was nearly as large as other users.</p>
<p>A few days passed, and I had kind of given up on the new search feature. Then, the update was pushed to me via automatic update with the final build. I upgraded several other computers from version 2 to the final public release version 3. The other workstations&#8217; search worked flawlessly. I decided to attempt the search function on my computer.</p>
<h3>First Solution Attempt:</h3>
<p>I opened my Application Data/Thunderbird/Profiles/(random).default/Mail and deleted the .msf files from each of my accounts. Reopened Thunderbird and the program proceeded to rebuild its index files. After it completed, search was still not working. Same result of &#8220;Searching&#8230;&#8221; which never finished.</p>
<h3>Second Solution Attempt:</h3>
<p>I tried uninstalling the program, and then reinstalled the program. Still no luck.</p>
<h3>Final Solution:</h3>
<p>I decided one more go. I opened my Application Data/Thunderbird/Profiles/(random).default folder and deleted the file global-messages-db.sqlite, and then restarted Thunderbird. I waited a few minutes for the indexing to complete. To my surprise, search worked perfectly. I am glad the feature is now working.</p>
<p>Hopefully,  anyone else experiences this issue with Thunderbird 3 search will be able to solve this problem.</p>
<p><a href="http://www.mozillamessaging.com/en-US/thunderbird/">Download Thunderbird 3</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/other/thunderbird-3-search-working/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery Uploadify 2 + CodeIgniter</title>
		<link>http://www.reloadedpc.com/code-igniter/jquery-uploadify-2-codeigniter/</link>
		<comments>http://www.reloadedpc.com/code-igniter/jquery-uploadify-2-codeigniter/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 20:43:53 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[Code Igniter]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[uploadify]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=123</guid>
		<description><![CDATA[Creating useful upload forms having become very popular on the web these days. Many people have found that flash based options create a more rich user experience. I was working on a project recently to allow a user to upload images to a CodeIgniter application. I enjoy using jQuery, and found an excellent flash based [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.uploadify.com"><img class="alignright size-medium wp-image-124" title="uploadify-logo" src="http://www.reloadedpc.com/wp-content/uploads/2009/10/uploadify-logo-300x48.jpg" alt="jQuery Uploadify 2 + CodeIgniter uploadify logo 300x48 " width="300" height="48" /></a>Creating useful upload forms having become very popular on the web these days. Many people have found that flash based options create a more rich user experience. I was working on a project recently to allow a user to upload images to a <a href="http://www.codeigniter.com">CodeIgniter</a> application. I enjoy using jQuery, and found an excellent flash based uploader in <a href="http://www.uploadify.com/">Uploadify</a>. <span id="more-123"></span>The most recent version added many new features over the previous version.  However, there seems to be a need for a quick tutorial for integrating Uploadify into CodeIgniter.  Here is a zip file that you can drop into your CodeIgniter application to see how it works.</p>
<p><a href="http://www.reloadedpc.com/wp-content/uploads/2009/10/codeigniter-uploadify.zip">Download CodeIgniter Uploadify Demo</a> (updated 11/25/2009)</p>
<p>The demo zip file contains the uploadify source files as well the controllers and views to get this to work. Just unzip the folder and drop into your CodeIgniter folder. The structure is:</p>
<blockquote>
<ul>
<li>/js/uploadify/ (uploadify files)</li>
<li>/system/application/controllers/upload.php</li>
<li>/system/application/views/upload/ (2 view files)</li>
<li>/uploads (blank folder where files are uploaded to)</li>
</ul>
</blockquote>
<p>The code is very simple and I have used it several different ways after getting this to work.  You will need to also add a standard upload form to the controller as well for users with Flash disabled. That&#8217;s part is pretty straight forward and is provide in the <a href="http://codeigniter.com/user_guide/libraries/file_uploading.html">CodeIgniter user guide</a>.  When I was first trying to integrate the two, I was trying too hard to find a solution using CI&#8217;s built in upload functions. I was reading in the documentation and found the onComplete callback.  I modified some of the code in the upload.php included in the uploadify source download. The file now echoes a JSON string back when the upload completes. The JSON string is then posted back to CodeIgniter using jQuery.</p>
<p>In /js/uploadify/uploadify.php where the upload is handled by the flash uploader, you will find the code creating the JSON string. You may add more values to the array where you would need them.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$filearray</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$filearray</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'file_name'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$newf_name</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$filearray</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'real_name'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$real_name</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$filearray</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'file_ext'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$file_ext</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$filearray</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'file_size'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$file_size</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$filearray</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'file_path'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$targetFile</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$filearray</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'file_temp'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$file_temp</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #000088;">$json_array</span> <span style="color: #339933;">=</span> <span style="color: #990000;">json_encode</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$filearray</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$json_array</span><span style="color: #339933;">;</span></pre></div></div>

<p>Here is where the JSON string is handled in CodeIgniter</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">//system/application/controllers/upload.php</span>
<span style="color: #000000; font-weight: bold;">function</span> uploadify<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
&nbsp;
		<span style="color: #666666; font-style: italic;">//Decode JSON returned by /js/uploadify/upload.php</span>
		<span style="color: #000088;">$file</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>input<span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>post<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'filearray'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #000088;">$data</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'json'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">json_decode</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$file</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #000088;">$this</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>load<span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>view<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'upload/uploadify'</span><span style="color: #339933;">,</span><span style="color: #000088;">$data</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span></pre></div></div>

<p>An additional note pointed out in the CI forums is to be sure to add in your /application/config/mimes.php file for each file type you will be uploading:</p>
<p><code><br />
'application/octet-stream'<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/code-igniter/jquery-uploadify-2-codeigniter/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>PetFinder API PHP Class Library</title>
		<link>http://www.reloadedpc.com/php/petfinder-api-php-class-library/</link>
		<comments>http://www.reloadedpc.com/php/petfinder-api-php-class-library/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 04:14:56 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[petfinder]]></category>
		<category><![CDATA[petfinder api]]></category>
		<category><![CDATA[php class]]></category>
		<category><![CDATA[php library]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=69</guid>
		<description><![CDATA[I was interested in a project for a website as to what data could be retrieved from PetFinder.com. To my surprise, on their website located in the footer is a link to their API documentation. In order to use their API, you must first fill out a developer request for a key &#38; password. I [...]]]></description>
			<content:encoded><![CDATA[<p>I was interested in a project for a website as to what data could be retrieved from <a href="http://www.petfinder.com">PetFinder.com</a>. To my surprise, on their website located in the footer is a link to their <a href="http://www.petfinder.com/developers/api-docs#methods">API documentation</a>. In order to use their API, you must first fill out a developer request for a key &amp; password. I did a quick look to see if anyone had written a php class for accessing the api, but couldn&#8217;t find anything useful. I have created a php class that you can call the certain methods available to retrieve the records. <span id="more-69"></span>This class will parse the returned xml as a data array. This libary requires just 4 easy steps to get data:</p>
<ol>
<li>Add api-password to class</li>
<li>Add api-key to class</li>
<li>Pass configuration values as an array</li>
<li>Call the method in the class</li>
</ol>
<p>Here is an example of how to use the php class</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">include_once</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'class.petfinder.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//include class</span>
<span style="color: #000088;">$pet</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Petfinder<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//create Petfinder object</span>
<span style="color: #000088;">$pet</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">setKey</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'12345'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//your api-key</span>
<span style="color: #000088;">$pet</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">setPass</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'abcdef'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//your api-secret</span>
<span style="color: #000088;">$config</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'location'</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'44805'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'animal'</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'dog'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//associative array of values to pass to class. array keys must match arguments from API</span>
<span style="color: #000088;">$pet</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">initialize</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$config</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">//pass values to the class</span>
<span style="color: #000088;">$data</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$pet</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">petFind</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//call API method which are accessed by camel casing them (pet.find=petFind)</span></pre></div></div>

<p>The xml data is returned as an associative array. The array has been mapped to the xml layout returned by PetFinder. Echo out the variable and you will see the returned status code, the array of returned values, and the xml response data from PetFinder.</p>
<p><a href="http://www.reloadedpc.com/petfinder/petfinder.php">Demo Output</a></p>
<p><a rel="attachment wp-att-72" href="http://www.reloadedpc.com/php/petfinder-api-php-class-library/attachment/class-petfinder/">Download Class File</a><br />
<a rel="attachment" href='http://www.reloadedpc.com/wp-content/uploads/2009/09/petfinder.zip'>Download Demo + Class File</a></p>
<p>If you would like to donate, you may do so by using Paypal.</p>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="10530731">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="PetFinder API PHP Class Library pixel " border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1" title="PetFinder API PHP Class Library" /><br />
</form>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/php/petfinder-api-php-class-library/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CodeIgniter Shopping Cart Library</title>
		<link>http://www.reloadedpc.com/code-igniter/codeigniter-shopping-cart-library/</link>
		<comments>http://www.reloadedpc.com/code-igniter/codeigniter-shopping-cart-library/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 18:22:20 +0000</pubDate>
		<dc:creator>Joe</dc:creator>
				<category><![CDATA[Code Igniter]]></category>
		<category><![CDATA[codeigniter]]></category>
		<category><![CDATA[shopping cart]]></category>
		<category><![CDATA[wfcart]]></category>

		<guid isPermaLink="false">http://www.reloadedpc.com/?p=44</guid>
		<description><![CDATA[CodeIgniter is a great PHP framework to work with. One of the items several developers have been asking to be included in the next CodeIgniter release, is a core library for a shopping cart. The library is being added for CI version 1.7.2, and is currently available via SVN on the CodeIgniter website.
UPDATE 09/12/2009: The [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.codeigniter.com">CodeIgniter</a> is a great PHP framework to work with. One of the items several <a rel="attachment wp-att-41" href="http://www.reloadedpc.com/code-igniter/open-flash-chart-2-codeigniter-2/attachment/ci_logo_flame/"><img class="alignright size-full wp-image-41" title="CodeIgniter Logo" src="http://www.reloadedpc.com/wp-content/uploads/2009/07/ci_logo_flame.jpg" alt="CodeIgniter Logo" width="150" height="164" /></a>developers have been asking to be included in the next CodeIgniter release, is a core library for a shopping cart. <span style="text-decoration: line-through;">The library is being added for CI version 1.7.2, and is currently available via <a href="http://dev.ellislab.com/svn/CodeIgniter/trunk">SVN on the CodeIgniter</a> website.</span></p>
<p><strong>UPDATE 09/12/2009: </strong>The shopping cart library has now been released as part of the Code Igniter stable release version 1.7.2. You can dowload it at  <a href="http://codeigniter.com/downloads/">CodeIgniter.com</a></p>
<p><span id="more-44"></span></p>
<p>I have used <a href="http://www.webforcecart.com/">wfCart</a> class in another CI project I worked on. It provides simple functionality: add, edit, delete products along with displaying the shopping cart contents. wfCart took a little hacking of the code and adding the CI object to the code in order to use some the builtin features of CI. It worked well, but lacked the naming conventions that make CI so great.</p>
<p>I decided to give the Cart library a try, so I put together some simple code to see the functionality of the Cart class. Posted below is download of files you can drop into your CodeIgniter application, and try it out for yourself.</p>
<p>I created a new controller and named it Cart.php.</p>
<p>The code in the controller offers simple functionality:</p>
<ul>
<li>View products</li>
<li>View shopping cart</li>
<li>Update shopping cart quantities</li>
<li>Delete products from shopping cart</li>
</ul>
<p>You will need a table to your database to store the product information.</p>
<p>[code]<br />
CREATE TABLE IF NOT EXISTS `product` (<br />
`product_id` int(10) NOT NULL AUTO_INCREMENT,<br />
`product_sku` varchar(100) NOT NULL,<br />
`product_description` varchar(200) NOT NULL,<br />
`product_family` varchar(250) NOT NULL,<br />
`product_quantity` double(10,4) NOT NULL,<br />
`product_price` double(10,2) NOT NULL,<br />
`vendor_id` int(10) NOT NULL,<br />
`user_id` int(10) NOT NULL,<br />
PRIMARY KEY (`product_id`),<br />
UNIQUE KEY `product_id` (`product_id`)<br />
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 ;[/code]</p>
<p>Just add a couple products to the table, and you should be able to test this out.</p>
<p><a rel="attachment wp-att-59" href="http://www.reloadedpc.com/code-igniter/codeigniter-shopping-cart-library/attachment/cart/">Download Demo</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.reloadedpc.com/code-igniter/codeigniter-shopping-cart-library/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
