Новости Joomla

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

Joomla 5+ пакет для интеграции с API Почты России: нормализация данных, расчёт доставки, создание отправлений, партии, документы, возвраты, поиск отделений, справочники и SOAP-отслеживание.

v.3.0.0. Что нового?
Это дальнейшее развитие ранее закрытой Joomla-библиотеки для работы с API сервиса Отправка (для бизнеса) Почты России. Поэтому версия не 1.0.0, а 3.0.0.

Сейчас эта библиотека ушла от собственных реализаций и стала Joomla-обёрткой известного PHP SDK от Lapay Group.

Возможности библиотеки.
- получение настроек аккаунта, точек сдачи и текущего остатка запросов к API;
- нормализация адресов, ФИО и телефонов перед созданием отправления;
- расчёт тарифа и срока доставки;
- создание, поиск, изменение, удаление и возврат заказов в состояние «Новые»;
- проверка надёжности получателя;
- создание партий, просмотр партий и заказов внутри партии;
- генерация пакета печатных документов и формы Ф103;
- создание, изменение и удаление возвратных отправлений;
- поиск отделений по индексу, адресу и координатам, получение сервисов отделения;
- локальный список стран;
- SOAP-отслеживание операций по РПО и работа с билетами пакетного трекинга.

👩‍💻 Joomla-возможности.
В пакете библиотеки WT Otpravkapochtaru есть поля Joomla Form для расширений. Они позволяют работать в интерфейсе Joomla с некоторыми типами данных, получаемых по API из вашего личного кабинета в ЛК Почты России для бизнеса.
На данный момент в библиотеке доступны 3 поля списков, которые отображают доступные в аккаунте ОПС, типы и категории отправлений.
Поддерживаются зависимые списки: значение одного поля обновляется при изменении другого.

Системные требования.
Системные требования в основном связаны с системными требованиями апстрима библиотеки - LapayGroup PHP SDK.
- Joomla 5+
- PHP 8.3+
- Расширения PHP:
-- ext-mbstring
-- ext-simplexml
-- ext-soap (опционально, для трекинга)
-- ext-zip

Ссылки:
- Страница расширения
- GitHub библиотеки и документация

@joomlafeed

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

stepan39

  • Давно я тут
  • 502
  • 28 / 0
Добрый день!

Полигон для примера..

Сайт для тестов. В условном задании спрашиваем у пользователя какой он фрукт видит на картинке. Даем варианты ответа.

Даже если юзер в глаза не видел яблок, то подведя курсор к картинке он увидит в нижней части броузера images/sampledata/fruitshop/apple.jpg, что "какбынамекает".

Простейший путь избавиться от таких подсказок - давать случайные имена файлам картинок. Проблема, что картинок таких очень много, применяются они в разных местах сайта и название файла - единственный способ идентификации, что на этой картинки изображено. Вот, к примеру - понадобиться тебе вставить фото пражского крысарика и  будешь из сотни файлов "собачьего" каталога выбирать он - не он....

В общем, имена менять - не айс.

Пробуем найти решение, чтобы скрыть ссылку. Вот, к примеру.

Как то кажется слишком сложно.

Отсюда и вопросы:
1. Существует ли плагин, который по атрибуту ссылки будет запрещать ее отображение?
2. Возможна ли реализация такого плага, в случае его отсутствия?
3. Есть ли смысл в этих извращениях?

Спасибо!
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
здра.
ну сразу напрашивается вариант убрать ссылку с картинки вообще.
но это не решает проблему просмотра пути к картинке для чуть более продвинутых юзверей, которые откроют консоль или скрипты отключат на странице :D.

кардинальное решение - использовать Lightbox, который ресайзит и большую картинку и кладет её в папку кэша, снабжая закодированным названием.
sigplus вроде такое умеет.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Не будь паразитом, сделай что-нибудь самостоятельно!
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
здра.
ну сразу напрашивается вариант убрать ссылку с картинки вообще.
но это не решает проблему просмотра пути к картинке для чуть более продвинутых юзверей, которые откроют консоль или скрипты отключат на странице :D.

кардинальное решение - использовать Lightbox, который ресайзит и большую картинку и кладет её в папку кэша, снабжая закодированным названием.
sigplus вроде такое умеет.


Все проще, если использовать pointer-events: none то ссылка при наведении уже не отображается. Но тут есть и минус, элемент становится не кликабельным. Клик теперь надо делать посредством javascript:
Код
<script>
document.querySelectorAll('a.superbox.thumbnail.zoomin').forEach(function(ell) {
ell.style.pointerEvents = 'none';
ell.outerHTML = '<div onclick="this.firstElementChild.dispatchEvent(new Event(\'click\'));" style="display: inline-block;">'+ell.outerHTML+'</div>'
});
</script>
Попробовал обернуть ссылку в div, но к сожалению при этом слетает обработчик от Lightbox. Может что посоветуйте?
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ну так это не решение. и Lightbox сломал и имя картинки осталось доступно  ;D
проще было вообще не использовать Lightbox тогда уж.
все же вариант с ресайзом оригинала пока единственный решающий проблему.
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
ну так это не решение. и Lightbox сломал и имя картинки осталось доступно  ;D
проще было вообще не использовать Lightbox тогда уж.
все же вариант с ресайзом оригинала пока единственный решающий проблему.


