- Posts: 31
- Thank you received: 2
Add to Wishlist doesn't work
10 years 6 months ago - 10 years 6 months ago #238130
by Denitz
Add to Wishlist doesn't work was created by Denitz
-- HikaShop version -- : recent
-- Joomla version -- : 3.5.1
-- PHP version -- : 5.4.x
-- Browser(s) name and version -- : Chrome
Logged user, individual product page, javascript error:
Here is the code of button:
-- Joomla version -- : 3.5.1
-- PHP version -- : 5.4.x
-- Browser(s) name and version -- : Chrome
Logged user, individual product page, javascript error:
Code:
Uncaught SyntaxError: Failed to execute 'querySelector' on 'Document': 'form[name=0] input[name=cart_type]' is not a valid selector.
Code:
<a rel="nofollow" class="hikashop_cart_button" href="#" onclick="var field=document.getElementById('hikashop_product_quantity_field_1');if(hikashopCheckChangeForm('item',0)){ var typeField = document.querySelector('form[name=0] input[name=cart_type]'); if(typeField !== null){typeField.value = 'wishlist';} return hikashopModifyQuantity('72',field,1,0,'wishlist',0); } else { return false; }">Add to wishlist</a>
Last edit: 10 years 6 months ago by Denitz.
Please Log in or Create an account to join the conversation.
10 years 6 months ago #238185
by Xavier
Replied by Xavier on topic Add to Wishlist doesn't work
Hi,
Please edit the view "product / quantity" and try to use that code instead:
www.hikashop.com/support/documentation/1...ize-the-display.html
Please edit the view "product / quantity" and try to use that code instead:
Code:
<?php
global $Itemid;
$url_itemid = '';
if(!empty($this->itemid))
$url_itemid = $this->itemid;
elseif(!empty($Itemid))
$url_itemid = '&Itemid='.$Itemid;
if($this->config->get('show_quantity_field') == -2){
if(@$this->row->product_display_quantity_field == 0)
$this->row->product_display_quantity_field = 1;
$this->params->set('show_quantity_field', @$this->row->product_display_quantity_field);
}
$config =& hikashop_config();
$wishlistEnabled = $config->get('enable_wishlist', 1);
$hideForGuest = 1;
if(($config->get('hide_wishlist_guest', 1) && hikashop_loadUser() != null) || !$config->get('hide_wishlist_guest', 1))
$hideForGuest = 0;
if(!isset($this->cart))
$this->cart = hikashop_get('helper.cart');
$url = '';
$module_id = $this->params->get('from_module', 0);
if(empty($this->ajax))
$this->ajax = 'return hikashopModifyQuantity(\''.$this->row->product_id.'\',field,1,0,\'cart\','.$module_id.')';
if(@$this->row->product_sale_start || empty($this->element->main))
$start_date = @$this->row->product_sale_start;
else
$start_date = $this->element->main->product_sale_start;
if(@$this->row->product_sale_end || empty($this->element->main))
$end_date = @$this->row->product_sale_end;
else
$end_date = $this->element->main->product_sale_end;
$formName = ',0';
if(!$this->config->get('ajax_add_to_cart', 0) || ($this->config->get('show_quantity_field') >= 2 && !@$this->element->product_id)) {
if(empty($this->formName)) {
if(@$this->row->product_id)
$formName = ',\'hikashop_product_form_'.$this->row->product_id.'_'.$this->params->get('main_div_name').'\'';
else
$formName = ',\'hikashop_product_form_'.$this->params->get('main_div_name').'\'';
} else {
$formName = $this->formName;
}
}
$showFree = ($this->config->get('display_add_to_wishlist_for_free_products', 1) || (!$this->config->get('display_add_to_wishlist_for_free_products', 1) && !empty($this->row->prices) && $this->row->prices[0]->price_value != '0'));
if($end_date && $end_date < time()) {
?>
<span class="hikashop_product_sale_end">
<?php echo JText::_('ITEM_NOT_SOLD_ANYMORE'); ?>
</span>
<?php
} elseif($start_date && $start_date > time()) {
?>
<span class="hikashop_product_sale_start"><?php
echo JText::sprintf('ITEM_SOLD_ON_DATE', hikashop_getDate($start_date, $this->params->get('date_format','%d %B %Y')));
//TODO echo $this->cart->displayButton(JText::_('Pre-order and add to cart'),'add',$this->params,$url,$ajax);
?></span>
<?php
} elseif(!$this->params->get('catalogue') && ($this->config->get('display_add_to_cart_for_free_products') || !empty($this->row->prices))) {
if(@$this->row->product_min_per_order || empty($this->element->main))
$min = @$this->row->product_min_per_order;
else
$min = @$this->element->main->product_min_per_order;
if(@$this->row->product_max_per_order || empty($this->element->main))
$max = @$this->row->product_max_per_order;
else
$max = @$this->element->main->product_max_per_order;
if($min <= 0)
$min = 1;
if($formName == ',0')
$formName = ',hikashop_product_form';
$cleanFormName = str_replace(array('\'',','),'',$formName);
$wishlistAjax = 'if(hikashopCheckChangeForm(\'item\''.$formName.')){ var typeField = document.querySelector(\'form[name='.$cleanFormName.'] input[name=cart_type]\'); if(typeField !== null){typeField.value = \'wishlist\';} return hikashopModifyQuantity(\'' . (int)@$this->row->product_id . '\',field,1' . $formName . ',\'wishlist\','.$module_id.'); } else { return false; }';
if($this->row->product_quantity == -1 && !empty($this->element->main) && $this->element->main->product_quantity != -1)
$this->row->product_quantity = $this->element->main->product_quantity;
$btnType = 'add';
if($this->row->product_quantity == -1) {
?>
<div class="hikashop_product_stock"><?php
if(!empty($this->row->has_options)) {
if($this->params->get('add_to_cart',1))
echo $this->cart->displayButton(JText::_('CHOOSE_OPTIONS'), 'choose_options', $this->params, hikashop_contentLink('product&task=show&product_id='.$this->row->product_id.'&name='.$this->row->alias.$url_itemid.$this->category_pathway,$this->row),'window.location = \''.str_replace("'","\'",hikashop_contentLink('product&task=show&product_id='.$this->row->product_id.'&name='.$this->row->alias.$url_itemid.$this->category_pathway,$this->row)).'\';return false;', '');
} else {
if($this->params->get('add_to_cart', 1)) {
echo $this->cart->displayButton(JText::_('ADD_TO_CART'), 'add', $this->params, $url, $this->ajax, '', $max, $min);
$btnType = 'wish';
}
if(hikashop_level(1) && $this->params->get('add_to_wishlist') && $wishlistEnabled && !$hideForGuest && $showFree) {
echo '<div id="hikashop_add_wishlist">' .
$this->cart->displayButton(JText::_('ADD_TO_WISHLIST'), $btnType, $this->params, $url, $wishlistAjax, '', $max, $min, '', false) .
'</div>';
}
}
} elseif($this->row->product_quantity > 0) {
?>
<div class="hikashop_product_stock">
<?php
if($this->row->product_quantity == 1 && JText::_('X_ITEM_IN_STOCK') != 'X_ITEM_IN_STOCK')
$text = JText::sprintf('X_ITEM_IN_STOCK', $this->row->product_quantity);
else
$text = JText::sprintf('X_ITEMS_IN_STOCK', $this->row->product_quantity);
echo '<span class="hikashop_product_stock_count">'.$text.'<br/></span>'
. '<span style="display: none" itemprop="availability" itemscope itemtype="http://schema.org/InStock">in stock</span>';
if($config->get('button_style', 'normal') == 'css')
echo '<br />';
if($max <= 0 || $max > $this->row->product_quantity)
$max = $this->row->product_quantity;
if(!empty($this->row->has_options)) {
if($this->params->get('add_to_cart', 1))
echo $this->cart->displayButton(JText::_('CHOOSE_OPTIONS'), 'choose_options', $this->params, hikashop_contentLink('product&task=show&product_id='.$this->row->product_id.'&name='.$this->row->alias.$url_itemid.$this->category_pathway,$this->row),'window.location = \''.str_replace("'","\'",hikashop_contentLink('product&task=show&product_id='.$this->row->product_id.'&name='.$this->row->alias.$url_itemid.$this->category_pathway,$this->row)).'\';return false;','');
} else {
if($this->params->get('add_to_cart', 1)) {
echo $this->cart->displayButton(JText::_('ADD_TO_CART'), 'add', $this->params, $url, $this->ajax, '', $max, $min);
$btnType = 'wish';
}
if(hikashop_level(1) && $this->params->get('add_to_wishlist') && $wishlistEnabled && !$hideForGuest && $showFree){
echo '<div id="hikashop_add_wishlist">' .
$this->cart->displayButton(JText::_('ADD_TO_WISHLIST'), $btnType, $this->params, $url, $wishlistAjax, '', $max, $min, '', false) .
'</div>';
}
}
} else {
?>
<div class="hikashop_product_no_stock">
<?php
echo '<span style="display: none" itemprop="availability" itemscope itemtype="http://schema.org/InStock">Out of stock</span>';
echo JText::_('NO_STOCK').'<br/>';
$waitlist = $this->config->get('product_waitlist', 0);
if(hikashop_level(1) && ($waitlist == 2 || ($waitlist == 1 && (!empty($this->row->main->product_waitlist) || !empty($this->row->product_waitlist))))) {
?>
</div>
<div id="hikashop_product_waitlist_main" class="hikashop_product_waitlist_main">
<?php
$empty = '';
jimport('joomla.html.parameter');
$params = new HikaParameter($empty);
echo $this->cart->displayButton(JText::_('ADD_ME_WAITLIST'), 'add_waitlist', $params, hikashop_completeLink('product&task=waitlist&cid='.$this->row->product_id.$url_itemid), 'window.location=\''.str_replace("'","\'",hikashop_completeLink('product&task=waitlist&cid='.$this->row->product_id.$url_itemid)).'\';return false;');
}
if(hikashop_level(1) && $this->params->get('add_to_wishlist') && $wishlistEnabled && !$hideForGuest && $showFree) {
if(!empty($this->row->has_options)) {
if($this->params->get('add_to_cart', 1))
echo $this->cart->displayButton(JText::_('CHOOSE_OPTIONS'),'choose_options',$this->params,hikashop_contentLink('product&task=show&product_id='.$this->row->product_id.'&name='.$this->row->alias.$url_itemid.$this->category_pathway,$this->row),'window.location = \''.str_replace("'","\'",hikashop_contentLink('product&task=show&product_id='.$this->row->product_id.'&name='.$this->row->alias.$url_itemid.$this->category_pathway,$this->row)).'\';return false;','');
}else{
echo '<div id="hikashop_add_wishlist">' .
$this->cart->displayButton(JText::_('ADD_TO_WISHLIST'), 'add', $this->params, $url, $wishlistAjax, '', @$this->row->product_max_per_order, 1, '', false) .
'</div>';
}
}
}
?>
</div>
<?php
} elseif(hikashop_level(1) && $wishlistEnabled && $this->params->get('add_to_wishlist', 1) && $showFree && !$hideForGuest && !$this->config->get('display_add_to_cart_for_free_products')) {
if(!empty($this->row->has_options)) {
if($this->params->get('add_to_cart', 1))
echo $this->cart->displayButton(JText::_('CHOOSE_OPTIONS'), 'choose_options', $this->params, hikashop_contentLink('product&task=show&product_id='.$this->row->product_id.'&name='.$this->row->alias.$url_itemid.$this->category_pathway,$this->row),'window.location = \''.str_replace("'","\'",hikashop_contentLink('product&task=show&product_id='.$this->row->product_id.'&name='.$this->row->alias.$url_itemid.$this->category_pathway,$this->row)).'\';return false;', '');
} else {
$wishlistAjax = 'if(hikashopCheckChangeForm(\'item\''.$formName.')){ return hikashopModifyQuantity(\'' . (int)@$this->row->product_id . '\',field,1' . $formName . ',\'wishlist\','.$module_id.'); } else { return false; }';
echo '<div id="hikashop_add_wishlist">' .
$this->cart->displayButton(JText::_('ADD_TO_WISHLIST'), 'add', $this->params, $url, $wishlistAjax, '', @$this->row->product_max_per_order, 1, '', false) .
'</div>';
}
}
The following user(s) said Thank You: Denitz
Please Log in or Create an account to join the conversation.
10 years 6 months ago #238204
by Denitz
Replied by Denitz on topic Add to Wishlist doesn't work
Thanks, now it works.
Will this issue be fixed in next version? Currently using 2.6.2
Will this issue be fixed in next version? Currently using 2.6.2
Please Log in or Create an account to join the conversation.
10 years 6 months ago #238209
by Xavier
Replied by Xavier on topic Add to Wishlist doesn't work
Hi,
Yes the patch will be added in the next release.
Yes the patch will be added in the next release.
The following user(s) said Thank You: Denitz
Please Log in or Create an account to join the conversation.
10 years 5 months ago #238632
by bdthemes
Replied by bdthemes on topic Add to Wishlist doesn't work
Directly Replace the code on view but not working for me
do i need anything more?
Please Log in or Create an account to join the conversation.
10 years 5 months ago #238636
by Xavier
Replied by Xavier on topic Add to Wishlist doesn't work
Hi,
You issue does not seem to be the same than the one for Denitz.
In your case, there is no Javascript errors but the popup is not displaying the correct message.
Could you give us more informations about your HikaShop version, if you have done view overrides ?
Could you give us a link to your website ?
You issue does not seem to be the same than the one for Denitz.
In your case, there is no Javascript errors but the popup is not displaying the correct message.
Could you give us more informations about your HikaShop version, if you have done view overrides ?
Could you give us a link to your website ?
Please Log in or Create an account to join the conversation.
Time to create page: 0.269 seconds