Skip to main content

pagination ne marche pas

More
10 years 11 months ago - 10 years 11 months ago #218022 by erickb
-- HikaShop version -- : 260 [1510211553]

-- Joomla version -- : 344

Bonjour

Dans le listing des produits la pagination ne marche pas du tout j'ai une centaine d'elements et des pages de 24 ;
aucun lien n'est actif , on ne peut pas cliquer sur page 2 , ni sur les chevrons avant ou apres, meme en supprimant toutes mes view


ci-dessous le code genere
Code:
<form action="http://localhost/sacapuce_344/53-escarpins-a-talon-femmes-grandes-pointures" method="post" name="adminForm_hk-cat-module-53_53_bottom"> <div class="hikashop_products_pagination hikashop_products_pagination_bottom"> <div class="list-footer"> <div class="limit"><span class="pagination-text">Modèles par pages</span><select id="limit_hk-cat-module-53_53" name="limit_hk-cat-module-53_53" class="chzn-done inputbox" size="1" style="width:70px" onchange="this.form.submit()"> <option value="24" selected="selected">24</option> <option value="48">48</option> <option value="72">72</option> <option value="96">96</option> <option value="120">120</option> <option value="0">Tous</option> </select> </div><span class="pagenav_start_chevron">&lt;&lt; </span><span class="pagenav pagenav_text"><i class="icon-arrow-first pos-left size-20"></i></span><span class="pagenav_previous_chevron"> &lt; </span><span class="pagenav pagenav_text"><i class="icon-arrow-left pos-left size-20"></i></span> <span class="pagenav">1</span> <a class="pagenav" title="2" onclick="javascript: document.adminForm_hk-cat-module-53_53_bottom.limitstart_hk-cat-module-53_53.value=24; document.adminForm_hk-cat-module-53_53_bottom.submit();return false;">2</a> <a class="pagenav" title="3" onclick="javascript: document.adminForm_hk-cat-module-53_53_bottom.limitstart_hk-cat-module-53_53.value=48; document.adminForm_hk-cat-module-53_53_bottom.submit();return false;">3</a> <a class="pagenav hikashop_next_link" title="<i class='icon-arrow-right pos-right size-20'></i>" onclick="javascript: document.adminForm_hk-cat-module-53_53_bottom.limitstart_hk-cat-module-53_53.value=24; document.adminForm_hk-cat-module-53_53_bottom.submit();return false;"><i class="icon-arrow-right pos-right size-20"></i></a><a class="pagenav_next_chevron" onclick="javascript: document.adminForm_hk-cat-module-53_53_bottom.limitstart_hk-cat-module-53_53.value=24; document.adminForm_hk-cat-module-53_53_bottom.submit();return false;"> &gt; </a> <a class="pagenav hikashop_end_link" title="<i class='icon-arrow-last pos-right size-20'></i>" onclick="javascript: document.adminForm_hk-cat-module-53_53_bottom.limitstart_hk-cat-module-53_53.value=48; document.adminForm_hk-cat-module-53_53_bottom.submit();return false;"><i class="icon-arrow-last pos-right size-20"></i></a><a class="pagenav_end_chevron" onclick="javascript: document.adminForm_hk-cat-module-53_53_bottom.limitstart_hk-cat-module-53_53.value=48; document.adminForm_hk-cat-module-53_53_bottom.submit();return false;"> &gt;&gt; </a> <div class="counter">Page 1 sur 3</div> <input type="hidden" name="limitstart_hk-cat-module-53_53" value="0"> </div> <span class="hikashop_results_counter"> Résultats 1 à 24 sur 68</span> </div> <input type="hidden" name="filter_order_hk-cat-module-53_53" value="b.product_ordering"> <input type="hidden" name="filter_order_Dir_hk-cat-module-53_53" value="ASC"> <input type="hidden" name="ccf4b2701cc96d3ac8d3cb86f54d55c8" value="1"> </form>
Last edit: 10 years 11 months ago by erickb.

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

