Новости Joomla

Компонент View logs v.2.2.0

👩‍💻 Компонент View logs v.2.2.0.По горячим следам, рекомендациям и просьбам Joomla-сообщества компонент просмотра логов Joomla получил следующую версиюv.2.2.0. Что нового?- Обновление интерфейса: список логов сделан в виде таблицы, отображение дополнительной информации в списке файлов (время создания и последнего изменения, кнопки действий и их порядок) изменены и сделаны менее пёстрыми.- Добавлен поиск-фильтр по имени файла лога на странице. Находите нужный файл быстрее.- Большие файлы. Просмотр файла лога в модальном окне сохранён для файлов менее 1МБ. Возможность открыть файл в отдельном окне сохранена. Но используйте эту функцию с осторожностью: файлы объёмом 8-10мб ещё возможно открывать в браузере, но более крупные - не рекомендуется. Системные требования:- Совместимость с Joomla 6 и PHP 8.4.- Минимальная версия PHP по-прежнему 8.0.Страница расширенияGitHub расширения@joomlafeed#joomla #расширения

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

ettikib

  • Осваиваюсь на форуме
  • 28
  • 0 / 0
Как настроить нижнюю пагинацию в виде 1 2 ... 5 6 7 8 9 ... 48 49 при переходе на 9 страницу 1 2 ... 7 8 9 10 11 ... 48 49?
*

topos

  • Захожу иногда
  • 78
  • 10 / 0
ответил в личку, но отвечу и здесь,  а то постоянно спрашивают.
в файле \administrator\components\com_virtuemart\classes\pageNavigation.class.php
код
Код
 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 .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart=0')."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_START')."\">&laquo;&laquo; ".$VM_LANG->_('PN_START')."</a></li>";
        $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart='.$page)."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_PREVIOUS')."\">&laquo; ".$VM_LANG->_('PN_PREVIOUS')."</a></li>";
      } else {
        $html .= "\n<li><a href=\"#beg\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_START')."\" onclick=\"javascript: document.adminForm.limitstart.value=0; document.adminForm.submit();return false;\">&laquo;&laquo; ".$VM_LANG->_('PN_START')."</a></li>";
        $html .= "\n<li><a href=\"#prev\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_PREVIOUS')."\" onclick=\"javascript: document.adminForm.limitstart.value=$page; document.adminForm.submit();return false;\">&laquo; ".$VM_LANG->_('PN_PREVIOUS')."</a></li>";
      }
    } else {
      $html .= "\n<li><span class=\"pagenav\">&laquo;&laquo; ".$VM_LANG->_('PN_START')."</span></li>";
      $html .= "\n<li><span class=\"pagenav\">&laquo; ".$VM_LANG->_('PN_PREVIOUS')."</span></li>";
    }

    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 .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart='.$page)."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_NEXT')."\"> ".$VM_LANG->_('PN_NEXT')." &raquo;</a></li>";
        $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart='.$end_page)."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_END')."\"> ".$VM_LANG->_('PN_END')." &raquo;&raquo;</a></li>";
      } else {
        $html .= "\n<li><a href=\"#next\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_NEXT')."\" onclick=\"javascript: document.adminForm.limitstart.value=$page; document.adminForm.submit();return false;\"> ".$VM_LANG->_('PN_NEXT')." &raquo;</a></li>";
        $html .= "\n<li><a href=\"#end\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_END')."\" onclick=\"javascript: document.adminForm.limitstart.value=$end_page; document.adminForm.submit();return false;\"> ".$VM_LANG->_('PN_END')." &raquo;&raquo;</a></li>";
      }
    } else {
      $html .= "\n<li><span class=\"pagenav\">".$VM_LANG->_('PN_NEXT')." &raquo;</span></li>";
      $html .= "\n<li><span class=\"pagenav\">".$VM_LANG->_('PN_END')." &raquo;&raquo;</span></li>";
    }
    $html .= "\n</ul>";
    return $html;
  }

Меняем на

