Новости Joomla

👩‍💻 WT CDEK library v.1.3.0 - обновление PHP SDK для Joomla + CDEK.

👩‍💻 WT CDEK library v.1.3.0 - обновление PHP SDK для Joomla + CDEK.

Небольшая нативная PHP Joomla библиотека для работы с API v.2 службы доставки CDEK. Библиотека представляет собой клиент для авторизации в CDEK API по OAuth, работы с некоторыми методами API: получения ряда данных и расчета стоимости доставки. Поддерживается Joomla 4.2.7 и выше.

В пакет входят:
- библиотека Webtolk/Cdekapi
- системный плагин System - WT Cdek для хранения настроек и AJAX-интеграций
- task-плагин Task - Update WT Cdek data для обновления локальных копий справочников CDEK по расписанию
- web asset с официальным JavaScript-виджетом СДЭК

👉 v.1.3.0. Что нового?
- Полный рефакторинг библиотеки. Библиотека переработана в entity-based API с фасадом Cdek и отдельным слоем запросов. Обратная совместимость не нарушена, поэтому версия библиотеки - 1.3.0.
- Добавлена поддержка новых разделов API СДЭК. Добавлена поддержка новых разделов API СДЭК: webhooks, prealert, печатные формы, payment, passport, reverse, intakes и других сущностей.
- Улучшена интеграция с Joomla.
Улучшена интеграция с Joomla: installer script для layouts, новые поля Joomla Form для тарифов и обновлённые js виджета CDEK.
- документация библиотеки. Все методы библиотеки подробно описаны, а так же текст документации собран в отдельной папке в git репозитории и будет опубликован на сайте.

Библиотека эта нужна для разработчиков, создающих свои расширения для интеграции Joomla и курьерской службы CDEK.

Страница расширения
GitHub расширения

@joomlafeed

Поток товаров, связанные товары для JoomShopping 5+.

Поток товаров, связанные товары для JoomShopping 5+.

Расширение для JoomShopping 5+, которое позволяет связывать товары между собой на основе общих характеристик, создавая логические группы товаров в каталоге.

Расширение реализует механизм связывания товаров, похожий на стандартный Related Products, но с дополнительной возможностью быстрого подбора товаров по характеристикам.

Принцип работы
- Связывание товаров происходит в полуавтоматическом режиме.
- Администратор выбирает характеристику, по которой нужно сформировать группу товаров (например: модель, серия, объем, тип и т.д.).
- Система фильтрует и показывает список товаров с таким же значением характеристики.
- Администратор выбирает нужные товары из списка для создания связи.
Таким образом сохраняется полный контроль над связями, но значительно упрощается поиск нужных товаров.

Назначение потока товаров в одном товаре является сквозным. Это обеспечивает автоматическую связь и возможность корректировки потока в каждом товаре, который к нему относится.

Страница расширения