More
10 years 11 months ago #218080 by Xavier
Replied by Xavier on topic pagination ne marche pas
Bonjour,

Le soucis proviens du nommage, en effet il y a des tirets dans le nom "hk-cat-module-53" ce qui va provoquer une erreur javascript. Donc il faut soir renommer, soit remplacer le contenu du fichier "administrator/components/com_hikashop/helpers/pagination.php" par:
Code:
<?php jimport('joomla.html.pagination'); class hikashopBridgePaginationHelper extends JPagination { var $hikaSuffix=''; var $form = ''; function getPagesLinks(){ $app = JFactory::getApplication(); $lang = JFactory::getLanguage(); $lang->load('lib_joomla'); $data = $this->_buildDataObject(); $list = array(); $itemOverride = false; $listOverride = false; $chromePath = JPATH_THEMES.DS.$app->getTemplate().DS.'html'.DS.'pagination.php'; if (file_exists($chromePath)){ require_once ($chromePath); if (function_exists('pagination_list_render')) { $listOverride = true; if(HIKASHOP_J30 && $app->isAdmin()) $itemOverride = true; } } // Build the select list if ($data->all->base !== null) { $list['all']['active'] = true; $list['all']['data'] = ($itemOverride) ? pagination_item_active($data->all) : $this->_item_active($data->all); } else { $list['all']['active'] = false; $list['all']['data'] = ($itemOverride) ? pagination_item_inactive($data->all) : $this->_item_inactive($data->all); } $data->start->start = true; if ($data->start->base !== null) { $list['start']['active'] = true; $list['start']['data'] = ($itemOverride) ? pagination_item_active($data->start) : $this->_item_active($data->start); $list['start']['base'] = $data->start->base; } else { $list['start']['active'] = false; $list['start']['data'] = ($itemOverride) ? pagination_item_inactive($data->start) : $this->_item_inactive($data->start); } $data->previous->previous = true; if ($data->previous->base !== null) { $list['previous']['active'] = true; $list['previous']['data'] = ($itemOverride) ? pagination_item_active($data->previous) : $this->_item_active($data->previous); $list['previous']['base'] = $data->previous->base; } else { $list['previous']['active'] = false; $list['previous']['data'] = ($itemOverride) ? pagination_item_inactive($data->previous) : $this->_item_inactive($data->previous); } $list['pages'] = array(); //make sure it exists foreach ($data->pages as $i => $page) { if ($page->base !== null) { $list['pages'][$i]['active'] = true; $list['pages'][$i]['data'] = ($itemOverride) ? pagination_item_active($page) : $this->_item_active($page); } else { $list['pages'][$i]['active'] = false; $list['pages'][$i]['data'] = ($itemOverride) ? pagination_item_inactive($page) : $this->_item_inactive($page); } } $data->next->next = true; if ($data->next->base !== null) { $list['next']['active'] = true; $list['next']['data'] = ($itemOverride) ? pagination_item_active($data->next) : $this->_item_active($data->next); $list['next']['base'] = $data->next->base; } else { $list['next']['active'] = false; $list['next']['data'] = ($itemOverride) ? pagination_item_inactive($data->next) : $this->_item_inactive($data->next); } $data->end->end = true; if ($data->end->base !== null) { $list['end']['active'] = true; $list['end']['data'] = ($itemOverride) ? pagination_item_active($data->end) : $this->_item_active($data->end); $list['end']['base'] = $data->end->base; } else { $list['end']['active'] = false; $list['end']['data'] = ($itemOverride) ? pagination_item_inactive($data->end) : $this->_item_inactive($data->end); } if($this->total > $this->limit){ return ($listOverride) ? pagination_list_render($list) : $this->_list_render($list); } else{ return ''; } } function _list_render($list){ // Initialize variables $html = null; // Reverse output rendering for right-to-left display if(isset($list['start']['base'])) $html .= "<a class=\"pagenav_start_chevron\" onclick=\"javascript: var f = document.forms['adminForm".$this->hikaSuffix.$this->form."']; f.limitstart".$this->hikaSuffix.".value=".$list['start']['base']."; f.submit();return false;\"> &lt;&lt; </a>"; else $html .= '<span class="pagenav_start_chevron">&lt;&lt; </span>'; $html .= $list['start']['data']; if(isset($list['previous']['base'])) $html .= "<a class=\"pagenav_previous_chevron\" onclick=\"javascript: var f = document.forms['adminForm".$this->hikaSuffix.$this->form."']; f.limitstart".$this->hikaSuffix.".value=".$list['previous']['base']."; f.submit();return false;\"> &lt; </a>"; else $html .= '<span class="pagenav_previous_chevron"> &lt; </span>'; $html .= $list['previous']['data']; foreach( $list['pages'] as $page ) { $html .= ' '.$page['data']; } $html .= ' '. $list['next']['data']; if(isset($list['next']['base'])) $html .= "<a class=\"pagenav_next_chevron\" onclick=\"javascript: var f = document.forms['adminForm".$this->hikaSuffix.$this->form."']; f.limitstart".$this->hikaSuffix.".value=".$list['next']['base']."; f.submit();return false;\"> &gt; </a>"; else $html .= '<span class="pagenav_next_chevron"> &gt;</span>'; $html .= ' '. $list['end']['data']; if(isset($list['end']['base'])) $html .= "<a class=\"pagenav_end_chevron\" onclick=\"javascript: var f = document.forms['adminForm".$this->hikaSuffix.$this->form."']; f.limitstart".$this->hikaSuffix.".value=".$list['end']['base']."; f.submit();return false;\"> &gt;&gt; </a>"; else $html .= '<span class="pagenav_end_chevron"> &gt;&gt;</span>'; return $html; } function _list_footer($list){ $html = '<div class="list-footer">'."\n"; if(version_compare(JVERSION,'1.6','>=')){ $display = JText::_('JGLOBAL_DISPLAY_NUM'); }else{ $display = JText::_('DISPLAY NUM'); } $html .= "\n<div class=\"limit\">".$display.$list['limitfield']."</div>"; $html .= $list['pageslinks']; $html .= "\n<div class=\"counter\">".$list['pagescounter']."</div>"; $html .= "\n<input type=\"hidden\" name=\"limitstart".$this->hikaSuffix."\" value=\"".$list['limitstart']."\" />"; $html .= "\n</div>"; return $html; } function getListFooter($minimum=20){ $list = array(); $list['limit'] = $this->limit; $list['limitstart'] = $this->limitstart; $list['total'] = $this->total; $list['limitfield'] = $this->getLimitBox($minimum); $list['pagescounter'] = $this->getPagesCounter(); $list['pageslinks'] = $this->getPagesLinks(); if(HIKASHOP_J30) { if(empty($this->prefix)) $this->prefix = ''; $list['prefix'] = $this->prefix; if(function_exists('pagination_list_footer')) { $ret = pagination_list_footer($list); if(strpos($ret, $list['limitfield']) === false) { $display = JText::_('JGLOBAL_DISPLAY_NUM'); $ret = "\n<div class=\"limit\">".$display.$list['limitfield'] ."</div>" . $ret; } if(strpos($ret, 'name="limitstart'.$this->hikaSuffix.'"') === false) $ret .= "<input type=\"hidden\" name=\"limitstart".$this->hikaSuffix."\" value=\"".$list['limitstart']."\" />"; if(strpos($ret, 'class="list-footer"') === false) { $ret = '<div class="list-footer">'."\n".$ret."\n</div>"; } return $ret; } } return $this->_list_footer($list); } function getLimitBox($minimum=20){ // Initialize variables $limits = array (); //$limits[] = JHTML::_('select.option', (string)$this->limit); // Make the option list for ($i = $minimum; $i <= $minimum*5; $i += $minimum) { $limits[] = JHTML::_('select.option', $i); } $config = hikashop_config(); if($config->get('pagination_viewall', 1)) $limits[] = JHTML::_('select.option', '0', JText::_('HIKA_ALL')); if(version_compare(JVERSION,'3.0','<')){ $viewall = $this->_viewall; } else { $viewall = @$this->viewall; } return JHTML::_('select.genericlist', $limits, 'limit'.$this->hikaSuffix, 'class="chzn-done inputbox" size="1" style="width:70px" onchange="this.form.submit()"', 'value', 'text', $viewall ? 0 : $this->limit); } } if(HIKASHOP_J30){ class hikashopPaginationHelper extends hikashopBridgePaginationHelper{ function _item_active(JPaginationObject $item){ $class = 'pagenav'; $specials = array('start','end','previous','next'); foreach($specials as $special){ if(!empty($item->$special)){ $class.=' hikashop_'.$special.'_link'; } } if($item->base>0) return "<a class=\"".$class."\" title=\"".$item->text."\" onclick=\"javascript: var f = document.forms['adminForm".$this->hikaSuffix.$this->form."']; f.limitstart".$this->hikaSuffix.".value=".$item->base."; f.submit();return false;\">".$item->text."</a>"; else return "<a class=\"".$class."\" title=\"".$item->text."\" onclick=\"javascript: var f = document.forms['adminForm".$this->hikaSuffix.$this->form."']; f.limitstart".$this->hikaSuffix.".value=0; f.submit();return false;\">".$item->text."</a>"; } function _item_inactive(JPaginationObject $item){ $mainframe = JFactory::getApplication(); if ($mainframe->isAdmin()) { return "<span>".$item->text."</span>"; } else { $class = 'pagenav'; if(!is_numeric($item->text)){ $class .= ' pagenav_text'; } return '<span class="'.$class.'">'.$item->text."</span>"; } } } }else{ class hikashopPaginationHelper extends hikashopBridgePaginationHelper{ function _item_active(&$item){ $class = 'pagenav'; $specials = array('start','end','previous','next'); foreach($specials as $special){ if(!empty($item->$special)){ $class.=' hikashop_'.$special.'_link'; } } if($item->base>0) return "<a class=\"".$class."\" title=\"".$item->text."\" onclick=\"javascript: var f = document.forms['adminForm".$this->hikaSuffix.$this->form."']; f.limitstart".$this->hikaSuffix.".value=".$item->base."; f.submit();return false;\">".$item->text."</a>"; else return "<a class=\"".$class."\" title=\"".$item->text."\" onclick=\"javascript: var f = document.forms['adminForm".$this->hikaSuffix.$this->form."']; f.limitstart".$this->hikaSuffix.".value=0; f.submit();return false;\">".$item->text."</a>"; } function _item_inactive(&$item){ $mainframe = JFactory::getApplication(); if ($mainframe->isAdmin()) { return "<span>".$item->text."</span>"; } else { $class = 'pagenav'; if(!is_numeric($item->text)){ $class .= ' pagenav_text'; } return '<span class="'.$class.'">'.$item->text."</span>"; } } } }
The following user(s) said Thank You: erickb

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

More
10 years 11 months ago #218155 by erickb
Replied by erickb on topic pagination ne marche pas
j'ai retire tous les - et ca marche mais ce serait bien de prevoir ca dans le fichier helpers/pagination.php

merci

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

More
10 years 11 months ago #218162 by Xavier
Replied by Xavier on topic pagination ne marche pas
Bonjour,

C'est justement ce que fait le code donné dans mon post précédent, il permet de faire fonctionner la pagination malgré les tirets.
Cependant, il se peut que ces tirets créent d'autres soucis dans d'autres endroits, donc il est préférable de ne pas en mettre pour le moment.

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

More
10 years 11 months ago #218224 by erickb
Replied by erickb on topic pagination ne marche pas
j'ai renomme mn hk-cat-module-53 en hkcatmodule53

merci

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

Time to create page: 0.163 seconds
Powered by Kunena Forum