<?xml version="1.0" encoding="iso-8859-1" standalone="yes" ?>
<rss version="2.0">
<channel>
<title>Viking Coders Miva Merchant Module Support and FAQ - Most Recent FAQ Entries:</title>
<description>FAQ / Knowledge Base for Miva Merchant Modules</description>
<link>http://vikingcoders.com/faq</link>	<item>
		<title><![CDATA[I have the UPS Custom Integration configured so that customers select on the OINF screen (customer information)  whether or not their address is residential and commercial.  If they select "commercial" they see the correct shipping in the shipping selection list but on the page after that (OPAY- Payment Information) they see the residential charge. Why?]]></title>
		<description><![CDATA[<p>
This is being caused by the Shipping Supermod module.  If you make that module inactive (by going to it&#39;s page under &gt;Modules and unchecking the "active" box) the UPS shipping rates will again be correctly displayed.<br />
<br />
The problem lies in the way the Shipping Supermod does what it does.  Instead of letting each individual shipping module calculate shipping, the Shipping Supermod intercepts the process. The first time it displays the shipping to the commercial customer the rates are correct (the Shipping Supermod correctly contacts the UPS Custom Integration to have it calculate shipping at that point and the "residential" option is correctly handled.   However, after the customer selects a shipping method and proceeds to the payment information page the Shipping Supermod "breaks".  It deviates from the way Merchant normally handles the saving of the shipping method.  Instead of passing this responsibility on to the UPS Custom Integration as it should, it instead calculates the shipping rates all over again, but this time since it&#39;s being done at the wrong place, the "residential" option is lost and the address is treated as commercial.
</p>
<p>
To work around this add e item:<br />
<br />
&amp;lt;mvt:item name="brokups_carry" param="" /&amp;gtl;
</p>
<p>
to your OSEL page (Shipping/Payment selection screen) and make sure that you have the item "brokups_carry" assigned to that page.  This token adds a hidden form field to hold the "residential" selection that the customer made on the previous screen so that when the Shipping Supermod recalculates shipping it will be available to it.  And you&#39;ll need to make sure using the latest version of the UPS Custom Integration module file (always a good idea). 
</p>
]]></description>
		<link>http://vikingcoders.com/faq/content/422/506/en/i-have-the-ups-custom-integration-configured-so-that-customers-select-on-the-oinf-screen-customer-information-whether-or-not-their-address-is-residential-and-commercial-if-they-select-commercial-they-see-the-correct-shipping-in-the-shipping-selection-list-but-on-the-page-after-that-opay_-payment-information-they-see-the-residential-charge-why.html</link>
		<pubDate>Fri, 11 Jul 2008 14:21:00 GMT</pubDate>
	</item>
	<item>
		<title><![CDATA[I would like to conditionally display something for a product but only if the current level is '3'.  How do I do this?]]></title>
		<description><![CDATA[<br />
<br />
To get this functionality, use the token/item:<br />
<br />
&lt;mvt:item name="BROK_INVENTORY" param="define_variable" /&gt;<br />
<br />
This will define a global variable consisting of:<br />
<br />
g.BROK_INVENTORY:tracking<br />
g.BROK_INVENTORY:product_id<br />
g.BROK_INVENTORY:attr_string<br />
g.BROK_INVENTORY:error<br />
g.BROK_INVENTORY:count<br />
g.BROK_INVENTORY:level<br />
g.BROK_INVENTORY:level_name<br />
g.BROK_INVENTORY:short_message<br />
g.BROK_INVENTORY:long_message<br />
g.BROK_INVENTORY:attr_message<br />
g.BROK_INVENTORY:permit_sale<br />
g.BROK_INVENTORY:permit_display<br />
<br />
You can then test the variable&#39;s values such as:<br />
<br />
&lt;mvt:if expr="g.BROK_INVENTORY:level EQ &#39;3&#39;"&gt;<br />
the level is 3<br />
&lt;/mvt:if&gt;<br />
<br />
or display a value with:<br />
<br />
&amp;mvt:global:BROK_INVENTORY:level_name;<br />
<br />
which will display the current level&#39;s name.<br />
<br />
Keep in mind that you&#39;ll need to use the item<br />
<br />
&lt;mvt:item name="BROK_INVENTORY" param="define_variable" /&gt;<br />
<br />
at a point in the template where an individual product&#39;s information is being displayed.  For example, it won&#39;t be properly defined in the global header and footer (at least not consistently) but could be used inside the:<br />
<br />
&lt;mvt:foreach iterator="item" array="basket:items"&gt;<br />
<br />
&lt;/mvt:foreach&gt;<br />
<br />
in the "Basket Contents" template field of the BASK screen since in that iterator a specific product is being handled.
]]></description>
		<link>http://vikingcoders.com/faq/content/428/505/en/i-would-like-to-conditionally-display-something-for-a-product-but-only-if-the-current-level-is-_3_-how-do-i-do-this.html</link>
		<pubDate>Thu, 03 Jul 2008 21:37:00 GMT</pubDate>
	</item>
	<item>
		<title><![CDATA[Is there any way to configure specific global headers and footers for each affiliate that will show up any time a customer they referred is shopping in the store?]]></title>
		<description><![CDATA[There is a sub-tab for each individual affiliate (and also on the main "Options" tab where defaults can be set) that permits particular "design settings" to be configured for that affiliate (and as a default on the main "Options" tab).  Soon these "design settings" will include most of the store&#39;s configuration options (such as fonts, colors, etc.) but currently only the Global Header and Footer are supported.<br />
<br />
You&#39;ll find the fields to specify the header and footer on the "Design Settings" tabs.<br />
<br />
Once configured, the global header and footer can be displayed with the token:<br />
<br />
&amp;mvt:global:AffiliateData:GLOBAL_HEADER;<br />
<br />
which will NOT process any tokens in the field.   In the alternative, you can have the Affiliate Manager process the field for the same tokens that are available for use in the invoice by using the item:<br />
<br />
&lt;mvt:item name="BROK_AFFILIATES" param="GLOBAL_HEADER" /&gt;<br />
<br />
(in both of those cases you  would display the global footer by changing GLOBAL_HEADER to GLOBAL_FOOTER).<br />
<br />
In addition, the module sets a global variable:<br />
<br />
g.AffiliateData:use_design<br />
<br />
which will have a value of 1 if the module has been configured to use the Design Settings (currently just the global header and footer) for that affiliate.   So you can conditionally display the global header by checking that variable.  For example, to display the affiliate&#39;s global header if that affiliate has been configured to use the design settings and to display the default global header if not you would put the conditional around the standard global_header token:<br />
<br />
<br />
&lt;mvt:if expr="g.AffiliateData:use_design" &gt;<br />
&lt;mvt:item name="BROK_AFFILIATES" param="GLOBAL_HEADER" /&gt;<br />
&lt;mvt:else&gt;<br />
&lt;mvt:item name="hdft" param="global_header" /&gt;    <br />
&lt;/mvt:if&gt;<br />
<br />
Similarly, for the footer:<br />
<br />
<br />
&lt;mvt:if expr="g.AffiliateData:use_design" &gt;<br />
&lt;mvt:item name="BROK_AFFILIATES" param="GLOBAL_FOOTER" /&gt;<br />
&lt;mvt:else&gt;<br />
&lt;mvt:item name="hdft" param="global_footer" /&gt;    <br />
&lt;/mvt:if&gt;<br />
<br />
If you want the Affiliate&#39;s header/footer to display on only some pages, then the above approach is the one to take (i.e. replacing the global_header and global_footer items with the conditional)  On the other hand, if you want the Affilate&#39;s global header/footer to display on every page in your store then instead of modifying each page&#39;s template you could modify only the templates for the global header and footer. You can edit them by clicking on the "Global Header &amp; Footer" tab on any page  in the &#39;Pages" section of your store&#39;s admin (the same templates will apply to every page that uses the global_header and global_footer items; by default, I think that&#39;s every page in stock Merchant).<br />
<br />
In the Global Header template you would replace the contents with:<br />
<br />
&lt;mvt:if expr="g.AffiliateData:use_design" &gt;<br />
&lt;mvt:item name="BROK_AFFILIATES" param="GLOBAL_HEADER" /&gt;<br />
&lt;mvt:else&gt;<br />
<br />
contents of default global header<br />
<br />
&lt;/mvt:if&gt;<br />
<br />
and in the Global Footer template:<br />
<br />
&lt;mvt:if expr="g.AffiliateData:use_design" &gt;<br />
&lt;mvt:item name="BROK_AFFILIATES" param="GLOBAL_FOOTER" /&gt;<br />
&lt;mvt:else&gt;<br />
<br />
contents of default global footer<br />
<br />
&lt;/mvt:if&gt;<br />
<br />
Of course, anything that would be common to the Affiliate&#39; headers &amp; footers and the global header &amp; footer can be outside of that conditional so that it will always display.<br />
<br />
<br />
To determine if the affiliate specific design settings should be used, the module first checks to see if the individual affiliate is configured on it&#39;s "Design Settings" tab to use the settings.  If not, it checks to see if default "Use design settings?" option is set (on the "Design Settings" tab under "Options").  If that is set, the module uses the settings configured on that tab, if not, then the module does not display anything for the design settings.<br />
<br />
To get a bit more detailed on how the "design settings" feature works will require more technical detail.  The "design settings" feature actually sets a global structure variable g.AffiliateData which contains all of the referring affiliate&#39;s data in it (you&#39;ll obviously want to be careful what of the affiliate&#39;s data you expose to your customers).  For example, the affiliate&#39;s first name is set in the variable:<br />
<br />
g.AffiliateData:fname<br />
<br />
and this can be displayed in the template,without token processing, with the token<br />
<br />
&amp;mvt:global:AffiliateData:fname;<br />
<br />
and with token processing with the item:<br />
<br />
&lt;mvt:item name="BROK_AFFILIATES" param="fname"&gt;<br />
<br />
NOTE that for the item to work you&#39;ll need to make sure that the module&#39;s item, BROK_AFFILIATES is assigned to the template in which you&#39;re using it.
]]></description>
		<link>http://vikingcoders.com/faq/content/432/496/en/is-there-any-way-to-configure-specific-global-headers-and-footers-for-each-affiliate-that-will-show-up-any-time-a-customer-they-referred-is-shopping-in-the-store.html</link>
		<pubDate>Mon, 02 Jun 2008 22:28:00 GMT</pubDate>
	</item>
	<item>
		<title><![CDATA[I pay my affiliates with gift certificates from your Gift Certificate Manager module.  I would like to give my affiliates the ability to view the certificates that they received for payment is this possible?
]]></title>
		<description><![CDATA[<p>
 
</p>
<p>
(You can find the Gift Certificate Manager module <a href="http://www.vikingcoders.com/go.mv?ID=BROK_CERTIFIDATES">here</a> ). 
</p>
<p>
 Yes, as of version 4.33c, the Affiliate Manager  - Affiliate Login, module will display an extra tab "Certificates" in it&#39;s admin if the Gift Certificate Manager is installed.  On that tab, you can configure the html used for the main certificates page (in the "Certificates page template") as well as the template used to list the certificates (in the "Certificates Listing template").<br />
<br />
You can add a link to this new page by adding the token:<br />
<br />
%certsbutton%<br />
<br />
to your main page template (in the "Main page template" field on the "Main Page" tab).  The button image (if any) and alt text (which will be used in lieu of the image to create the link if no image is configured) can be set at the bottom of the "Main" tab.
</p>
<p>
In my store I added an additional cell to the table which displays the buttons so that it looked like:<br />
<br />
&lt;table align="center"&gt;<br />
&lt;tr&gt;&lt;td&gt;<br />
%ordersbutton%<br />
&lt;/td&gt;&lt;td&gt;<br />
%hitsbutton%<br />
&lt;/td&gt;&lt;td&gt;<br />
%duebutton%<br />
&lt;/td&gt;&lt;td&gt;<br />
%paidbutton%<br />
&lt;/td&gt;&lt;td&gt;<br />
%certsbutton%<br />
&lt;/td&gt;&lt;/tr&gt;<br />
<br />
In the "Certificates Listing template" you can use the following tokens to dispaly the key&#39;s information:<br />
<br />
%key%               the certificate&#39;s key<br />
%expire%           the certificate&#39;s expiration date<br />
%balance%         the certificate&#39;s balance<br />
%start%              the "start date" (aka "issue date" if that wasn&#39;t changed in admin) of the certificate<br />
<br />
%certlink%          displays the url to "view the link", used like: &lt;a href="%certlink%"&gt;View Certificate&lt;/a&gt;<br />
%for%                the recipient&#39;s name<br />
%address1%<br />
%address2%<br />
%note%       <br />
%foremail%         the recipient&#39;s email addresss<br />
<br />
All of the tokens available for the main page are currently in the "Certificates page template" field but if you have any additional tokens you&#39;d like to see available there let me know.
</p>
]]></description>
		<link>http://vikingcoders.com/faq/content/94/504/en/i-pay-my-affiliates-with-gift-certificates-from-your-gift-certificate-manager-module-i-would-like-to-give-my-affiliates-the-ability-to-view-the-certificates-that-they-received-for-payment-is-this-possible.html</link>
		<pubDate>Thu, 29 May 2008 14:42:00 GMT</pubDate>
	</item>
	<item>
		<title><![CDATA[Is there any way to add a negative number to the basket total, for example, to give a discount to a customer?]]></title>
		<description><![CDATA[Yes, you can do this with the "special items" feature (<a href="index.php?action=artikel&amp;solution_id=1436" target="_blank">described here</a>
). It will let you add an item to the basket which has a negative
price.  Of course you can also manually change the price of products
once they have been added to the basket to give a discount specific to
a particular product.
]]></description>
		<link>http://vikingcoders.com/faq/content/427/503/en/is-there-any-way-to-add-a-negative-number-to-the-basket-total-for-example-to-give-a-discount-to-a-customer.html</link>
		<pubDate>Thu, 22 May 2008 17:51:00 GMT</pubDate>
	</item>
</channel>
</rss>