Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 20 Ответов
  • 9757 Просмотров
*

xlite

  • Захожу иногда
  • 65
  • 5 / 0
По умолчанию опытным и гугле путем пришел к выводу что формирование списка типа «« В начало « Предыдущая 1 2 3 Следующая » В конец »» отвечает функция  function getPagesLinks в файле administrator\components\com_virtuemart\classes\pageNavigation.class.php

не подскажите кто нибудь как ее изменить на вариант 1 2 3 4 5 6 просто я не кодер а очень надо ..  crazy!

Заранее спасибо  :D
*

xlite

  • Захожу иногда
  • 65
  • 5 / 0
сам сделал .. убрал все лишнее получил просто 12345678910 ... единственная проблема нет выдает больше 10 страниц но в типичном проекте проблем не создает

 
Код
<?php
if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
/**
 *
 * @version $Id: pageNavigation.class.php 1526 2008-09-15 19:21:43Z soeren_nb $
 * @package VirtueMart
 * @subpackage classes
 * @copyright Copyright (C) 2004-2008 soeren - All rights reserved.
 * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
 * VirtueMart is free software. This version may have been modified pursuant
 * to the GNU General Public License, and as distributed it includes or
 * is derivative of works licensed under the GNU General Public License or
 * other free or open source software licenses.
 * See /administrator/components/com_virtuemart/COPYRIGHT.php for copyright notices and details.
 *
 * http://virtuemart.net
 */

/**
 * Page navigation support class
 * @package VirtueMart
 */
class vmPageNav {
  /** @var int The record number to start dislpaying from */
  var $limitstart = null;
  /** @var int Number of rows to display per page */
  var $limit = null;
  /** @var int Total number of rows */
  var $total = null;

  function vmPageNav( $total, $limitstart, $limit ) {
    $this->total = intval( $total );
    $this->limitstart = max( $limitstart, 0 );
    $this->limit = max( $limit, 1 );
    if ($this->limit > $this->total) {
      $this->limitstart = 0;
    }
    if (($this->limit-1)*$this->limitstart > $this->total) {
      $this->limitstart -= $this->limitstart % $this->limit;
    }
  }
  /**
   * Writes the HTML limit # input box
   * Modified by shumisha to handle SEF URLs 2008-06-28
   */
  function writeLimitBox ( $link = '') {
    echo $this->getLimitBox( $link);
  }
  /**
   * Modified by shumisha to handle SEF URLs 2008-06-28
   * @return string The HTML for the limit # input box
   */
  function getLimitBox ( $link = '') {
    $limits = array();

    if (!empty($link) && strpos( 'limitstart=', $link) === false) {  // insert limitstart in url if missing // shumisha
      $link .= '&limitstart='.$this->limitstart;
    }
    for ($i=5; $i <= 30; $i+=5) {
      if (empty( $link)) {
        $limits[$i] = $i;
      } else {
        $limits[vmRoute($link.'&limit='.$i)] = $i;
      }
    }
    if (empty( $link)) {
      $limits[50] = 50;
    } else {
      $limits[vmRoute($link.'&limit=50')] = 50;
    }

    // build the HTML select list
    if (empty( $link)) {
    $html = ps_html::selectList( 'limit', $this->limit, $limits, 1, '',  'onchange="this.form.submit();"' );
    } else {
      $current = vmRoute($link.'&limit='.$this->limit);
      $html = ps_html::selectList( 'limit', $current, $limits, 1, '',  'onchange="location.href=this.value"' );
    }
    $html .= "\n<input type=\"hidden\" name=\"limitstart\" value=\"$this->limitstart\" />";
    return $html;
  }

