Skip to main content

Remove item from cart module redirect page

More
12 years 6 months ago #149257 by kitkat
-- url of the page with the problem -- : mywebsite.com/mypage
-- HikaShop version -- :latest
-- Joomla version -- : 3.2.2
-- PHP version -- : x.x.x
-- Browser(s) name and version -- : XXXXX x.x.x
-- Error-message(debug-mod must be tuned on) -- : Error_message

Hi there

When removing an item from my the Hikashop cart module i would like it to stay on the same page
instead of it redirecting to the main products page, how can i achive this?

Thanks

Please Log in or Create an account to join the conversation.

More
12 years 6 months ago #149260 by nicolas
Hi,

You would have to edit the file "cart" of the view "product" via the menu Display>Views and change the line:
<input type="hidden" name="url" value="<?php echo $this->params->get('url');?>"/>

to:
<input type="hidden" name="url" value="<?php echo hikashop_currentURL();?>"/>
The following user(s) said Thank You: kitkat

Please Log in or Create an account to join the conversation.

More
12 years 6 months ago #149289 by kitkat
Hi Nicolas

Thank you for looking into this, i did as you suggested but still after editing the
product / cart.php file

to
Code:
<?php /** * @package HikaShop for Joomla! * @version 2.3.0 * @author hikashop.com * @copyright (C) 2010-2014 HIKARI SOFTWARE. All rights reserved. * @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html */ defined('_JEXEC') or die('Restricted access'); ?><?php global $Itemid; $url_itemid=''; if(!empty($Itemid)){ $url_itemid='&Itemid='.$Itemid; } $this->setLayout('listing_price'); $this->params->set('show_quantity_field', 0); $desc = $this->params->get('msg'); $cart_type = $this->params->get('cart_type','cart'); if($cart_type == 'wishlist'){ $convertText = JText::_('WISHLIST_TO_CART'); $displayText = JText::_('DISPLAY_THE_WISHLIST'); $displayAllText = JText::_('DISPLAY_THE_WISHLISTS'); $emptyText = JText::_('WISHLIST_EMPTY'); }else{ $convertText = JText::_('CART_TO_WISHLIST'); $displayText = JText::_('DISPLAY_THE_CART'); $displayAllText = JText::_('DISPLAY_THE_CARTS'); $emptyText = JText::_('CART_EMPTY'); } if(empty($desc) && $desc != '0'){ $this->params->set('msg',$emptyText); } if(!headers_sent()){ header( 'Cache-Control: no-store, no-cache, must-revalidate' ); header( 'Cache-Control: post-check=0, pre-check=0', false ); header( 'Pragma: no-cache' ); } $cart_type=$this->params->get('cart_type','cart'); if($this->params->get('from','no') == 'no'){ $this->params->set('from',JRequest::getString('from','display')); } if(empty($this->rows)){ $desc = trim($this->params->get('msg')); if(!empty($desc) || $desc == '0'){ echo $this->notice_html; ?> <div id="hikashop_cart" class="hikashop_cart"> <?php echo $desc; ?> </div> <div class="clear_both"></div> <?php } }else{ ?> <div id="hikashop_cart" class="hikashop_cart"> <?php if($this->config->get('print_cart',0) && JRequest::getVar('tmpl','')!='component' && $cart_type != 'wishlist'){ ?> <div class="_hikashop_checkout_cart_print_link"> <?php echo $this->popup->display( '<img src="'.HIKASHOP_IMAGES.'print.png" alt="'.JText::_('HIKA_PRINT').'" />', 'HIKA_PRINT', hikashop_completeLink('checkout&task=printcart',true), 'hikashop_print_popup', 760, 480, '', '', 'link' ); ?> </div> <?php } else if($this->params->get('from','display') != 'module'){ echo '<div class="hikashop_product_cart_links">'; echo '<div class="hikashop_product_cart_show_carts_link">'; echo $this->cart->displayButton($displayAllText,'cart',$this->params,hikashop_completeLink('cart&task=showcarts&cart_type='.$cart_type.$url_itemid),''); echo '</div>'; ?> <div class="hikashop_product_cart_mail_link"> <?php echo $this->popup->display( '<img src="'.HIKASHOP_IMAGES.'go.png" alt="'.JText::_('HIKA_EMAIL').'" />', 'HIKA_EMAIL', hikashop_completeLink('product&task=sendcart',true), 'hikashop_email_popup', 760, 480, '', '', 'link' ); ?> </div> <div class="hikashop_product_cart_print_link"> <?php echo $this->popup->display( '<img src="'.HIKASHOP_IMAGES.'print.png" alt="'.JText::_('HIKA_PRINT').'" />', 'HIKA_PRINT', hikashop_completeLink('product&task=printcart',true), 'hikashop_print_popup', 760, 480, '', '', 'link' ); ?> </div> <?php echo '</div><div class="clear_both"></div>'; } echo $this->notice_html; $row_count = 0; if($this->params->get('small_cart')){ $this->row=$this->total; if($this->params->get('show_cart_quantity',1)){ $qty = 0; $group = $this->config->get('group_options',0); foreach($this->rows as $i => $row){ if(empty($row->cart_product_quantity) && $cart_type != 'wishlist') continue; if($group && $row->cart_product_option_parent_id) continue; $qty+=$row->cart_product_quantity; } $text = JText::sprintf('X_ITEMS_FOR_X',$qty,$this->loadTemplate()); }else{ $text = JText::sprintf('TOTAL_IN_CART_X',$this->loadTemplate()); } if($cart_type != 'wishlist'){ ?> <a class="hikashop_small_cart_checkout_link" href="<?php echo hikashop_completeLink('checkout'.$url_itemid); ?>"> <span class="hikashop_small_cart_total_title"><?php echo $text; ?></span> </a><?php if($this->params->get('show_cart_delete',1)){ $delete = hikashop_completeLink('product&task=cleancart'); if(strpos($delete,'?')){ $delete.='&amp;'; }else{ $delete.='?'; } ?> <a class="hikashop_small_cart_clean_link" href="<?php echo $delete.'return_url='. urlencode(base64_encode(hikashop_currentURL('url',false))); ?>" > <img src="<?php echo HIKASHOP_IMAGES . 'delete2.png';?>" border="0" alt="clean cart" /> </a><?php } if($this->params->get('show_cart_proceed',1) && $this->params->get('cart_type','cart') != 'wishlist' && $this->params->get('from','display') == 'module'){ echo $this->cart->displayButton(JText::_('PROCEED_TO_CHECKOUT'),'checkout',$this->params,hikashop_completeLink('checkout'.$url_itemid),'window.location=\''.hikashop_completeLink('checkout'.$url_itemid).'\';return false;'); } }else{ foreach($this->rows as $row){ $cart_id = $row->cart_id; } ?> <a class="hikashop_small_cart_checkout_link" href="<?php echo hikashop_completeLink('cart&task=showcart&cart_id='.$cart_id.'&cart_type='.$cart_type.$url_itemid); ?>"> <span class="hikashop_small_cart_total_title"><?php echo $text; ?></span> </a> <?php } }else{ if($cart_type == 'wishlist'){ $form = 'hikashop_wishlist_form'; } else{ $form = 'hikashop_cart_form'; } ?> <form action="<?php echo hikashop_completeLink('product&task=updatecart'.$url_itemid,false,true); ?>" method="post" name="<?php echo $form;?>"> <table width="100%"> <thead> <tr> <?php if(@$this->params->get('image_in_cart')){ $row_count++; ?> <th class="hikashop_cart_module_product_image_title hikashop_cart_title"> <?php echo JText::_('CART_PRODUCT_IMAGE'); ?> </th> <?php } if($this->params->get('show_cart_product_name',1)){ $row_count++; ?> <th class="hikashop_cart_module_product_name_title hikashop_cart_title"> <?php echo JText::_('CART_PRODUCT_NAME'); ?> </th> <?php } if($this->params->get('show_cart_quantity',1)){ $row_count++; ?> <th class="hikashop_cart_module_product_quantity_title hikashop_cart_title"> <?php echo JText::_('CART_PRODUCT_QUANTITY'); ?> </th> <?php } if($this->params->get('show_price',1)){ $row_count++; ?> <th class="hikashop_cart_module_product_price_title hikashop_cart_title"> <?php echo JText::_('CART_PRODUCT_PRICE'); ?> </th> <?php } if($this->params->get('show_cart_delete',1)){ $row_count++; ?> <th class="hikashop_cart_title"> </th> <?php } if($row_count<1){ ?> <th></th> <?php }?> </tr> </thead> <?php if($this->params->get('show_price',1) && $this->params->get('cart_type','cart') != 'wishlist'){ ?> <tfoot> <tr> <td colspan="<?php echo $row_count;?>"> <hr /> </td> </tr> <tr> <?php switch($row_count){ case 0: case 1: ?> <td class="hikashop_cart_module_product_total_value"> <?php $this->row=$this->total; echo $this->loadTemplate(); ?> </td> <?php break; default: $colspan = $row_count-1; if($this->params->get('show_cart_delete',1)){ $colspan=$colspan-1; } if($colspan){ ?> <td class="hikashop_cart_module_product_total_title" colspan="<?php echo $colspan; ?>"> <?php echo JText::_('HIKASHOP_TOTAL'); ?> </td> <?php } ?> <td class="hikashop_cart_module_product_total_value"> <?php $this->row=$this->total; echo $this->loadTemplate(); ?> </td> <?php if($this->params->get('show_cart_delete',1)){ ?> <td> </td> <?php } break; }?> </tr> </tfoot> <?php } ?> <tbody> <?php $k = 0; $this->cart_product_price = true; $group = $this->config->get('group_options',0); $cart_id = 0; $app = JFactory::getApplication(); $productClass = hikashop_get('class.product'); $defaultParams = $this->config->get('default_params'); $this->image = hikashop_get('helper.image'); $height = $this->config->get('thumbnail_y'); $width = $this->config->get('thumbnail_x'); foreach($this->rows as $i => $row){ $cart_id = $row->cart_id; if(empty($row->cart_product_quantity) || @$row->hide == 1) continue; if($group && $row->cart_product_option_parent_id) continue; $productClass->addAlias($row); ?> <tr class="<?php echo "row$k"; ?>"> <?php if(@$this->params->get('image_in_cart')){ ?> <td class="hikashop_cart_module_product_image hikashop_cart_value" style="vertical-align:middle !important; text-align:center;"> <?php $image_options = array('default' => true,'forcesize'=>$this->config->get('image_force_size',true),'scale'=>$this->config->get('image_scale_mode','inside')); $img = $this->image->getThumbnail(@$row->images[0]->file_path, array('width' => $width, 'height' => $height), $image_options); if($img->success) { echo '<img class="hikashop_product_cart_image" title="'.$this->escape(@$row->images[0]->file_description).'" alt="'.$this->escape(@$row->images[0]->file_name).'" src="'.$img->url.'"/>'; } ?> </td> <?php } if($this->params->get('show_cart_product_name',1)){ ?> <td class="hikashop_cart_module_product_name_value hikashop_cart_value"> <?php if(@$defaultParams['link_to_product_page']){ ?> <a href="<?php echo hikashop_completeLink('product&task=show&cid='.$row->product_id.'&name='.$row->alias.$url_itemid);?>" ><?php } ?> <?php echo $row->product_name; ?> <?php if ($this->config->get('show_code')) { ?> <span class="hikashop_product_code_cart"><?php echo $row->product_code; ?></span> <?php } ?> <?php if(@$defaultParams['link_to_product_page']){ ?></a><?php } ?> <p class="hikashop_cart_product_custom_item_fields"> <?php if(hikashop_level(2) && !empty($this->itemFields)){ foreach($this->itemFields as $field){ $namekey = $field->field_namekey; if(!empty($row->$namekey) && strlen($row->$namekey)){ echo '<p class="hikashop_cart_item_'.$namekey.'">'.$this->fieldsClass->getFieldName($field).': '.$this->fieldsClass->show($field,$row->$namekey).'</p>'; } } } $input=''; if($group){ foreach($this->rows as $j => $optionElement){ if($optionElement->cart_product_option_parent_id != $row->cart_product_id) continue; ?> <p class="hikashop_cart_option_name"> <?php echo $optionElement->product_name; ?> </p> <?php $input .='document.getElementById(\'cart_product_option_'.$optionElement->cart_product_id.'\').value=qty_field.value;'; echo '<input type="hidden" id="cart_product_option_'.$optionElement->cart_product_id.'" name="item['.$optionElement->cart_product_id.'][cart_product_quantity]" value="'.$row->cart_product_quantity.'"/>'; } } ?> </p> </td> <?php } if($group){ foreach($this->rows as $j => $optionElement){ if($optionElement->cart_product_option_parent_id != $row->cart_product_id) continue; if(!empty($optionElement->prices[0])){ if(!isset($row->prices[0])){ $row->prices[0]->price_value=0; $row->prices[0]->price_value_with_tax=0; $row->prices[0]->price_currency_id = hikashop_getCurrency(); } foreach(get_object_vars($row->prices[0]) as $key => $value){ if(is_object($value)){ foreach(get_object_vars($value) as $key2 => $var2){ if(strpos($key2,'price_value')!==false) $row->prices[0]->$key->$key2 +=@$optionElement->prices[0]->$key->$key2; } }else{ if(strpos($key,'price_value')!==false) $row->prices[0]->$key+=@$optionElement->prices[0]->$key; } } } } } if($this->params->get('show_cart_quantity',1)){ ?> <td class="hikashop_cart_module_product_quantity_value hikashop_cart_value"> <?php if(empty($session)) $session = new stdClass(); $session->cart_id = $app->getUserState( HIKASHOP_COMPONENT.'.'.$cart_type.'_id', 0, 'int' ); if($row->cart_id == $session->cart_id && $this->params->get('from','display') != 'module'){ ?> <input id="hikashop_wishlist_quantity_<?php echo $row->cart_product_id;?>" type="text" name="item[<?php echo $row->cart_product_id;?>][cart_product_quantity]" class="hikashop_product_quantity_field" value="<?php echo $row->cart_product_quantity; ?>" onChange="var qty_field = document.getElementById('hikashop_wishlist_quantity_<?php echo $row->cart_product_id;?>'); if (qty_field){<?php echo $input; ?> } document.<?php echo $form; ?>.submit(); return false;" /> <div class="hikashop_cart_product_quantity_refresh"> <a href="#" onClick="var qty_field = document.getElementById('hikashop_cart_quantity_<?php echo $row->cart_product_id;?>'); if (qty_field && qty_field.value != '<?php echo $row->cart_product_quantity; ?>'){<?php echo $input; ?> qty_field.form.submit(); } return false;" title="<?php echo JText::_('HIKA_REFRESH'); ?>"> <img src="<?php echo HIKASHOP_IMAGES . 'refresh.png';?>" border="0" alt="<?php echo JText::_('HIKA_REFRESH'); ?>" /> </a> </div> <?php }else{ ?> <input id="hikashop_cart_quantity_<?php echo $row->cart_product_id;?>" type="text" name="item[<?php echo $row->cart_product_id;?>][cart_product_quantity]" class="hikashop_product_quantity_field" value="<?php echo $row->cart_product_quantity; ?>" onChange="var qty_field = document.getElementById('hikashop_cart_quantity_<?php echo $row->cart_product_id;?>'); if (qty_field){<?php echo $input; ?> } document.<?php echo $form; ?>.submit(); return false;" /> <?php } if($this->params->get('show_delete',1) && $this->params->get('from','display') != 'module'){ ?> <div class="hikashop_cart_product_quantity_delete"> <a href="<?php echo hikashop_completeLink('product&task=updatecart&product_id='.$row->product_id.'&quantity=0&return_url='.urlencode(base64_encode(hikashop_currentURL('return_url')))); ?>" onClick="var qty_field = document.getElementById('hikashop_checkout_quantity_<?php echo $row->cart_product_id;?>'); if(qty_field){qty_field.value=0; <?php echo $input; ?> qty_field.form.submit();} return false;" title="<?php echo JText::_('HIKA_DELETE'); ?>"> <img src="<?php echo HIKASHOP_IMAGES . 'delete2.png';?>" border="0" alt="<?php echo JText::_('HIKA_DELETE'); ?>" /> </a> </div> <?php } ?> </td> <?php } if($this->params->get('show_price',1)){ ?> <td class="hikashop_cart_module_product_price_value hikashop_cart_value"> <?php $this->row=&$row; echo $this->loadTemplate(); ?> </td> <?php } if($this->params->get('show_cart_delete',1)){ ?> <td class="hikashop_cart_module_product_delete_value hikashop_cart_value"> <a href="<?php echo hikashop_completeLink('product&task=updatecart&cart_type='.$this->params->get('cart_type','cart').'&cart_product_id='.$row->cart_product_id.'&quantity=0&return_url='.urlencode(base64_encode(urldecode($this->params->get('url'))))); ?>" onClick="var qty_field = document.getElementById('hikashop_cart_quantity_<?php echo $row->cart_product_id;?>'); if(qty_field){qty_field.value=0;<?php echo $input; ?> document.hikashop_cart_form.submit(); return false;}else{ return true;}" title="<?php echo JText::_('HIKA_DELETE'); ?>"><img src="<?php echo HIKASHOP_IMAGES . 'delete2.png';?>" border="0" alt="<?php echo JText::_('HIKA_DELETE'); ?>" /></a> </td> <?php } if($cart_type == 'wishlist' && $this->params->get('from','display') != 'module'){ ?> <td class="hikashop_wishlist_display_add_to_cart"> <!-- Add 'ADD_TO_CART' button --> <?php $form = ',\'hikashop_wishlist_form\''; $this->ajax = ' if(qty_field == null){ var qty_field = document.getElementById(\'hikashop_wishlist_quantity_'.$row->cart_product_id.'\').value; } if(hikashopCheckChangeForm(\'item\',\'hikashop_wishlist_form\')){ return hikashopModifyQuantity(\'' . $this->row->product_id . '\',qty_field,1,\'hikashop_wishlist_form\',\'cart\'); } else { return false; } '; $this->setLayout('quantity'); echo $this->loadTemplate(); $this->setLayout('listing_price'); ?> </td> <?php } if($row_count<1){ ?> <td></td> <?php }?> </tr> <?php $k = 1-$k; } $this->cart_product_price=false; ?> </tbody> </table> <?php if($this->params->get('show_cart_quantity',1)){ ?> <noscript> <input type="submit" class="btn button" name="refresh" value="<?php echo JText::_('REFRESH_CART');?>"/> </noscript> <?php } if($this->params->get('cart_type','cart') != 'wishlist' && $this->params->get('from','display') == 'module'){ if($this->params->get('show_cart_proceed',1)) echo $this->cart->displayButton(JText::_('PROCEED_TO_CHECKOUT'),'checkout',$this->params,hikashop_completeLink('checkout'.$url_itemid),''); } else{ ?><div class="hikashop_display_cart_show_convert_button"><?php $cart_type = '&cart_type='.$this->params->get('cart_type','cart'); if($this->params->get('from','display') != 'module'){ echo $this->cart->displayButton($convertText,'wishlist',$this->params,hikashop_completeLink('cart&task=convert'.$url_itemid.$cart_type),'window.location.href = \''.hikashop_completeLink('cart&task=convert'.$url_itemid.$cart_type).'\';return false;'); } else{ echo $this->cart->displayButton($displayText,'wishlist',$this->params,hikashop_completeLink('cart&task=showcart&cart_id='.$cart_id.$url_itemid.$cart_type),'window.location.href = \''.hikashop_completeLink('cart&task=showcart&cart_id='.$cart_id.$url_itemid.$cart_type).'\';return false;'); } ?></div><?php } ?> <input type="hidden" name="url" value="<?php echo hikashop_currentURL();?>"/> <input type="hidden" name="ctrl" value="product"/> <input type="hidden" name="cart_type" value="<?php echo $this->params->get('cart_type','cart'); ?>"/> <input type="hidden" name="task" value="updatecart"/> </form> <?php } ?> </div> <div class="clear_both"></div> <?php } ?> <?php if(JRequest::getWord('tmpl','')=='component'){ if(!headers_sent()){ header('Content-Type: text/css; charset=utf-8'); } exit; }