@joomlafeed

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

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Здраствуйте.  Добавляю в админку новые меню, но они имеют очень длинные названия. Из за этого, у меня смещаются блоки панель в сторону. Как сделать, чтоб текст в меню обрезался до заданной величины? :P
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #1 : 06.07.2010, 16:20:38 »
могу предложить свой вариант (тут), там функция обрезки по словам я ее написал для обрезки названия тем, думаю и тебе подойдет.
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #2 : 06.07.2010, 17:03:56 »
Впринципе подойдет, ток я не знаю куда ее вставлять. Ты не поможешь нащет этого?
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #3 : 06.07.2010, 17:09:54 »
тебе обрезать название меню, то что на сайте отображается или то что в админке?
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #4 : 06.07.2010, 17:29:32 »
То что в админке, главное меню. У меня там длинные названия пунктов меню, и соответственно, все боковые колонки смещаются за боковой экран. Мне б их подрезать чуть. А еще когда заходишь в любой пункт меню, там тоже есть список меню и он тоже на всю длинну показывает текст. И там тоже блоки выходят за основные рамки старницы из за этого. Сделаешь?
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #5 : 06.07.2010, 17:45:44 »
С меня помощь а с тебя "+" ;)
в файле \administrator\components\com_menus\views\list\tmpl\default.php 85 строчка
Код: php
<span class="editlinktip hasTip" title="<?php echo JText::_( 'Edit Menu' );?>::<?php echo $row->treename; ?>">
<a href="<?php echo JRoute::_( 'index.php?option=com_menus&menutype='.$row->menutype.'&task=edit&cid[]='.$row->id ); ?>"><?php echo $row->treename; ?></a></span>
<?php endif; ?>
меняем на
Код: php
<span class="editlinktip hasTip" title="<?php echo JText::_( 'Edit Menu' );?>::<?php echo $row->treename; ?>">
<a href="<?php echo JRoute::_( 'index.php?option=com_menus&menutype='.$row->menutype.'&task=edit&cid[]='.$row->id ); ?>"><?php echo maxsize_str_word($row->treename); ?></a></span>
<?php endif; ?>
Но есть проблема если есть вложение, то есть подпункты они сразу превращаются в ... (подправил нужно просто увеличить количество символов для отображения - грубо но работает)
и поменял немного функцию на
Код: php
function maxsize_str_word($text, $counttext = 100, $sep = ' ') {
  $text = iconv("utf-8","windows-1251",$text);
  if (strlen($text)>$counttext)
{
if ($text[$counttext+1] != ' ')
{
$text = substr($text,0,$counttext);
$text = substr($text,0,strrpos($text,$sep));
}
else
{
$text = substr($text,0,$counttext+2);
$text = substr($text,0,strrpos($text,$sep));
}
$text = $text."...";
}

$text = iconv("windows-1251","utf-8",$text);
   return $text;
}
ее где-то в самом верху впихни
а над подменюшками я щас еще попарюсь
« Последнее редактирование: 06.07.2010, 18:00:23 от SpecTR »
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #6 : 06.07.2010, 18:01:20 »
Ок, договорились
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #7 : 06.07.2010, 18:29:08 »
если нужно чтобы название меню обрезалось в "Родительский пункт меню:" при редактировании пункта меню, то нужно применить еще эту функцию в файле \administrator\components\com_menus\helpers\helper.php в строчке 117 к $item->treename
Код: php
foreach ( $list as $item ) {
$mitems[] = JHTML::_('select.option',  $item->id, '&nbsp;&nbsp;&nbsp;'. maxsize_str_word($item->treename) );
}
ну вот так навскидку за часик обрезали названия меню в админке ;)
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #8 : 06.07.2010, 18:42:22 »
Еще один вариант избавиться от длинного названия в одну строчку не резав его, а просто перенося в новый рядок продолжение:
в файле \administrator\components\com_menus\views\list\tmpl\default.php строчка 81 удалить nowrap="nowrap"
до
Код
<td nowrap="nowrap">
<?php if (  JTable::isCheckedOut($this->user->get('id'), $row->checked_out ) ) : ?>
<?php echo $row->treename; ?>
<?php else : ?>
<span class="editlinktip hasTip" title="<?php echo JText::_( 'Edit Menu' );?>::<?php echo $row->treename; ?>">
<a href="<?php echo JRoute::_( 'index.php?option=com_menus&menutype='.$row->menutype.'&task=edit&cid[]='.$row->id ); ?>"><?php echo $row->treename; ?></a></span>
<?php endif; ?>
</td>
после
Код
<td>
<?php if (  JTable::isCheckedOut($this->user->get('id'), $row->checked_out ) ) : ?>
<?php echo $row->treename; ?>
<?php else : ?>
<span class="editlinktip hasTip" title="<?php echo JText::_( 'Edit Menu' );?>::<?php echo $row->treename; ?>">
<a href="<?php echo JRoute::_( 'index.php?option=com_menus&menutype='.$row->menutype.'&task=edit&cid[]='.$row->id ); ?>"><?php echo $row->treename; ?></a></span>
<?php endif; ?>
</td>

Но в селекте Родительский пункт меню:" при редактировании пункта меню придется резать.
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #9 : 09.07.2010, 13:40:46 »
если нужно чтобы название меню обрезалось в "Родительский пункт меню:" при редактировании пункта меню, то нужно применить еще эту функцию в файле \administrator\components\com_menus\helpers\helper.php в строчке 117 к $item->treename
Код: php
foreach ( $list as $item ) {
$mitems[] = JHTML::_('select.option',  $item->id, '&nbsp;&nbsp;&nbsp;'. [b]maxsize_str_word[/b]($item->treename) );
}
ну вот так навскидку за часик обрезали названия меню в админке ;)