Код
  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 ($this_page <= $displayed_pages / 2 + 1 ) {
      $start_loop = 2;
    } else {
    $start_loop = $this_page - $displayed_pages / 2;
    }
    if ($start_loop + $displayed_pages - 1 < $total_pages) {
      $stop_loop = $start_loop + $displayed_pages - 1;
    } else {
      $stop_loop = $total_pages;
    }
    $html = '<ul class="pagination"><li>'.$VM_LANG->_('PN_PRETEXT').'</li>';
   
    if ($this_page > 1) {
      $page = ($this_page - 2) * $this->limit;
      if( $link != '') {
       // $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart=0')."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_START')."\">&laquo;&laquo; ".$VM_LANG->_('PN_START')."</a></li>";
        $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart='.$page)."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_PREVIOUS')."\">&laquo; </a></li>";
      } else {
       // $html .= "\n<li><a href=\"#beg\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_START')."\" onclick=\"javascript: document.adminForm.limitstart.value=0; document.adminForm.submit();return false;\">&laquo;&laquo; ".$VM_LANG->_('PN_START')."</a></li>";
        $html .= "\n<li><a href=\"#prev\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_PREVIOUS')."\" onclick=\"javascript: document.adminForm.limitstart.value=$page; document.adminForm.submit();return false;\">&laquo; </a></li>";
      }
    } else {
     // $html .= "\n<li><span class=\"pagenav\">&laquo;&laquo; ".$VM_LANG->_('PN_START')."</span></li>";
      $html .= "\n<li><span class=\"pagenav\">&laquo; </span></li>";
    }
    if ( $this_page == 1) {
       $html .= "\n<li><span class=\"pagenav\"> 1 </span></li>";
    }
      else {
       $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart=0')."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_START')."\">1</a></li>";
      }
    if ($this_page > $displayed_pages / 2 + 2 ){
      $html .= "\n<li><span>...</span></li>";
    }
    for ($i=$start_loop; $i <= $stop_loop; $i++) {
    if ($i != $total_pages)  {
      $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 - $displayed_pages / 2  ){
      $html .= "\n<li><span>...</span></li>";
    }
    if ( $this_page == $total_pages) {
       $html .= "\n<li><span class=\"pagenav\"> $total_pages </span></li>";
    }
      else {
      $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart='.(($total_pages-1) * $this->limit))."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_END')."\"> $total_pages</a></li>";
      }
    if ($this_page < $total_pages) {
      $page = $this_page * $this->limit;
      $end_page = ($total_pages-1) * $this->limit;
      if( $link != '') {
        $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart='.$page)."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_NEXT')."\">  &raquo;</a></li>";
      //  $html .= "\n<li><a href=\"".vmRoute($link.'&limit='.$this->limit.'&limitstart='.$end_page)."\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_END')."\"> ".$VM_LANG->_('PN_END')." &raquo;&raquo;</a></li>";
      } else {
        $html .= "\n<li><a href=\"#next\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_NEXT')."\" onclick=\"javascript: document.adminForm.limitstart.value=$page; document.adminForm.submit();return false;\">  &raquo;</a></li>";
      //  $html .= "\n<li><a href=\"#end\" class=\"pagenav\" title=\"".$VM_LANG->_('PN_END')."\" onclick=\"javascript: document.adminForm.limitstart.value=$end_page; document.adminForm.submit();return false;\"> ".$VM_LANG->_('PN_END')." &raquo;&raquo;</a></li>";
      }
    } else {
      $html .= "\n<li><span class=\"pagenav\"> &raquo;</span></li>";
     // $html .= "\n<li><span class=\"pagenav\">".$VM_LANG->_('PN_END')." &raquo;&raquo;</span></li>";
    }
    $html .= "\n</ul>";
    return $html;
  }



*

ettikib

  • Осваиваюсь на форуме
  • 28
  • 0 / 0
Да спасибо огромное, действительно проблема очень актуальная. 
*

ettikib

  • Осваиваюсь на форуме
  • 28
  • 0 / 0
*

Velka

  • Новичок
  • 2
  • 0 / 0
  • Не волшебник, учусь :)
Спасибо, замена кода реально помогла!
*

vazellin

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Спасибо, замена кода реально помогла!
Спасибо, отлично работает! Кроме одного момента: если товаров хватает только на одну страницу, то 1 дублируется два раза.
Пример « 1 1 ».
Как это исправить? Либо же вообще убрать пагинацию, когда товары помещаются на одну страницу?
*

si@m

  • Захожу иногда
  • 162
  • 2 / 0
Присоединяюсь к вопросу, тоже актуально про
Цитировать
Пример « 1 1 ».
*

kordima

  • Захожу иногда
  • 54
  • 24 / 0
*

si@m

  • Захожу иногда
  • 162
  • 2 / 0
Спасибо за ссылку
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Стилизация пагинации

Автор intcorp

Ответов: 2
Просмотров: 3163
Последний ответ 02.09.2017, 09:20:46
от intcorp
[download] Модуль вывода товаров для VirtueMart (1.2.3 и 2.1)

Автор beliyadm

Ответов: 1448
Просмотров: 378700
Последний ответ 21.07.2015, 06:21:55
от Серегин
Альтернативный модуль вывода категорий товаров (mod_kdz_vm_categories)

Автор kordima

Ответов: 89
Просмотров: 29256
Последний ответ 19.02.2015, 22:02:14
от kordima
Отображение товаров в виде таблицы

Автор Doppelganger

Ответов: 183
Просмотров: 61040
Последний ответ 15.04.2014, 23:27:29
от 4ifir
Пагинация в категории товаров

Автор chgr73

Ответов: 0
Просмотров: 1570
Последний ответ 20.02.2014, 16:06:50
от chgr73