It still redirects to the product category page.

Is there a way to fix it so it stays on the same page ? This is such a great component and i prefer it above Virtuemart so it would be great if we can get it to work this way.

Also is there a way to after you add a product from the product layout it stays on that page and does not go directly to the
Code:
index.php?option=com_hikashop&ctrl=checkout&Itemid=237

checkout page?

I would like customers to only go to the checkout page once they click on the Hikashop cart module checkout button.

Are these features available in the paid version?

Thanks

Please Log in or Create an account to join the conversation.

More
12 years 6 months ago #149290 by kitkat
maybe this file needs to be edited?
product / add_to_cart_listing.php

Please Log in or Create an account to join the conversation.

More
12 years 6 months ago #149336 by nicolas
1. No that's the correct file. Maybe you didn't edit the file for the correct template, or you configured your cart module in mini cart mode maybe ? A link to the shop would help us understand why it doesn't work for you as we're hitting in the dark here...

2. If you want to stay on the same page instead of going to the checkout after a product is added to the cart, simply configure the way you want the option "after a product is added to the cart" in the configuration of HikaShop, no need to upgrade to a paid version for that.
The following user(s) said Thank You: kitkat

Please Log in or Create an account to join the conversation.

More
12 years 6 months ago #149601 by kitkat
Hi Nicolas
Where in the Joomla 3 version of Hikashop can i find this option
"after a product is added to the cart"
I don't see this option in the checkout tab...
I will be purchasing this component anyway just because it's so awesome and the excellent support :)

Please Log in or Create an account to join the conversation.

More
12 years 6 months ago #149650 by Xavier
Hi,

The option is in Configuration > Main > Cart.
The following user(s) said Thank You: kitkat, Gsol

Please Log in or Create an account to join the conversation.

More
12 years 6 months ago #149948 by Gsol
This worked, thank you!

Please Log in or Create an account to join the conversation.

More
12 years 6 months ago #150037 by kitkat
You are right, that is the file and it works fine now, i had to reiinstall Joomla 3 and Hikashop for it to work as my installation was faulty.
Thank you for your help with this, saved a lot of time :)

Please Log in or Create an account to join the conversation.

Time to create page: 0.235 seconds
Powered by Kunena Forum