Product Options Customizaion ?
I was wondering, if instead of having a drop down list for product options, I could set them up as radio buttons instead? And, also making one required before checkout?
|
Re: Product Options Customizaion ?
Sure, just change the code to radio instead of select in the template. modules/product_options/customer_options.tpl.
|
Re: Product Options Customizaion ?
Thanks, but I am not sure where in the code to change?
<?php /************************************************** ***************************\ +-----------------------------------------------------------------------------+ | X-Cart | | Copyright (c) 2001-2007 Ruslan R. Fazliev <rrf@rrf.ru> | | All rights reserved. | +-----------------------------------------------------------------------------+ | PLEASE READ THE FULL TEXT OF SOFTWARE LICENSE AGREEMENT IN THE "COPYRIGHT" | | FILE PROVIDED WITH THIS DISTRIBUTION. THE AGREEMENT TEXT IS ALSO AVAILABLE | | AT THE FOLLOWING URL: http://www.x-cart.com/license.php | | | | THIS AGREEMENT EXPRESSES THE TERMS AND CONDITIONS ON WHICH YOU MAY USE | | THIS SOFTWARE PROGRAM AND ASSOCIATED DOCUMENTATION THAT RUSLAN R. | | FAZLIEV (hereinafter referred to as "THE AUTHOR") IS FURNISHING OR MAKING | | AVAILABLE TO YOU WITH THIS AGREEMENT (COLLECTIVELY, THE "SOFTWARE"). | | PLEASE REVIEW THE TERMS AND CONDITIONS OF THIS LICENSE AGREEMENT | | CAREFULLY BEFORE INSTALLING OR USING THE SOFTWARE. BY INSTALLING, | | COPYING OR OTHERWISE USING THE SOFTWARE, YOU AND YOUR COMPANY | | (COLLECTIVELY, "YOU") ARE ACCEPTING AND AGREEING TO THE TERMS OF THIS | | LICENSE AGREEMENT. IF YOU ARE NOT WILLING TO BE BOUND BY THIS | | AGREEMENT, DO NOT INSTALL OR USE THE SOFTWARE. VARIOUS COPYRIGHTS AND | | OTHER INTELLECTUAL PROPERTY RIGHTS PROTECT THE SOFTWARE. THIS | | AGREEMENT IS A LICENSE AGREEMENT THAT GIVES YOU LIMITED RIGHTS TO USE | | THE SOFTWARE AND NOT AN AGREEMENT FOR SALE OR FOR TRANSFER OF TITLE.| | THE AUTHOR RETAINS ALL RIGHTS NOT EXPRESSLY GRANTED BY THIS AGREEMENT. | | | | The Initial Developer of the Original Code is Ruslan R. Fazliev | | Portions created by Ruslan R. Fazliev are Copyright (C) 2001-2007 | | Ruslan R. Fazliev. All Rights Reserved. | +-----------------------------------------------------------------------------+ \************************************************* ****************************/ # # $Id: customer_options.php,v 1.31.2.1 2007/03/22 13:54:55 svowl Exp $ # if ( !defined('XCART_SESSION_START') ) { header("Location: ../../"); die("Access denied"); } if (empty($err)) $err = ""; $product_options = func_get_product_classes($productid, !empty($product_info['is_taxes'])); $product_options_ex = func_get_product_exceptions($productid); $product_options_js = func_get_product_js_code($productid); $variants = func_get_product_variants($productid, $user_account['membershipid']); $membershipid = ($current_area == 'C') ? $user_account['membershipid'] : $userinfo['membershipid']; if (empty($options)) $options = func_get_default_options($productid, $product_info['min_amount'], $user_account['membershipid']); if (!empty($product_options) && !empty($options) && is_array($options)) { # Defined preselected options foreach ($product_options as $k => $v) { if (preg_match("/^\d+$/S", $options[$v['classid']])) { if ($v['is_modifier'] == 'T') { $product_options[$k]['default'] = $options[$v['classid']]; } else { $product_options[$k]['options'][$options[$v['classid']]]['selected'] = 'Y'; } } else { $product_options[$k]['default'] = $options[$v['classid']]; } } } if (!empty($product_options)) $smarty->assign("product_options",$product_options); if (!empty($product_options_ex)) $smarty->assign("product_options_ex", $product_options_ex); if (!empty($variants)) { foreach ($variants as $v) { if ($v['taxed_price'] != 0) { $smarty->assign("variant_price_no_empty", true); break; } } $smarty->assign("variants", $variants); } $smarty->assign("err", $err); $smarty->assign("product_options_count", is_array($product_options) ? count($product_options) : 0); $smarty->assign("product_options_js", @trim($product_options_js)); ?> |
Re: Product Options Customizaion ?
That's the php file, you want the .tpl file. skin1/....
|
Re: Product Options Customizaion ?
Thanks for your help here. Unfortunlatley, I have a non-developer brain. I recognize the select and options, but, I've tried a number of combos to insert a radio control, but I am stuck.
Any possiblity you could post the replace code? Please :) |
Re: Product Options Customizaion ?
first, backup skin1/modules/product_options/customer_options.tpl
then replace Code:
<select id="po{$v.classid}" name="{$poname}"{if $disable} disabled="disabled"{/if}{if $nojs ne 'Y'} onchange="javascript: check_options();"{/if}> with Code:
{foreach from=$v.options item=o} as for having a selection required before checkout, its a bit more involved and it may mess with the form validation since to check if there is something selected for radio buttons you need to loop through all of them |
Re: Product Options Customizaion ?
Most excellent - many thanks!
I didn't wrap the radio in the 'foreach' statement. Now I know. Thanks again! |
Re: Product Options Customizaion ?
This worked great for me, however, there is one thing that I can not get to work. With the drop down box, when you select a color, it changes the product image to that color. With the radio buttons, I can get it to select the default color on load, but I can not get it to change the product image when I select a different color.
Here is the code that was in customer_options.tpl Code:
<select id="po{$v.classid}" name="{$poname}"{if $disable} disabled="disabled"{/if}{if $nojs ne 'Y'} onchange="javascript: check_options();"{/if}> I replaced the above with this: Code:
{foreach from=$v.options item=o} Anyone able to help me figure out how to make it change the product image? Thanks!!! :) |
Re: Product Options Customizaion ?
How do u get the price to display next to each? when they are different prices for variants for example
|
Re: Product Options Customizaion ?
The replacement code I posted does work with the price modification. However, it will not change the price on the product page nor the image like the drop down box will. I am hoping in the next day or two to have figured out where to change the js to use the radio button instead of the drop down box.
HOWEVER, if you use the code above, it will still add the correct options and option prices to the cart when the customer selects the option they would like and hits add to cart. Soon as I figure out the js part, I will post back. |
All times are GMT -8. The time now is 02:38 AM. |
Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.