maxsize_str_word - Это насколько я понял ты вводишь вручную количество символов в строке? или этот параметр где-то задается?
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #10 : 09.07.2010, 14:58:57 »
это функция с 3 параметрами maxsize_str_word (текст, количество символов которое надо вывести, разделитель слов)
количество символов которое надо вывести = по умолцанию 100 , а  разделитель слов = ' '
2 и 3 параметры можно не указывать (то есть применяться те что поумолчанию), а можно и указывать
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #11 : 12.07.2010, 13:34:45 »
Вставил твою функцию, и у меня начали страницы плохо отображатся, выдает абра-кадабру какую-то
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #12 : 12.07.2010, 18:30:01 »
Попробуй закоментировать $text = iconv("utf-8","windows-1251",$text); и $text = iconv("windows-1251","utf-8",$text);
и проверь поддерживает ли твой PHP функцию iconv
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #13 : 13.07.2010, 00:29:24 »
Я в программировании дуб-деревом :dry: Когда - то пытался научится, но я не знаю как это проверить. Закоментировать, это поставить два слэша, или решетку?
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #14 : 13.07.2010, 11:08:10 »
два слеша вот так:
Код: php
//$text = iconv("utf-8","windows-1251",$text);
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #15 : 13.07.2010, 14:22:13 »
После всех процедур, когда захожу в глакное меню, выскакивает такая страница


function maxsize_str_word($text, $counttext = 100, $sep = ' ') { //$text = iconv("utf-8","windows-1251",$text); if (strlen($text)>$counttext) { if ($text[$counttext+1] != ' ') { $text = substr($text,0,$counttext); $text = substr($text,0,strrpos($text,$sep)); } else { $text = substr($text,0,$counttext+2); $text = substr($text,0,strrpos($text,$sep)); } $text = $text."..."; } //$text = iconv("windows-1251","utf-8",$text); return $text; }
Фильтр: Применить Сбросить    Макс. уровней
№       Пункт меню    По умолчанию    Опубликовано    Порядок Сохранить порядок    Доступ    Системное имя    Itemid
Количество строк:
В начало
Пред.
123
След.
В конец
Страница 1 из 3

*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #16 : 15.07.2010, 11:05:41 »
прикрепи свой файлик \administrator\components\com_menus\views\list\tmpl\default.php
а то мне что-то кажется что не те ты манипуляции сделал :)
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #17 : 27.07.2010, 13:12:06 »
Файлик в студию
« Последнее редактирование: 27.07.2010, 13:15:19 от SpecTR »
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #18 : 01.09.2010, 07:49:31 »
Привет, это я опять, наконец-то руки доросли:)

Проделал первую процедуру - текст обрезался в главном меню

Когда проводил обрезание в родительском меню - то выдаются крякозябры.

Файлик добавлю, когда очиститься папка аплоад
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: Обрезание текста в админке
« Ответ #19 : 01.09.2010, 09:07:18 »
Когда проводил обрезание в родительском меню - то выдаются крякозябры.
что не удивительно, т.к. данные функции не работают с кириллицей UTF-8
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #20 : 29.09.2010, 13:42:57 »
что не удивительно, т.к. данные функции не работают с кириллицей UTF-8
Странно а у меня на этом сайте работает прекрасно.
Проверить можно на новости с длинным названием.
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #21 : 02.10.2010, 00:56:08 »
Привет, извини что долго не отвечал - опять руки не доходили. Обещанный плюс с меня - уже давно стоит ^-^ Так вот, я все еще тебя чуть поковыряю ;) Сделал я нормально обрезку текста в меню, там все ок. Но уже в каждом отдельно меню, там где пункт "родительское меню" - у меня не выходит. применяю я этот код к 117 строке файла helper.php
Код
foreach ( $list as $item ) {
            $mitems[] = JHTML::_('select.option',  $item->id, '&nbsp;&nbsp;&nbsp;'. maxsize_str_word($item->treename) );
        }
, вставляю в этом же файле в самом вверху функцию

Код
function maxsize_str_word($text, $counttext = 100, $sep = ' ') {
  $text = iconv("utf-8","windows-1251",$text);
  if (strlen($text)>$counttext)
{
if ($text[$counttext+1] != ' ')
{
$text = substr($text,0,$counttext);
$text = substr($text,0,strrpos($text,$sep));
}
else
{
$text = substr($text,0,$counttext+2);
$text = substr($text,0,strrpos($text,$sep));
}
$text = $text."...";
}
 
$text = iconv("windows-1251","utf-8",$text);
   return $text;
}
и у меня выдает такое сообщение

Parse error: syntax error, unexpected $end, expecting T_FUNCTION in /var/www/v001103/data/www/dpsstop.info/administrator/components/com_menus/helpers/helper.php on line 199

В чем может быть проблема?
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: Обрезание текста в админке
« Ответ #22 : 04.10.2010, 10:20:27 »
У тебя проблема в синтаксисе где-то.
Вот прикрепил свой файл, он у меня работает:


[вложение удалено Администратором]
*

xUnicornx

  • Захожу иногда
  • 78
  • 0 / 0
Re: Обрезание текста в админке
« Ответ #23 : 04.10.2010, 16:36:50 »
Все, ура. Спасибо, помог:) *DRINK*
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться