Новости 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

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

tikitok

  • Новичок
  • 4
  • 0 / 0
Столкнулся со следующей проблемой в PhocaGallery.
Нельзя загрузить  файлы с русскими именами. И приходится сразу грузить с латиницей, а затем уже переименовывать. ЧТо крайне неудобно в том случае, если имя совпадает с названием фото.

Ниже изложен один из приёмов, как починить это.
 
Проблема 1. Корявое отображение файлов c кирилицей в PhocaGallery, которые уже хранятся на сервере.

Решение:
1) Находим файл filefolderlist.php  (administrator\components\com_phocagallery\libraries\phocagallery\file\)
2) Находим в районе 80 сроки:
$tmp = new JObject();
$tmp->name = $fileThumb['name'];
$tmp->nameno = $fileThumb['name_no'];
$tmp->linkthumbnailpath= $fileThumb['thumb_name_m_no_rel'];
$tmp->linkthumbnailpathabs= $fileThumb['thumb_name_m_no_abs'];


меняем на:
$tmp = new JObject();
$tmp->name = $fileThumb['name'];
$tmp->name = iconv("cp1251", "UTF-8", $tmp->name);// +++++
$tmp->nameno = $fileThumb['name_no'];
$tmp->nameno = iconv("cp1251", "UTF-8", $tmp->nameno);// +++++
$tmp->linkthumbnailpath= $fileThumb['thumb_name_m_no_rel'];
$tmp->linkthumbnailpath = iconv("cp1251", "UTF-8", $tmp->linkthumbnailpath);// +++++
$tmp->linkthumbnailpathabs= $fileThumb['thumb_name_m_no_abs'];
$tmp->linkthumbnailpathabs = iconv("cp1251", "UTF-8", $tmp->linkthumbnailpathabs);// +++++


3) находим в районе 100й строки:
$tmp = new JObject();
$tmp->name = basename($folder);
$tmp->path_with_name = str_replace(DS, '/', JPath::clean($origPath . DS . $folder));
$tmp->path_without_name_relative= $path->image_abs . str_replace($origPathServer, '', $tmp->path_with_name);
$tmp->path_with_name_relative_no= str_replace($origPathServer, '', $tmp->path_with_name);
$folders[] = $tmp;


меняем:
$tmp = new JObject();
$tmp->name = basename($folder);
$tmp->name = iconv("cp1251", "UTF-8", $tmp->name);// +++++
$tmp->path_with_name = str_replace(DS, '/', JPath::clean($origPath . DS . $folder));
$tmp->path_with_name = iconv("cp1251", "UTF-8", $tmp->path_with_name);//+++++
$tmp->path_without_name_relative= $path->image_abs . str_replace($origPathServer, '', $tmp->path_with_name);
$tmp->path_without_name_relative = iconv("cp1251", "UTF-8", $tmp->path_without_name_relative);// +++++
$tmp->path_with_name_relative_no= str_replace($origPathServer, '', $tmp->path_with_name);
$tmp->path_with_name_relative_no = iconv("cp1251", "UTF-8", $tmp->path_with_name_relative_no);// +++++
$folders[] = $tmp;


Проблема 2. Нельзя загрузить файлы с русскими именами.

1) Находим файлphocagalleryu.php (\administrator\components\com_phocagallery\controllers\)
  
A) Комментируем строки 157-160:

// Make the filename safe
//if (isset($file['name'])) {
//   $file['name'] = JFile::makeSafe($file['name']);
//}

После них вставляем строку:
$file['name']   = iconv("UTF-8", "cp1251", $file['name']);// +++++

Б) Комментируем строку 213  $file['name']   = JFile::makeSafe($file['name']); (примерно +-5 строк) в блоке:
if (isset($file['name'])) {
//$file['name']   = JFile::makeSafe($file['name']);
}


Сразу после блока добавляем строку:
$file['name']   = iconv("UTF-8", "cp1251", $file['name']);// +++++