Ну так и нет задачи полностью зашифровать пути, нужно просто скрыть ссылку при наведении. Если кто-нибудь подскажет, как обернуть элемент без потери обработчики, будет рабочее решение. В крайнем случае, можно заново назначить обработчики, но это надо ковырять код Lightbox модуля, что геморойно.
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
Добрый день!

Полигон для примера..

Сайт для тестов. В условном задании спрашиваем у пользователя какой он фрукт видит на картинке. Даем варианты ответа.

Даже если юзер в глаза не видел яблок, то подведя курсор к картинке он увидит в нижней части броузера images/sampledata/fruitshop/apple.jpg, что "какбынамекает".

Простейший путь избавиться от таких подсказок - давать случайные имена файлам картинок. Проблема, что картинок таких очень много, применяются они в разных местах сайта и название файла - единственный способ идентификации, что на этой картинки изображено. Вот, к примеру - понадобиться тебе вставить фото пражского крысарика и  будешь из сотни файлов "собачьего" каталога выбирать он - не он....

В общем, имена менять - не айс.

Пробуем найти решение, чтобы скрыть ссылку. Вот, к примеру.

Как то кажется слишком сложно.

Отсюда и вопросы:
1. Существует ли плагин, который по атрибуту ссылки будет запрещать ее отображение?
2. Возможна ли реализация такого плага, в случае его отсутствия?
3. Есть ли смысл в этих извращениях?

Спасибо!

Нашел рабочий вариант. Можно вот таким макаром замаскировать ссылки:
Код
<script type="text/javascript">

document.querySelectorAll('a.superbox.thumbnail.zoomin').forEach(function(ell) {
ell.setAttribute('style', 'position: relative; display: inline-block;');
ell.insertAdjacentHTML('afterbegin', '<a style="position: absolute; display: block; top: 0; left: 0; right: 0; bottom: 0; z-index: 99999;" href="#neizvestno"></a>');
});

</script>

Разместите этот код на странице. К слову, могу вам для прикола скрипт сделать, который не просто скроет название, а будет вводит заблуждение, подставляя неправильное название при наведении - для тех, кто считает себя самым умным)
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Не будь паразитом, сделай что-нибудь самостоятельно!
*

stepan39

  • Давно я тут
  • 502
  • 28 / 0
Разместите этот код на странице.
Не завелся... В коде страницы строки 49-54

могу вам для прикола скрипт сделать, который не просто скроет название, а будет вводит заблуждение
Спасибо огромное, но не нужно. Будете смеяться, но в саппорт будут писать - типа вот, в коде у вас ошибка  ;D
*

stepan39

  • Давно я тут
  • 502
  • 28 / 0
Столько откликов, спасибо большое!
Насколько я понял - готового ничего нет, все варианты подразумевают дополнительный java-скрипт, который будет грузиться на всех страницах?

Тут принципиально, я об этом в шапке не сказал, ссылка на картинку возникает только при использовании popup (лайтбокс и пр.). Я много всего перепробовал и в итоге юзаю mavik Thumbnails. Запускается он (указал в настройках) только по классу superbox.

Таким образом на этот класс и надо ориентироваться.
« Последнее редактирование: 18.08.2019, 15:53:59 от stepan39 »
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
<script type="text/javascript">

document.querySelectorAll('a.superbox.thumbnail.zoomin').forEach(function(ell) {
ell.setAttribute('style', 'position: relative; display: inline-block;');
ell.insertAdjacentHTML('afterbegin', '<a style="position: absolute; display: block; top: 0; left: 0; right: 0; bottom: 0; z-index: 99999;" href="#neizvestno"></a>');
});

</script>

Должен завестись, у меня все работает. Давайте я распишу поэтапно.

1. Зайдите в админ панели в общие настройки и отключите временно редактор TinyMCE, установив без редактора.
2. Перейдите в модули и создайте html-модуль со следующим текстом:
Код
<script type="text/javascript">

window.onload = function() {

document.querySelectorAll('a.superbox.thumbnail.zoomin').forEach(function(ell) {
ell.setAttribute('style', 'position: relative; display: inline-block;');
ell.insertAdjacentHTML('afterbegin', '<a style="position: absolute; display: block; top: 0; left: 0; right: 0; bottom: 0; z-index: 99999;" href="#neizvestno"></a>');
});

}

</script>
3. Опубликуйте модуль на нужной странице в позиции debug.

P. S. Если вдруг по прежнему не заведится, дайте мне ссылку на страницу, чтобы я мог посмотреть.
*

stepan39

  • Давно я тут
  • 502
  • 28 / 0