  function writePagesCounter() {
    echo $this->getPagesCounter();
  }
  /**
   * @return string The HTML for the pages counter, eg, Results 1-10 of x
   */
  function getPagesCounter() {
    $html = '';
    $from_result = $this->limitstart+1;
    if ($this->limitstart + $this->limit < $this->total) {
      $to_result = $this->limitstart + $this->limit;
    } else {
      $to_result = $this->total;
    }
    if ($this->total > 0) {
      $html .= $GLOBALS['VM_LANG']->_('PN_RESULTS')." $from_result - $to_result ".$GLOBALS['VM_LANG']->_('PN_OF')." $this->total";
    } else {
      //$html .= "\nNo records found.";
    }
    return $html;
  }
  /**
   * Writes the HTML for the pages counter, eg, Results 1-10 of x
   */
  function writePagesLinks($link='') {
    echo $this->getPagesLinks($link);
  }
  /**
   * @return string The HTML links for pages, eg, previous, next, 1 2 3 ... x
   */
  function getPagesLinks($link='') {
    global $VM_LANG;
     
    $displayed_pages = 10;
    $total_pages = ceil( $this->total / $this->limit );
    $this_page = ceil( ($this->limitstart+1) / $this->limit );
    $start_loop = (floor(($this_page-1)/$displayed_pages))*$displayed_pages+1;
    if ($start_loop + $displayed_pages - 1 < $total_pages) {
      $stop_loop = $start_loop + $displayed_pages - 1;
    } else {
      $stop_loop = $total_pages;
    }
    $html = '<ul class="pagination">';
    if ($this_page > 1) {
      $page = ($this_page - 2) * $this->limit;
       if( $link != '') {
        $html .= "";
        $html .= "";
      } else {
        $html .= "";
        $html .= "";
      }
    } else {
      $html .= "";
      $html .= "";
    }

    for ($i=$start_loop; $i <= $stop_loop; $i++) {
      $page = ($i - 1) * $this->limit;
      if ($i == $this_page) {
        $html .= "\n<li><span class=\"pagenav\"> $i </span></li>";
      } else {
        if( $link != '') {
          $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart='.$page)."\" class=\"pagenav\"><strong>$i</strong></a></li>";
        } else {
          $html .= "\n<li><a href=\"#$i\" class=\"pagenav\" onclick=\"javascript: document.adminForm.limitstart.value=$page; document.adminForm.submit();return false;\"><strong>$i</strong></a></li>";
        }
      }
    }

    if ($this_page < $total_pages) {
      $page = $this_page * $this->limit;
      $end_page = ($total_pages-1) * $this->limit;
   if( $link != '') {
        $html .= "";
        $html .= "";
      } else {
        $html .= "";
        $html .= "";
      }
    } else {
      $html .= "";
      $html .= "";
    }
    $html .= "\n</ul>";
    return $html;
  }

  function getListFooter() {
    $html = '<table class="adminlist">';
    if( $this->total > $this->limit || $this->limitstart > 0) {

      $html .= '<tr><th colspan="3">';

      $html .= $this->getPagesLinks();
      $html .= '</th></tr>';
    }
    $html .= '<tr><td nowrap="nowrap" width="48%" align="right">'.$GLOBALS['VM_LANG']->_('PN_DISPLAY_NR').'</td>';
    $html .= '<td>' .$this->getLimitBox(). '</td>';
    $html .= '<td nowrap="nowrap" width="48%" align="left">' . $this->getPagesCounter(). '</td>';
    $html .= '</tr></table>';
  return $html;
  }
  /**
   * @param int The row index
   * @return int
   */
  function rowNumber( $i ) {
    return $i + 1 + $this->limitstart;
  }
  /**
   * @param int The row index
   * @param string The task to fire
   * @param string The alt text for the icon
   * @return string
   */
  function orderUpIcon( $i, $condition=true, $task='orderup', $alt='', $page, $func ) {
    global $mosConfig_live_site, $VM_LANG;
    if( $alt == '') {
      $alt = $VM_LANG->_('CMN_ORDER_UP');
    }
    if (($i > 0 || ($i+$this->limitstart > 0)) && $condition) {
      return '<a href="#reorder" onclick="return vm_listItemTask(\'cb'.$i.'\',\''.$task.'\', \'adminForm\', \''.$page.'\', \''.$func.'\')" title="'.$alt.'">
<img src="'.$mosConfig_live_site.'/administrator/images/uparrow.png" width="12" height="12" border="0" alt="'.$alt.'" />
</a>';
  } else {
    return '&nbsp;';
  }
  }
  /**
   * @param int The row index
   * @param int The number of items in the list
   * @param string The task to fire
   * @param string The alt text for the icon
   * @return string
   */
  function orderDownIcon( $i, $n, $condition=true, $task='orderdown', $alt='', $page, $func ) {
    global $mosConfig_live_site, $VM_LANG;
    if( $alt == '') {
      $alt = $VM_LANG->_('CMN_ORDER_DOWN');
    }
    if (($i < $n-1 || $i+$this->limitstart < $this->total-1) && $condition) {
      return '<a href="#reorder" onclick="return vm_listItemTask(\'cb'.$i.'\',\''.$task.'\', \'adminForm\', \''.$page.'\', \''.$func.'\')" title="'.$alt.'">
<img src="'.$mosConfig_live_site.'/administrator/images/downarrow.png" width="12" height="12" border="0" alt="'.$alt.'" />
</a>';
  } else {
    return '&nbsp;';
  }
  }
}
?>
*

kpk17

  • Захожу иногда
  • 257
  • 2 / 0
а можно совсем убрать этот участок?


«« В начало « Предыдущая 1 Следующая » В конец »»

Показать # 
Результаты 1 - 26 из 26
*

SolopoV

  • Давно я тут
  • 573
  • 16 / 0
  • зеленею...
Что за дикость, даже если товаров всего на одну страницу, это навигация по страницам все равно телепается. Никто не решал такую задачу?
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Убирал в каком то проекте. в этой самой функции есть переменная - число разбитых страниц чтоли. вот, делаем проверку условия, если страница одна - выводим пустоту.
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

SolopoV

  • Давно я тут
  • 573
  • 16 / 0
  • зеленею...
Уже решил, поменял местами верхнюю и нижнюю навигации, точнее нижнюю совсем прибил, а на её место вывел верхнюю (с сортировкой).
*

streelok

  • Захожу иногда
  • 331
  • 0 / 6
как вообще убрать «« В начало « Предыдущая 1 2 3 Следующая » В конец »»
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
А как посетители будут по страницам переходить? Вручную адрес вбивать? :)
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

loginbox

  • Захожу иногда
  • 72
  • 15 / 0
в shop.browse.php
закоментируйте код, строка 478
//   if ( $num_rows > 1 ) {
//      $browsepage_footer = $tpl->fetch( 'browse/includes/browse_pagenav.tpl.php' );
//      $tpl->set( 'browsepage_footer', $browsepage_footer );
//   } else {
      $tpl->set( 'browsepage_footer', '' );
//   }
если нужно убрать внизу страницы, вверху страницы навигация убираеться в настройках.
при этом не забываем в настройках Joomla увеличить количество отображаемых матерьялов. а то если товаров будет больше указаного там числа их просто не будет видно
История пишется царями, переписывается мошенниками, а изучается неудачниками...
*

streelok

  • Захожу иногда
  • 331
  • 0 / 6
так это «« В начало « Предыдущая 1 2 3 Следующая » В конец »» можно убрать в настройках?  а где в настройках находиться сколько тавара нужно отображать
*

loginbox

  • Захожу иногда
  • 72
  • 15 / 0
«« В начало « Предыдущая 1 2 3 Следующая » В конец »»
отображаться в 2 местах в вверху и внизу. вверху убираеться в настройках VirtueMart, а внизу убираеться закоментированием кода. а количество отображаемого товара можно изменить в настройках Joomla, вкладка общие  - длина списка.
История пишется царями, переписывается мошенниками, а изучается неудачниками...
*

streelok

  • Захожу иногда
  • 331
  • 0 / 6
*

streelok

  • Захожу иногда
  • 331
  • 0 / 6
еще один вопрос.... когда вывожу список всех категорий товара у меня сверху всех товаров слово Котегории выводиться.....как его убрать..
*