2) Находим файл  fileupload.php (\administrator\components\com_phocagallery\libraries\phocagallery\file\)
Комментируем строки 34-37:
      //if ($file['name'] !== JFile::makesafe($file['name'])) {
      //   $errUploadMsg = 'WARNFILENAME';
      //   return false;
      //}
Комментируем строки 43-47:
      //if (!in_array($format, $allowable)) {
      //   $errUploadMsg = 'WARNFILETYPE';
      //   return false;
      //}

Все..  Должно работать

P.S.
 Надеюсь, что я просто не нашел полноценной реализации этого на форуме и она есть. Т.к. данная реализация хоть и решает проблему, однако, не совсем корректно. Т.к.
а) Она снимает некоторые ограничения при загрузке файла, что может повлиять на безопасность
б) Она отключает функцию makeSafe в некоторых местах. Я не знаю зачем она нужна, но возможно, её отключение, также, не желательно.
в) Код писался "как быстрее", а не "как правильнее". Поэтому не судите строго.

Надеюсь, это кому-либо пригодиться. Все редактируемые файлы находятся в аттаче.
Аттач : http://depositfiles.com/files/azj3gbxiw  (как здесь прикрепить не нашел. Если кто умеет - перекрепите. )
*

xxxsa

  • Осваиваюсь на форуме
  • 10
  • 4 / 0
tikitok русский отображается и добавляется корректно, но когда нажимаешь на публикацию изображений, выдаётся сообщение что путь неправильный "JFolder::files: Path is not a folder
JFolder::folder: Path is not a folder" Файлы при этом не добавляются, категории создаются но кроказябрами СЂРёСЃСѓРЅРєРё
« Последнее редактирование: 18.05.2011, 11:12:13 от xxxsa »
*

xxxsa

  • Осваиваюсь на форуме
  • 10
  • 4 / 0
Не ужели нету решения? 1700 папок переименовать это жестоко, как сделать так чтоб через массовую загрузку хотя бы категории на русском воспринимала PhocaGallery?? и добавляла их.
*

xxxsa

  • Осваиваюсь на форуме
  • 10
  • 4 / 0
Не у кого нет проблем с  массовой загрузкой категории?
*

Sanchesko

  • Захожу иногда
  • 104
  • 13 / 0
Не у кого нет проблем с  массовой загрузкой категории?
Я просто теперь изначально прогоняю фотки через прогу - описание в этой теме http://joomlaforum.ru/index.php/topic,168968.0.html , затем добавляю и забываю .
Единственное , что хочу отметить это конечно не поможет если вам нужно отображение названий фоток именно на русском .
Мне фотки нужны для индекса , поэтому мне подходит и транслит - боты кушают как миленькие .
Русский способ настройки это нажатие всех кнопок устройства одновременно . Помогает реально ... успокоиться.
*

xxxsa

  • Осваиваюсь на форуме
  • 10
  • 4 / 0
спасибо за программку
« Последнее редактирование: 12.07.2011, 15:22:21 от xxxsa »
*

Kre44et

  • Новичок
  • 1
  • 0 / 0
Парни вы конечно молодци, но чего за программка то ?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomla 5 Модули: PhocaGallery Image Module ошибка Class "JRequest" not found

Автор prostoy

Ответов: 0
Просмотров: 2731
Последний ответ 05.09.2024, 09:41:27
от prostoy
PhocaGallery

Автор rezchik

Ответов: 6
Просмотров: 3641
Последний ответ 07.01.2024, 16:59:36
от SeBun
Русификация PhocaGallery 3 и 4 для Joomla 2.5\3.0

Автор HiopsNerevar

Ответов: 118
Просмотров: 106408
Последний ответ 11.03.2022, 16:24:13
от sergeytolkachyov
Сортировка категорий в столбцах/колонках PhocaGallery 3.2.2

Автор remix8080

Ответов: 0
Просмотров: 4118
Последний ответ 20.06.2021, 17:09:27
от remix8080
PhocaGallery 2.8.1 для Joomla 1.5

Автор iGoldSilver

Ответов: 3
Просмотров: 4362
Последний ответ 16.12.2020, 10:10:17
от iGoldSilver