Должен завестись
Спасибо огромное, все работает! Помогло перемещение скрипта в подвал.
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
Спасибо огромное, все работает! Помогло перемещение скрипта в подвал.

Рад) Только момент один я не учел, надо чтобы ложная ссылка внутри перекрывала в том числе и бордюры, поэтому измените внутри скрипта кусочек с отступами на:
Код
top: -2px; left: -2px; right: -2px; bottom: -2px;
Потому что сейчас, если навести мышку на самый крайний-краешек картинки, то название все же отображается.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Только момент один я не учел
а еще этот скрипт не сработает в IE. ну и window.onload = function тоже не очень правильно делать
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
а еще этот скрипт не сработает в IE. ну и window.onload = function тоже не очень правильно делать

А как правильно, чтобы только после полной прогрузки элементов? Для IE, можно использовать for. Вот,  кросcбраузерно:
Код
<script type="text/javascript">

window.addEventListener('DOMContentLoaded', function() {

ell = document.querySelectorAll('a.superbox.thumbnail.zoomin');

for(var i = 0; i < ell.length; i++) {
ell[i].setAttribute('style', 'position: relative; display: inline-block;');
ell[i].insertAdjacentHTML('afterbegin', '<a style="position: absolute; display: block; top: -2px; left: -2px; right: -2px; bottom: -2px; z-index: 99999;" href="#neizvestno"></a>');
}

});

</script>
« Последнее редактирование: 18.08.2019, 18:04:46 от dm-krv »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
А как правильно, чтобы только после полной прогрузки элементов?
https://javascript.ru/forum/misc/61134-window-onload-ili-window-addeventlistener.html
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
https://javascript.ru/forum/misc/61134-window-onload-ili-window-addeventlistener.html

Не знал, спасибо за инфу) Я пару раз замечал, что window.onload  у меня почему-то не работает при повторном вызове, но особо не придавал значения и юзал jQuery, а оказывается его можно только один раз использовать, иначе перезапишется.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
а ежели в сторону плагина думать и по красоте, то вот такое можно учудить:
1) делаем системный плагин, который хэширует имена файлов из определенной категории/или с определенным классом и заменяет ссылку на
/get_pic.php?pic=43sdf466
2)в файле get_pic.php делаем обратное декодирование имени файла и отдаем его
Код
header('Content-type: image/jpg');
echo file_get_contents($url_to_img);
*

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
Там на этом сайте ява-скриптов столько, что лишний чреват жопушкой :)
Самый оптимальный это хеширование имени файла, но при этом оставляя нормальную ссылку на каталог ну или подменяя.
Т.е. плагин берет ссылку /images/stories/bulki/baton.jpg и преобразует в /hashing/sad54fa68ewf6asfasd5f45saf
В /hashing/ лежит пхп-файл и htaccess , который делает редирект, ну а пхп-файл делает обратное преобразование из sad54fa68ewf6asfasd5f45saf в /images/stories/bulki/baton.jpg
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
2 минуты гуглинга
Код
// A few settings
$img_file = 'raju.jpg';

// Read image path, convert to base64 encoding
$imgData = base64_encode(file_get_contents($img_file));

// Format the image SRC:  data:{mime};base64,{data};
$src = 'data: '.mime_content_type($img_file).';base64,'.$imgData;

// Echo out a sample image
echo '<img src="'.$src.'">';
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
Ыыыыыы...
Такое годится только для небольших картинок! Иначе страница будет весить тучу мегов.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Такое годится только для небольших картинок! Иначе страница будет весить тучу мегов.
Ну большая картинка даже просто ставленная в src ссылок тоже весит не мало.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
Ну большая картинка даже просто ставленная в src ссылок тоже весит не мало.
Нууу... я думаю мысль дельная есть. Там же через AJAX генерится страница, поэтому пофиг как картинки отдавать.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Нууу... я думаю мысль дельная есть. Там же через AJAX генерится страница, поэтому пофиг как картинки отдавать.
Ну тогда. да. проше имя менять.

Или еще проще, сохранять имя файла как рандом и просто отдельный файлик имя-файла => значение
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не могу разобраться как в админке заставить работать свой плагин

Автор kkmspb

Ответов: 3
Просмотров: 4150
Последний ответ 02.09.2024, 11:35:25
от kkmspb
Не работает плагин на хостинге

Автор a7951396

Ответов: 3
Просмотров: 4531
Последний ответ 29.11.2023, 17:56:49
от a7951396
Плагин joomirseopagination доработка

Автор Stasweb

Ответов: 15
Просмотров: 4389
Последний ответ 16.03.2023, 15:00:33
от Stasweb
Как создать графическую ссылку на часть картинки на сайте?

Автор chen

Ответов: 8
Просмотров: 2317
Последний ответ 25.02.2022, 20:35:16
от xpank
DJ-Classifieds - компонент доска объявлений. Как скрыть системные сообщения

Автор user2008june

Ответов: 2
Просмотров: 2040
Последний ответ 03.02.2022, 08:53:49
от user2008june