Grisly

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Чтобы не показывалася навигация в случае, когда отображается всего одна страница товаров
в файле pageNavigation.class.php правил функцию
Код
function getPagesLinks
<...>
    $start_loop = (floor(($this_page-1)/$displayed_pages))*$displayed_pages+1;
    if ($start_loop + $displayed_pages - 1 < $total_pages) {
      $stop_loop = $start_loop + $displayed_pages - 1;
    } else {
      $stop_loop = $total_pages;
    }
/*Grisly 20101007 No need to display navigation in case of single page*/
    if ($start_loop == $stop_loop)
       return "<br />";
/*Grisly 20101007 No need to display navigation in case of single page*/      
$html = '<br /><div>';
*

artlux

  • Захожу иногда
  • 466
  • 58 / 0
У меня дынный хак - убрал возможность AJAX добавления товара в карзину... WM 1.1.4...
Впринципе мне хватило просто убрать все эти ненужные слова в языковом файле в папке administrator/-тут путь до WM-/languages/common/...
Разработка расширений: Joomla 1.5+, Bitrix 12+, Мобильные приложения для сайтов под Android (PhoneGap).
Для бонусов: Z136221252622, R242724126443, U423945028202. +79211696184(Мегафон), или плюсик в репу!
*

Сергеич

  • Захожу иногда
  • 87
  • 2 / 0
Уже решил, поменял местами верхнюю и нижнюю навигации, точнее нижнюю совсем прибил, а на её место вывел верхнюю (с сортировкой).
Опишите пожалуйста пошагово, как осуществили вывод верхней навигации внизу?
*

vbatin

  • Новичок
  • 3
  • 0 / 0
Всем привет. Засада в следующем со страницы http://66pc.ru/infokiosk/43-noutbuki/view-all-products.html не переходит на следующие страницы, ни на 2,3, или 4. Не меняется кол-во отображаемых товаров. Заметил, что если в URL-e второй страницы изменить первый знак & на ?, то на 2-ую страницу попадаешь, и на следующие тоже при изменении линка. Подскажите плз, где и что нужно подправить, для норм работы этого модуля страниц!?
*

vbatin

  • Новичок
  • 3
  • 0 / 0
РЕШЕНО Замена файла, от более ранней версии. Помогла всему этому миру))))))))))
*

FLAGG

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
РЕШЕНО Замена файла, от более ранней версии. Помогла всему этому миру))))))))))
Подробнее для тупых, пожалуйста...
*

stepan_fed

  • Захожу иногда
  • 79
  • 1 / 0
искал решения о том как редактировать навигацию вверху, но на все ваши вопросы могу предложить готовый пост - http://kegla.net/showthread.php?p=79

пользуйтесь.
*

SpiritDEAD

  • Новичок
  • 1
  • 0 / 0
Для того что бы список был в виде     «« « 1 2 » »» Особо ковыряться в коде не надо. Просто в файле russian.php в administrator\components\com_virtuemart\languages\common\
находим 677 строчку PN_START. И меняем на то, что нам надо. В моем случай на пробел.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как реализовать: товары, которых нет в наличии в конец списка категории?

Автор Girevik

Ответов: 1
Просмотров: 1215
Последний ответ 02.11.2017, 10:52:04
от P_B
Как изменить тему письма, приходящего пользователю?

Автор kira

Ответов: 5
Просмотров: 1232
Последний ответ 09.06.2014, 01:50:59
от fsv
Как изменить, товаров в наличии 1 на "есть в наличии" V1.1.9?

Автор sa1981

Ответов: 2
Просмотров: 1198
Последний ответ 29.07.2013, 12:26:35
от sanekk
Изменить запрос поиска mod_virtuemart_search

Автор Tokyo

Ответов: 1
Просмотров: 1181
Последний ответ 06.06.2013, 02:03:57
от fsv
Поиск в категории "Изменить параметры"

Автор Pan4eZzz

Ответов: 2
Просмотров: 1547
Последний ответ 24.04.2013, 07:50:32
от Arsik