<?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>The Web Doctor</title>
	<atom:link href="http://www.thewebdoctor.us/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.thewebdoctor.us/blog</link>
	<description>Greenville SC Web Management, Design and Implementation</description>
	<lastBuildDate>Sun, 02 Jan 2011 06:45:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Suregate.net Virtuemart Payment Class</title>
		<link>http://www.thewebdoctor.us/blog/2011/01/02/suregate-net-virtuemart-payment-class/</link>
		<comments>http://www.thewebdoctor.us/blog/2011/01/02/suregate-net-virtuemart-payment-class/#comments</comments>
		<pubDate>Sun, 02 Jan 2011 06:42:00 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[open source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[suregate]]></category>
		<category><![CDATA[vituemart]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=84</guid>
		<description><![CDATA[Ok &#8211; after much delay, here is the highly anticipated first release: &#60;?php /** * The ps_suregate class, containing the payment processing code *  for transactions with Suregate.net * * @version $Id: ps_suregate.php 2010-25-12 * @package VirtueMart * @subpackage payment * @copyright Copyright (C) 2009 created by: Soeren  - All rights reserved. * Modified for [...]]]></description>
			<content:encoded><![CDATA[<p>Ok &#8211; after much delay, here is the highly anticipated first release:</p>
<pre class="">
<div id="_mcePaste">
<div id="_mcePaste">&lt;?php</div>
<div id="_mcePaste">/**</div>
<div id="_mcePaste">* The ps_suregate class, containing the payment processing code</div>
<div id="_mcePaste">*  for transactions with Suregate.net</div>
<div id="_mcePaste">*</div>
<div id="_mcePaste">* @version $Id: ps_suregate.php 2010-25-12</div>
<div id="_mcePaste">* @package VirtueMart</div>
<div id="_mcePaste">* @subpackage payment</div>
<div id="_mcePaste">* @copyright Copyright (C) 2009 created by: Soeren  - All rights reserved.</div>
<div id="_mcePaste">* Modified for Suregate.net by TheWebDoctor.us</div>
<div id="_mcePaste">* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php</div>
<div id="_mcePaste">* VirtueMart is free software. This version may have been modified pursuant</div>
<div id="_mcePaste">* to the GNU General Public License, and as distributed it includes or</div>
<div id="_mcePaste">* is derivative of works licensed under the GNU General Public License or</div>
<div id="_mcePaste">* other free or open source software licenses.</div>
<div id="_mcePaste">* See /administrator/components/com_virtuemart/COPYRIGHT.php for copyright notices and details.</div>
<div id="_mcePaste">*</div>
<div id="_mcePaste">* http://virtuemart.net</div>
<div id="_mcePaste">*/</div>
<div id="_mcePaste">if( !defined( '_VALID_MOS' ) &amp;&amp; !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );</div>
<div id="_mcePaste">class ps_suregate {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>var $payment_code = "AN";</div>
<div id="_mcePaste">/*</div>
<div id="_mcePaste">* Show all configuration parameters for this payment method</div>
<div id="_mcePaste">* @returns boolean False when the Payment method has no configration</div>
<div id="_mcePaste">*/</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>function show_configuration() {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>global $VM_LANG, $sess;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$db = new ps_DB;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$payment_method_id = vmGet( $_REQUEST, 'payment_method_id', null );</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>/** Read current Configuration ***/</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>require_once(CLASSPATH ."payment/".__CLASS__.".cfg.php");</div>
<div id="_mcePaste">?&gt;</div>
<div id="_mcePaste">&lt;table class="adminform"&gt;</div>
<div id="_mcePaste">&lt;tr class="row0"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_ENABLE_AUTORIZENET_TESTMODE') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_TEST_REQUEST" class="inputbox" &gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_TEST_REQUEST == 'TRUE') echo "selected=\"selected\""; ?&gt; value="TRUE"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_YES') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_TEST_REQUEST == 'FALSE') echo "selected=\"selected\""; ?&gt; value="FALSE"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_NO') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_ENABLE_AUTORIZENET_TESTMODE_EXPLAIN') ?&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row1"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;Suregate.net Server Hostname&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;input type="text" name="AN_HOSTNAME" value="&lt;?php echo defined('AN_HOSTNAME') ? AN_HOSTNAME : 'https://secure.suregate.net:443/smartPayments/transact.asmx/ProcessCreditCard?' ?&gt;" /&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;Name of the Suregate.net Server, the requests are sent to. Default Value: &lt;strong&gt;https://secure.suregate.net:443/smartPayments/transact.asmx/ProcessCreditCard?&lt;/strong&gt;&lt;br /&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row0"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_USERNAME') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;input type="text" name="AN_LOGIN" class="inputbox" value="&lt;?php echo AN_LOGIN ?&gt;" /&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_USERNAME_EXPLAIN') ?&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row1"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_KEY') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;a class="button" id="changekey" href="&lt;?php $sess-&gt;purl($_SERVER['PHP_SELF']."?</div>
<div id="_mcePaste">page=store.payment_method_keychange&amp;pshop_mode=admin&amp;payment_method_id=$payment_method_id") ?&gt;" &gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_CHANGE_TRANSACTION_KEY') ?&gt;&lt;a/&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&amp;nbsp;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row0"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_PAYMENT_CVV2') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_CHECK_CARD_CODE" class="inputbox"&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_CHECK_CARD_CODE == 'YES') echo "selected=\"selected\""; ?&gt; value="YES"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_YES') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_CHECK_CARD_CODE == 'NO') echo "selected=\"selected\""; ?&gt; value="NO"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_NO') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_PAYMENT_CVV2_TOOLTIP') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row1"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_PAYMENT_AN_RECURRING') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_RECURRING" class="inputbox"&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_RECURRING == 'YES') echo "selected=\"selected\""; ?&gt; value="YES"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_YES') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_RECURRING == 'NO') echo "selected=\"selected\""; ?&gt; value="NO"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_NO') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_PAYMENT_AN_RECURRING_TOOLTIP') ?&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row0"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_AUTENTICATIONTYPE') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_TYPE" class="inputbox"&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_TYPE == 'AUTH_CAPTURE') echo "selected=\"selected\""; ?&gt; value="AUTH_CAPTURE"&gt;AUTH_CAPTURE&lt;/option&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_TYPE == 'AUTH_ONLY') echo "selected=\"selected\""; ?&gt; value="AUTH_ONLY"&gt;AUTH_ONLY&lt;/option&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_AUTENTICATIONTYPE_EXPLAIN') ?&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr&gt;&lt;td colspan="3"&gt;&lt;hr/&gt;&lt;/td&gt;&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row1"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_PAYMENT_ORDERSTATUS_SUCC') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_VERIFIED_STATUS" class="inputbox" &gt;</div>
<div id="_mcePaste">&lt;?php</div>
<div id="_mcePaste">$q = "SELECT order_status_name,order_status_code FROM #__{vm}_order_status ORDER BY list_order";</div>
<div id="_mcePaste">$db-&gt;query($q);</div>
<div id="_mcePaste">$order_status_code = Array();</div>
<div id="_mcePaste">$order_status_name = Array();</div>
<div id="_mcePaste">while ($db-&gt;next_record()) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$order_status_code[] = $db-&gt;f("order_status_code");</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$order_status_name[] =  $db-&gt;f("order_status_name");</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">for ($i = 0; $i &lt; sizeof($order_status_code); $i++) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>echo "&lt;option value=\"" . $order_status_code[$i];</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if (AN_VERIFIED_STATUS == $order_status_code[$i])</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>echo "\" selected=\"selected\"&gt;";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>else</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>echo "\"&gt;";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>echo $order_status_name[$i] . "&lt;/option&gt;\n";</div>
<div id="_mcePaste">}?&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_PAYMENT_ORDERSTATUS_SUCC_EXPLAIN') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row0"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_PAYMENT_ORDERSTATUS_FAIL') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_INVALID_STATUS" class="inputbox" &gt;</div>
<div id="_mcePaste">&lt;?php</div>
<div id="_mcePaste">for ($i = 0; $i &lt; sizeof($order_status_code); $i++) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>echo "&lt;option value=\"" . $order_status_code[$i];</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if (AN_INVALID_STATUS == $order_status_code[$i])</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>echo "\" selected=\"selected\"&gt;";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>else</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>echo "\"&gt;";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>echo $order_status_name[$i] . "&lt;/option&gt;\n";</div>
<div id="_mcePaste">} ?&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_PAYMENT_ORDERSTATUS_FAIL_EXPLAIN') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row1"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_RESPCODES') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_SHOW_ERROR_CODE" class="inputbox"&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_SHOW_ERROR_CODE == 'YES') echo "selected=\"selected\""; ?&gt; value="YES"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_YES') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_SHOW_ERROR_CODE == 'NO') echo "selected=\"selected\""; ?&gt; value="NO"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_NO') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_RESPCODES_EXPLAIN') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row0"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_EMAIL_MERCHANT') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_EMAIL_MERCHANT" class="inputbox"&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_EMAIL_MERCHANT == 'YES') echo "selected=\"selected\""; ?&gt; value="YES"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_YES') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_EMAIL_MERCHANT == 'NO') echo "selected=\"selected\""; ?&gt; value="NO"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_NO') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_EMAIL_MERCHANT_EXPLAIN') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;tr class="row1"&gt;</div>
<div id="_mcePaste">&lt;td class="labelcell"&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_EMAIL_CUSTOMER') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;</div>
<div id="_mcePaste">&lt;select name="AN_EMAIL_CUSTOMER" class="inputbox"&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_EMAIL_CUSTOMER == 'YES') echo "selected=\"selected\""; ?&gt; value="YES"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_YES') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;option &lt;?php if (AN_EMAIL_CUSTOMER == 'NO') echo "selected=\"selected\""; ?&gt; value="NO"&gt;</div>
<div id="_mcePaste">&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_NO') ?&gt;&lt;/option&gt;</div>
<div id="_mcePaste">&lt;/select&gt;</div>
<div id="_mcePaste">&lt;/td&gt;</div>
<div id="_mcePaste">&lt;td&gt;&lt;?php echo $VM_LANG-&gt;_('PHPSHOP_ADMIN_CFG_AUTORIZENET_EMAIL_CUSTOMER_EXPLAIN') ?&gt;&lt;/td&gt;</div>
<div id="_mcePaste">&lt;/tr&gt;</div>
<div id="_mcePaste">&lt;/table&gt;</div>
<div id="_mcePaste">&lt;?php</div>
<div id="_mcePaste">// return false if there's no configuration</div>
<div id="_mcePaste">return true;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>function has_configuration() {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>// return false if there's no configuration</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>return true;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>/**</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* Returns the "is_writeable" status of the configuration file</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* @param void</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* @returns boolean True when the configuration file is writeable, false when not</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>*/</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>function configfile_writeable() {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>return is_writeable( CLASSPATH."payment/".__CLASS__.".cfg.php" );</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>/**</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* Returns the "is_readable" status of the configuration file</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* @param void</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* @returns boolean True when the configuration file is writeable, false when not</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>*/</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>function configfile_readable() {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>return is_readable( CLASSPATH."payment/".__CLASS__.".cfg.php" );</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>/**</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* Writes the configuration file for this payment method</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* @param array An array of objects</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>* @returns boolean True when writing was successful</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>*/</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>function write_configuration( &amp;$d ) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$my_config_array = array("AN_TEST_REQUEST" =&gt; $d['AN_TEST_REQUEST'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_LOGIN" =&gt; $d['AN_LOGIN'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_HOSTNAME" =&gt; $d['AN_HOSTNAME'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_TYPE" =&gt; $d['AN_TYPE'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_CHECK_CARD_CODE" =&gt; $d['AN_CHECK_CARD_CODE'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_VERIFIED_STATUS" =&gt; $d['AN_VERIFIED_STATUS'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_INVALID_STATUS" =&gt; $d['AN_INVALID_STATUS'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_RECURRING" =&gt; $d['AN_RECURRING'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_EMAIL_MERCHANT" =&gt; $d['AN_EMAIL_MERCHANT'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_EMAIL_CUSTOMER" =&gt; $d['AN_EMAIL_CUSTOMER'],</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>"AN_SHOW_ERROR_CODE" =&gt; $d['AN_SHOW_ERROR_CODE']</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>);</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$config = "&lt;?php\n";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$config .= "if( !defined( '_VALID_MOS' ) &amp;&amp; !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' ); \n\n";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>foreach( $my_config_array as $key =&gt; $value ) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$config .= "define ('$key', '$value');\n";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$config .= "?&gt;";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if ($fp = fopen(CLASSPATH ."payment/".__CLASS__.".cfg.php", "w")) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>fputs($fp, $config, strlen($config));</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>fclose ($fp);</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>return true;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>else {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>return false;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>/**************************************************************************</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>** name: process_payment()</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>** created by: Soeren</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>** description: process transaction with Suregate.net</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>** parameters: $order_number, the number of the order, we're processing here</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>**            $order_total, the total $ of the order</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>** returns:</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>***************************************************************************/</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>function process_payment($order_number, $order_total, &amp;$d) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>global $vendor_mail, $vendor_currency, $VM_LANG, $vmLogger;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$database = new ps_DB;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$ps_vendor_id = $_SESSION["ps_vendor_id"];</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$auth = $_SESSION['auth'];</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$ps_checkout = new ps_checkout;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>// Get the Configuration File for authorize.net</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>require_once(CLASSPATH ."payment/".__CLASS__.".cfg.php");</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>// connector class</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>require_once(CLASSPATH ."connectionTools.class.php");</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>// Get the Transaction Key securely from the database</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$database-&gt;query( "SELECT ".VM_DECRYPT_FUNCTION."(payment_passkey,'".ENCODE_KEY."') as passkey FROM #__{vm}_payment_method</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>WHERE payment_class='".__CLASS__."'</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>AND payment_enabled = 'Y'" );</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$transaction = $database-&gt;record[0];</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if( empty($transaction-&gt;passkey)) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$vmLogger-&gt;err( $VM_LANG-&gt;_('PHPSHOP_PAYMENT_ERROR',false).'. Technical Note: The required transaction key is empty! The payment method settings must be</div>
<div id="_mcePaste">reviewed.' );</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>return false;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>// Get user billing information</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$dbbt = new ps_DB;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$qt = "SELECT * FROM #__{vm}_user_info WHERE user_id=".$auth["user_id"]." AND address_type='BT'";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$dbbt-&gt;query($qt);</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$dbbt-&gt;next_record();</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$user_info_id = $dbbt-&gt;f("user_info_id");</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if( $user_info_id != $d["ship_to_info_id"]) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>// Get user billing information</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$dbst = new ps_DB;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$qt = "SELECT * FROM #__{vm}_user_info WHERE user_info_id='".$d["ship_to_info_id"]."' AND address_type='ST'";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$dbst-&gt;query($qt);</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$dbst-&gt;next_record();</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>else {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$dbst = $dbbt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>// Option to send email to merchant from gateway</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if (AN_EMAIL_MERCHANT == 'NO') {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$vendor_mail = "";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if (AN_EMAIL_CUSTOMER == 'YES') {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$email_customer = "TRUE";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>} else {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$email_customer = "FALSE";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste">//Authnet vars to send</div>
<div id="_mcePaste">$formdata = array (</div>
<div id="_mcePaste">'UserName' =&gt; AN_LOGIN,</div>
<div id="_mcePaste">'Password' =&gt;  $transaction-&gt;passkey,</div>
<div id="_mcePaste">'TransType'=&gt; 'Sale',</div>
<div id="_mcePaste">'CardNum' =&gt; $_SESSION['ccdata']['order_payment_number'],</div>
<div id="_mcePaste">'ExpDate' =&gt; ($_SESSION['ccdata']['order_payment_expire_month']) . substr ($_SESSION['ccdata']['order_payment_expire_year'],2),</div>
<div id="_mcePaste">'Amount' =&gt; $order_total,</div>
<div id="_mcePaste">'MagData' =&gt; '',</div>
<div id="_mcePaste">'NameOnCard' =&gt; $_SESSION['ccdata']['order_payment_name'],</div>
<div id="_mcePaste">'InvNum' =&gt; substr($order_number, 0, 20),</div>
<div id="_mcePaste">'PNRef' =&gt; '',</div>
<div id="_mcePaste">'Zip' =&gt; substr($dbbt-&gt;f("zip"), 0, 20),</div>
<div id="_mcePaste">'Street' =&gt; substr($dbbt-&gt;f("address_1"), 0, 60),</div>
<div id="_mcePaste">'CVNum' =&gt; '',</div>
<div id="_mcePaste">'ExtData' =&gt; '',</div>
<div id="_mcePaste">);</div>
<div id="_mcePaste">//build the post string</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$poststring = '';</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>foreach($formdata AS $key =&gt; $val){</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$poststring .= urlencode($key) . "=" . urlencode($val) . "&amp;";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>// strip off trailing ampersand</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$poststring = substr($poststring, 0, -1);</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if (defined('AN_HOSTNAME')) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$host = AN_HOSTNAME;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>} else {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$host = 'https://secure.suregate.net:443/smartPayments/transact.asmx/ProcessCreditCard?';</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$result = vmConnector::handleCommunication( "https://secure.suregate.net:443/smartPayments/transact.asmx/ProcessCreditCard?", $poststring );</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if( !$result ) {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$vmLogger-&gt;err('The transaction could not be completed.' );</div>
<div id="_mcePaste">$vmLogger-&gt;notice( var_export($result,true) );</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>return false;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$response=new SimpleXMLElement($result);</div>
<div id="_mcePaste">// Approved - Success!</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if ($response-&gt;Result=='0') {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$d["order_payment_log"] = $VM_LANG-&gt;_('PHPSHOP_PAYMENT_TRANSACTION_SUCCESS').": ";</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$vmLogger-&gt;debug( $d['order_payment_log']);</div>
<div id="_mcePaste">return True;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span> }</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste">// Payment Declined</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>elseif ($response-&gt;Result='12') {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>if (AN_SHOW_ERROR_CODE == 'YES') {</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$vmLogger-&gt;notice( var_export($result,true) );</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>$d["order_payment_log"] = $response;<span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>return False;<span style="white-space: pre;"> </span></div>
<div id="_mcePaste"><span style="white-space: pre;"> </span> }</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>}<span style="white-space: pre;"> </span></div>
<div id="_mcePaste">}</div>
</div>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2011/01/02/suregate-net-virtuemart-payment-class/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Professional Business Communication</title>
		<link>http://www.thewebdoctor.us/blog/2010/07/28/professional-business-communication/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/07/28/professional-business-communication/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 01:05:34 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[communication]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=80</guid>
		<description><![CDATA[I dunno, it came up a few times a work today and I considered being unconventional in all instances. Actually ended up being conventional and un equally and they all came out well. So far anyways. Hey check in with my man Craig Byrne (No, not like John Byrne) on this page: http://www.professionalbusinesscommunication.com]]></description>
			<content:encoded><![CDATA[<p>I dunno, it came up a few times a work today and I considered being unconventional in all instances. Actually ended up being conventional and un equally and they all came out well. So far anyways. Hey check in with my man Craig Byrne (No, not like <a href="http://www.google.com/images?q=john+byrne&amp;um=1&amp;ie=UTF-8&amp;source=univ&amp;ei=ldNQTNfiC4L58Aaw2bXOAQ&amp;sa=X&amp;oi=image_result_group&amp;ct=title&amp;resnum=5&amp;ved=0CFIQsAQwBA&amp;biw=1440&amp;bih=809" target="_blank">John Byrne</a>) on this page:</p>
<p><a href="http://www.professionalbusinesscommunication.com" target="_blank">http://www.professionalbusinesscommunication.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/07/28/professional-business-communication/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why is it so hip to be unconventional?</title>
		<link>http://www.thewebdoctor.us/blog/2010/07/10/why-is-it-so-hip-to-be-unconventional/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/07/10/why-is-it-so-hip-to-be-unconventional/#comments</comments>
		<pubDate>Sat, 10 Jul 2010 16:57:57 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=76</guid>
		<description><![CDATA[Heck, I just figured conventional practicality is what everyone else expects &#8211; especially in business. The competition likes to talk about their competition going down in flames while suddenly discovering the holy grail of twitter and facebook. And by holy grail I mean your online office post it note and wadded paper wastebasket. Anyways, Keep It Simple [...]]]></description>
			<content:encoded><![CDATA[<p>Heck, I just figured conventional practicality is what everyone else expects &#8211; especially in business. The competition likes to talk about their competition going down in flames while suddenly discovering the holy grail of twitter and facebook. And by holy grail I mean your online office post it note and wadded paper wastebasket. Anyways, Keep It Simple Stupid.</p>
<p>In other news, have you noticed all the people driving in from out of town? &#8216;GSP Arena Tops 750K&#8217; Coming soon&#8230;</p>
<p>Man I do love Greenville &#8211; especially disc golf in Greenville. I wanna put <a href="http://www.facebook.com/#!/pages/Timmons-Park-Greenville-SC/244224410038?ref=ts" target="_blank">Timmons</a> up for a while, and so does my average <img src='http://www.thewebdoctor.us/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/07/10/why-is-it-so-hip-to-be-unconventional/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Get on the Google Maps!</title>
		<link>http://www.thewebdoctor.us/blog/2010/04/22/get-on-the-google-maps/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/04/22/get-on-the-google-maps/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 20:06:36 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[QR]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[cell phone]]></category>
		<category><![CDATA[google maps]]></category>
		<category><![CDATA[google small business center]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=73</guid>
		<description><![CDATA[One of the most important and very first things we do for our clients is GET THEM ON GOOGLE MAPS! And now that they have the new QR codes this is more important than ever! First let&#8217;s take a look at what exactly a QR code is and how it will benefit business of the [...]]]></description>
			<content:encoded><![CDATA[<p>One of the most important and very first things we do for our clients is GET THEM ON GOOGLE MAPS! And now that they have the new QR codes this is more important than ever! First let&#8217;s take a look at what exactly a QR code is and how it will benefit business of the future&#8230;<br />
<object id="viddler_4509b5f0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="437" height="370" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><param name="src" value="http://www.viddler.com/player/4509b5f0/" /><param name="name" value="viddler_4509b5f0" /><param name="allowfullscreen" value="true" /><embed id="viddler_4509b5f0" type="application/x-shockwave-flash" width="437" height="370" src="http://www.viddler.com/player/4509b5f0/" name="viddler_4509b5f0" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>
<p>So as you can imagine, the QR system is going to blow a whole through the interactive barriers of personalized marketing! To insure our clients were ready to go with this new technology we immediately upgraded one of our most dedicated, <a title="Keowee Falls RV Park QR Code" href="http://www.keoweerv.com/directions-to-keowee-falls-rv-park-campgrounds.html" target="_blank">Keowee Falls RV Park</a> with their very own personalized QR code from Google and published it immediately to their website. <a title="Keowee Falls RV Park QR Code" href="http://www.keoweerv.com/directions-to-keowee-falls-rv-park-campgrounds.html" target="_blank">Check it out</a> &#8211; isn&#8217;t that cool!</p>
<div id="attachment_74" class="wp-caption alignleft" style="width: 280px"><a href="http://www.thewebdoctor.us/blog/wp-content/uploads/2010/04/chart-2.png"><img class="size-full wp-image-74" title="The Web Doctor QR" src="http://www.thewebdoctor.us/blog/wp-content/uploads/2010/04/chart-2.png" alt="Scan this for a $25 coupon off our services!" width="270" height="270" /></a>
<p class="wp-caption-text">Scan this for a $25 coupon off our services!</p>
</div>
<p>In the coming weeks we will be adding this feature to all our existing and new clients, we&#8217;d love to hear your response. How would you use a QR code on your website?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/04/22/get-on-the-google-maps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Who&#8217;s gonna read my Blog?</title>
		<link>http://www.thewebdoctor.us/blog/2010/03/21/whos-gonna-read-my-blog/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/03/21/whos-gonna-read-my-blog/#comments</comments>
		<pubDate>Sun, 21 Mar 2010 17:47:40 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[article ideas]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[target market audience]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=69</guid>
		<description><![CDATA[Link your Blog up to Facebook, or call us to do it for you! Every time you post a new article it will also publish a link to your feed (that your friends can see in their Home page) that intros your article with the first couple of sentences and one of any pictures you included. Here&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Link your Blog up to <a title="Facebook" href="http://www.facebook.com" target="_blank">Facebook</a>, or call us to do it for you! Every time you post a new article it will also publish a link to your feed (that your friends can see in their Home page) that intros your article with the first couple of sentences and one of any pictures you included. Here&#8217;s the kicker though &#8211; you&#8217;ll realistically need 200 friends for every single person to subscribe to your blog. OR, 1 person with 1000 friends that likes your article enough to share it with his friends &#8211; who are all BLOG MANIACS that will comment on your blogs, share them with their friends who will in turn call the 5 o&#8217;clock news screaming about, &#8220;OMG DID YOU READ THAT FREAKING BAWD AZZ BLAWG???!?!?&#8221;. In the event you ever find yourself in the latter situation I&#8217;m gonna assume you are writing about Twilight movies or Canadian Hockey or something.</p>
<p>If you are writing about <a title="Sheet Metal Fabrication" href="http://kandrfabshop.com/blog/" target="_blank">Sheet Metal Fabrication</a> or <a title="MLM Recruiting " href="http://90recruits.blogspot.com/" target="_blank">MLM Network Marketing Recruiting</a> then you will more than likely be writing for a finite audience that you could possibly even calculate the size and make-up of. Think about this when you are writing your blog, &#8220;Who wants to read this?&#8221; and you will then discover enhanced motivation and purpose.</p>
<p>Finally, read your own blog and ask yourself &#8211; would I read this? If not, fun it up a bit! Get your stick out of the mud and join us this weekend at FunBlogTacular.GoodTimes! Seriously, make it fun and it will be fun every time. Remember you are building a library of articles for current AND Future Subscribers so making them fun also makes them durable.</p>
<p>Alright, have a good time!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/03/21/whos-gonna-read-my-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What is a Blog?</title>
		<link>http://www.thewebdoctor.us/blog/2010/03/16/what-is-a-blog/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/03/16/what-is-a-blog/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 16:50:57 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=67</guid>
		<description><![CDATA[A blog is most like a magazine. You would pick up a magazine and read the articles and look at the pictures. You would look at a blog website and read the articles and look at the pictures. If you like the articles, you would subscribe to the magazine so that you get the new articles in [...]]]></description>
			<content:encoded><![CDATA[<p>A blog is most like a magazine. You would pick up a magazine and read the articles and look at the pictures. You would look at a blog website and read the articles and look at the pictures. If you like the articles, you would subscribe to the magazine so that you get the new articles in your mailbox every month. With a blog you would subscribe to get the new articles emailed to you as soon as they are written. You would give a magazine to a friend to look at an article you liked. You would share an article on a blog by clicking a &#8220;share this&#8221; link to post the link to the article on your <a title="Facebook" href="http://www.facebook.com" target="_blank">facebook</a> wall, or you would copy and paste the link in an email to your friends.</p>
<p>The one thing a blog does that a magazine does not is let you leave comments on the articles. So you might read a blog article and all the comments below the article one day &#8211; then go back the next day to read new comments or to respond to comments about your comment.</p>
<p>Here is about the best video on what about a Blog is:<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="500" height="405" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/NN2I1pWXjXI&amp;hl=en_US&amp;fs=1&amp;rel=0&amp;border=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="500" height="405" src="http://www.youtube.com/v/NN2I1pWXjXI&amp;hl=en_US&amp;fs=1&amp;rel=0&amp;border=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/03/16/what-is-a-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Twitter to Syndicate a Live Feed</title>
		<link>http://www.thewebdoctor.us/blog/2010/02/27/using-twitter-to-syndicate-a-live-feed/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/02/27/using-twitter-to-syndicate-a-live-feed/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 13:16:45 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=50</guid>
		<description><![CDATA[For some strange reason I woke up around 5:30 this morning, rolled over and checked the news on my laptop. BANG &#8211; an 8.8 magnitude earthquake hits Chile causing a massive Pacific Tidal Wave Warning that we could easily be watching the aftermath of on the news for the next few days&#8230;if God forbid one [...]]]></description>
			<content:encoded><![CDATA[<p>For some strange reason I woke up around 5:30 this morning, rolled over and checked the news on my laptop. BANG &#8211; an 8.8 magnitude earthquake hits Chile causing a massive Pacific Tidal Wave Warning that we could easily be watching the aftermath of on the news for the next few days&#8230;if God forbid one does hit.</p>
<p>In the event this quake causes major damage or loss of life, we always recommend donating to the <a title="Chile Relief Effort" href="http://www.redcross.org/" target="_blank">Red Cross</a> for relief effort.</p>
<p>As a service to your visitors it could be worthwhile to offer a live rss feed of any current news. This not only gives patrons to your web page information they would have otherwise gone elsewhere else to find, but also gives them other reasons to refer your site to friends in their social sphere! In Joomla you would first go to <a href="http://search.twitter.com/">Twitter Search</a> to get the rss, then create a custom feed module to syndicate that content.</p>
<p>Here is a quick alternative example using the rss feed widget from <a title="Rss feed widget" href="http://www.feedzilla.com/" target="_blank">feedzilla </a>and the search results for Chile.</p>
<p><!-- Begin code - Feedzilla's news widget -->
<div align='center' style='width:600px;'><iframe src='http://www.feedzilla.com/tools/flash_new.asp?lang=us&#038;id=10270827022010610&#038;mode=e&#038;charset=iso-8859-1&#038;lcid=1033&#038;country=us&#038;c=&#038;code=html&#038;scroll=v&#038;prov=keywords&#038;width=600&#038;height=400&#038;cat=Top%20News&#038;cat2=Top%20Stories&#038;num_articles=10&#038;show_border=Yes&#038;show_summaries=Yes&#038;show_sources=Yes&#038;show_dates=Yes&#038;title=&#038;keywords=chile&#038;andor=and&#038;url=&#038;headers_size=14pt&#038;title_size=12pt&#038;title_bold=Yes&#038;font_size=10pt&#038;font_family=Arial&#038;text_alignment=Left&#038;space=Yes&#038;titlecolor=%2315aa15&#038;fcolor=%232200cc&#038;desccolor=%231b1b1b&#038;sourcecolor=%23008000&#038;datecolor=%23777777&#038;bordercolor=%2300232c&#038;bgcolor=%23ffffff&#038;related_show=No&#038;kwd=' width='600' height='400' scrolling='no' frameborder='0' marginwidth='0' marginheight='0' allowtransparency='True' style='border:1px solid #00232c'></iframe><BR><font style='font-size:10px;'></div>
<p><!-- End code - Feedzilla's news widget--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/02/27/using-twitter-to-syndicate-a-live-feed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Submit Your Ticket For Help!</title>
		<link>http://www.thewebdoctor.us/blog/2010/02/24/submit-your-ticket-for-help/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/02/24/submit-your-ticket-for-help/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 16:55:59 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[help]]></category>
		<category><![CDATA[help desk]]></category>
		<category><![CDATA[it support]]></category>
		<category><![CDATA[ticket]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=45</guid>
		<description><![CDATA[We are very proud to introduce our Help Ticket System, our Online Help Desk today to most effectively provide IT Support and Web Design services to Greenville SC! Web Design Software Issues Hardware Malfunction Upgrades Virus Linux Windows Macintosh WiFi Hard Drive Failure Backup Solutions Hosting Internet Marketing Web Training Keyboard Shortcuts That Save Time Facebook [...]]]></description>
			<content:encoded><![CDATA[<p>We are very proud to introduce our <a title="Help Request" href="/help" target="_blank">Help Ticket System</a>, our <a href="/help">Online Help Desk</a> today to most effectively provide <a href="/help">IT Support</a> and <a href="/">Web Design</a> services to Greenville SC!</p>
<ul>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Web Design</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Software Issues</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Hardware Malfunction</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Upgrades</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Virus</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Linux</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Windows</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Macintosh</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">WiFi</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Hard Drive Failure</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Backup Solutions</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Hosting</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Internet Marketing</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Web Training</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Keyboard Shortcuts That Save Time</a></li>
<li><a href="http://thewebdoctor.us/help/index.php?action=Register">Facebook Training</a></li>
</ul>
<p><a href="http://thewebdoctor.us/help/index.php?action=Register">Register on our Trouble Ticket Page</a> and Submit a New Ticket. We will contact you within 24 hours to submit our affordable proposal, after which The Web Doctor will go to work immediately to resolve your Small Business Computer or Website Issue!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/02/24/submit-your-ticket-for-help/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>90 Recruits In 90 Days Review</title>
		<link>http://www.thewebdoctor.us/blog/2010/01/25/90-recruits-in-90-days-review/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/01/25/90-recruits-in-90-days-review/#comments</comments>
		<pubDate>Tue, 26 Jan 2010 01:55:51 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[mlm]]></category>
		<category><![CDATA[90 recruits]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=38</guid>
		<description><![CDATA[I don&#8217;t read many paper backs since the explosion of online information &#8211; but Mike&#8217;s book &#8220;90 Recruits In 90 Days&#8221; has all the key elements towards motivating my decision to absorb it in play! First &#8211; Mikes book HAS LARGE PRINT SO I DON&#8217;T HAVE TO SQUINT. Secondly it was short enough to spare [...]]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignleft" style="width: 310px"><a href="http://www.90recruitsin90days.com"><img title="Recruits" src="http://www.90recruitsin90days.com/images/stories/photo11.jpg" alt="Mlm Recruits" width="300" height="216" /></a>
<p class="wp-caption-text">90 Recruits In 90 Days</p>
</div>
<p>I don&#8217;t read many paper backs since the explosion of online information &#8211; but Mike&#8217;s book &#8220;<a title="mlm network recruiting" href="http://www.90recruitsin90days.com" target="_blank">90 Recruits In 90 Days</a>&#8221; has all the key elements towards motivating my decision to absorb it in play! First &#8211; Mikes book HAS LARGE PRINT SO I DON&#8217;T HAVE TO SQUINT. Secondly it was short enough to spare several moments of my time, yet simultaneously full of enough great information that indulging in it more than justifies the dedication. I also want you the reader to be aware that the dedication I previously spoke of was spent effortlessly as <a title="mlm network recruiting" href="http://www.90recruitsin90days.com" target="_blank">90 Recruits In 90 Days</a> indeed achieves the third of my criteria &#8211; it was fun to read!<br />
<a title="mlm network recruiting" href="http://www.90recruitsin90days.com" target="_blank">90 Recruits In 90 Days</a> will give you the GAME PLAN to achieve <a title="mlm network recruiting" href="http://www.90recruitsin90days.com" target="_blank">90 Recruits In 90 Days</a> OR DOUBLE YOUR MONEY BACK GUARANTEED! As we are all aware any profession requires a library of knowledge in the relentless struggle towards capturing success. Mike&#8217;s book <a title="mlm network recruiting" href="http://www.90recruitsin90days.com" target="_blank">90 Recruits In 90 Days</a> is one of the books you would want in your library if your JOB DEPENDS ON  ACHIEVING A QUOTA OF RECRUITS. Mike guarantees that if you read this book and follow the plan you will not only keep your job, but have much greater success with your career!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/01/25/90-recruits-in-90-days-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Build Your Own MLM Tracking Software With Joomla</title>
		<link>http://www.thewebdoctor.us/blog/2010/01/19/build-your-own-mlm-tracking-software-with-joomla/</link>
		<comments>http://www.thewebdoctor.us/blog/2010/01/19/build-your-own-mlm-tracking-software-with-joomla/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 17:08:03 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[mlm]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[4g]]></category>
		<category><![CDATA[cb]]></category>
		<category><![CDATA[clear]]></category>
		<category><![CDATA[community builder]]></category>
		<category><![CDATA[joomla components]]></category>
		<category><![CDATA[sql2excel]]></category>
		<category><![CDATA[tech gen x]]></category>
		<category><![CDATA[virtuemart]]></category>
		<category><![CDATA[web design greenville sc]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[website management]]></category>

		<guid isPermaLink="false">http://www.thewebdoctor.us/blog/?p=33</guid>
		<description><![CDATA[We&#8217;ve been delivering great web pages to clients of The Web Doctor for several years now with Joomla. Along the way I&#8217;ve discovered many solutions to providing features requested on a custom web site with this software. Most recently we were approached by Tech Gen X with the task of building a custom payout reporting [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve been delivering great web pages to clients of The Web Doctor for several years now with <a href="http://www.joomla.org" target="_blank">Joomla</a>. Along the way I&#8217;ve discovered many solutions to providing features requested on a custom web site with this software. Most recently we were approached by <a href="http://www.techgenx.us" target="_blank">Tech Gen X</a> with the task of building a custom payout reporting system that would not only track the earned commissions of an associate, but also track the pay out of the recruits under that associate for five generations! After looking over all the mlm downline software packages we decided it could be best case scenario if we could build our own solution from the ground up using Joomla components and open source ingenuity.</p>
<p>First of course we started with a standard 1.5 install. I will have to take a moment here and suggest that if you want a real website quick that scales nice you will want to go with Joomla. It&#8217;s kind of like the Linux of CMS in the sense that it&#8217;s free and has a large repository of add ons available at your dispense. Being the source code is open, available and based on consortium web standards you will find that Joomla is flexible to modify to your needs.</p>
<p>Next we needed to add people, phone numbers, addresses etc&#8230; To make Joomla socially capable you have no shortage of package options, but we use <a href="http://www.joomlapolis.com/" target="_blank">Community Builder</a> for this operation. CB is like the Linux of Social Community Joomla add ons with all the upgrade modules to get excited about. So with this CB we could have an associate register and define what information we needed from that individual. We could also associate that person with their sponsor via ID. CB allows you to query the registering associate with custom defined variables like, &#8220;Sponsor ID&#8221;. The Sponsor ID is the recruiting associates ID number so if my ID is 3 and I recruit an associate, that associates Sponsor ID is 3. Now if that associate I recruited goes out and recruits someone else, if my recruits ID is 4 then that will be the Sponsor ID of whoever they recruit.  So with CB and these custom fields we have achieved a tracking system.</p>
<p>Next we need to define commissions. In this case the company is selling <a href="http://www.clear.com/" target="_blank">Clear 4g Wimax Super Fast Mobile Internet Service</a> and other products. Each sale nets a defined commission for the associate so we need a way for the associate to enter that sale. For this I looked at the sales reporting process much like a reverse purchase. The associate would pick out what product they sold, enter the mac ID on the equipment and check out with their &#8220;order&#8221;. For this I went to <a href="http://virtuemart.net/">VirtueMart</a>. VM is like the Linux of shopping cart addons for Joomla. Starting to see a benefit of this Joomla yet? So in the shopping cart &#8211; which was HEAVILY MODIFIED &#8211; we were able to link each associate with an order id that included a commission amount. Now we are able to track associates, track the sales they made&#8230;but what about a payout commission for the five generations of recruits?</p>
<p>On an average sale the associate would make a $150 commission, and the person that directly recruited that associate would make $100. The next five generations of sponsors would each make $20. With our system already tracking who sold what and who sponsored who we just needed to tie it all together into a system that reported that commission. Long to short we went with <a href="http://joomla-r-us.com/" target="_blank">SQL2EXCEL</a>. s2E is like the Macintosh computer of database reporting. This amazing software component for Joomla can run sql queries against any table in your database and report them in a downloadable excel spreadsheet or, what we liked the most, in a rendered web page. Before I tell you what we did let me mention that S2E is a pay for component that cost us around $35. Very well worth it! First we created a query that reports to the logged in associate who their recruits are and who has been recruited by their recruits through six generations. This was achieved with lots of caffeine and table join trial and error. Fortunately their are very helpful people and resources at <a href="http://forums.mysql.com/">http://forums.mysql.com/</a>. Next we crafted a query that took the previous query as a base, then took the order IDs for that associate and their six generations and calculated the earned commission of both direct sales and generational commissions.</p>
<p>In summary we used Joomla, Community Builder, SQL2EXCEL and VirtueMart all heavily modified to achieve the commission payout software for Tech Gen X. If you are in need of a similar software solution for your startup, feel free to contact The Web Doctor for a free consultation.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thewebdoctor.us/blog/2010/01/19/build-your-own-mlm-tracking-software-with-joomla/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

