Новости Joomla

SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla

SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla

👩‍💻 SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla.Компонент - менеджер цифровых проектов для Joomla! CMS. Компонент обеспечивает создание каталога цифровых проектов и предоставляет возможность скачивания, в том числе с использованием лицензионных ключей.👩‍💻 v.2.5.0. Что нового?Схемы структур данных для серверов обновлений. Теперь с SW JProjects вы может создавать сервер обновлений не только для расширений Joomla, но и свои собственные. Например, вам нужно, чтобы структура данных сервера обновлений была другая и формат должен быть, например, не XML, а JSON. Формирование структуры данных для сервера обновлений расширений Joomla вынесено в отдельный плагин. Вы можете создать свой собственный плагин и реализовать в нём нужную вам структуру данных, добавив или наоборот исключив отображаемые данные. Сервер обновлений в компоненте по-прежнему отображает информацию о списке проектов и их версиях, о конкретном проекте и его changelog.Можно выбрать схему данных сервера обновлений глобально для всего компонента, выбрать другую схему данных для категории проектов, а так же выбрать схему в каждом проекте.

Разработчикам в качестве образца можно посмотреть плагин схемы данных для Joomla в составе компонента или же плагин-образец JSON-схемы на GitHub.
Группа плагинов swjprojects. Для нужд компонента создана группа плагинов swjprojects. В частности, в этой группе находится плагин структуры данных Joomla расширений для сервера обновлений.Изменение языковых констант. Изменены некоторые языковые константы в панели администратора. Если вы делали переопределение констант - переопределите их снова.👩‍💻 Joomla 6. Внесены изменения для корректной установки и работы компонента на Joomla 6. Компонент успешно протестирован на Joomla 6-beta2.Минимальная версия Joomla - 5. Подняты минимальные системные требования: Joomla 5.0.0 и PHP 8.1.
- Страница расширения👉 Плагин-образец кастомной JSON-схемы данных для сервера обновлений на GitHub.- GitHub расширения- Документация на GitHub- Joomla Extensions Directory#joomla #расширения

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

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

Bangoo

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
  • Пишу сайты на мантрах
Конфликт Jquery и Mootools
« : 27.03.2011, 16:14:02 »
нтегрировал выпадающее меню на Jquery в шаблон Joomla+Virtuemart.
В Index.php шаблона подключил следующие файлы:
Код
<script type="text/javascript" 
src="templates/shablon/js/jquery.min.js">
</script>
   

<script type="text/javascript"
src="templates/shablon/js/jquery.hoverIntent.minified.js">
</script>

<script type="text/javascript"
src="templates/shablon/js/munu.js">
</script>

В VirtueMart на mootools работает просмотр изображений Lightbox. Эти скрипты начали конфликтовать.
Пришлось заменить в файлах query.min.js, jquery.hoverIntent.minified.js,
munu.js
значок $ на jquery

После этого Lightbox заработал.
Но появилась новая проблема: при открытии страницы меню сразу появляется выпавшим.

Подскажите, есть ли какой-то вариант решения проблемы, оба компонента нужны.

Файл munu.js
Код
jQuery(document).ready(function() {


function megaHoverOver(){
 jQuery(this).find(".sub").stop().fadeTo('fast', 1).show();

//Calculate width of all ul's
(function(jQuery) {
 jQuery.fn.calcSubWidth = function() {
 rowWidth = 0;
 //Calculate row
 jQuery(this).find("ul").each(function() {
 rowWidth += jQuery(this).width();
 });
 };
 })(jQuery);

 if ( jQuery(this).find(".row").length > 0 ) { //If row exists...
 var biggestRow = 0;
 //Calculate each row
 jQuery(this).find(".row").each(function() {
 jQuery(this).calcSubWidth();
 //Find biggest row
 if(rowWidth > biggestRow) {
 biggestRow = rowWidth;
 }
 });
 //Set width
 jQuery(this).find(".sub").css({'width' :biggestRow});
 jQuery(this).find(".row:last").css({'margin':'0'});

 } else { //If row does not exist...

 jQuery(this).calcSubWidth();
 //Set Width
 jQuery(this).find(".sub").css({'width' : rowWidth});

 }
 }

 function megaHoverOut(){
 jQuery(this).find(".sub").stop().fadeTo('fast', 0, function() {
 jQuery(this).hide();
 });
 }


 var config = {
 sensitivity: 1, // number = sensitivity threshold (must be 1 or higher)
 interval: 1, // number = milliseconds for onMouseOver polling interval
 over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
 timeout: 1, // number = milliseconds delay before onMouseOut
 out: megaHoverOut // function = onMouseOut callback (REQUIRED)
 };

 jQuery("ul#topnav li .sub").css({'opacity':'0'});
 jQuery("ul#topnav li").hoverIntent(config);



});
*

Mihanja80

  • Завсегдатай
  • 1918
  • 168 / 4
  • Всю жизнь учусь...
Re: Конфликт Jquery и Mootools
« Ответ #1 : 27.03.2011, 16:22:01 »
где то читал что j Q u e r y должен загружаться на странице после моотулс в ноконфликт, тогда конфликта не будет.
Я с мобильного, в основном...
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

dennioushen

  • Захожу иногда
  • 86
  • 0 / 0
  • Don Corleone
Re: Конфликт Jquery и Mootools
« Ответ #3 : 20.11.2012, 13:42:55 »
Joomla 2.5. Шаблон yootheme.

Ошибка mootools



В head

Цитировать
 
<script src="/media/system/js/mootools-core.js" type="text/javascript"></script>
  <script src="/media/system/js/core.js" type="text/javascript"></script>
  <script src="/media/system/js/caption.js" type="text/javascript"></script>
  <script src="/media/widgetkit/js/jquery.js" type="text/javascript"></script>
  <script src="/cache/widgetkit/widgetkit-c0bf414d.js" type="text/javascript"></script>

В материале подлючение

Цитировать
<script charset="" src="/s/js/mootools-1.2.3-core-more-3948312637.js"></script>
<script charset="" src="/s/js/payment-4026282852.js"></script>
<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-20409890-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>

« Последнее редактирование: 20.11.2012, 13:47:14 от dennioushen »
*

borro

  • Завсегдатай
  • 1379
  • 22 / 0
  • желаю вам счастья
Re: Конфликт Jquery и Mootools
« Ответ #4 : 22.11.2012, 13:54:09 »
Решение конфликта использования нескольких библиотек jQuery в одном коде
здравствуйте. Почитал я предложенную вами статью и толком не понял, где вставлять. Есть что-то на более начальном языке?

На разрабатываемом сайте , работающем на Joomla 2.5.8, как сказал разработчик компонента aiContactSafe(отправка сообщений), работающего на mootools, есть конфликт jquery и mootools. Когда просмотрел через инструменты Хрома увидел строку с ошибкой "Uncaught TypeError: Object [object Object] has no method 'addEvent' ". Получается, что мне надо найти файлы .js этого модуля и поменять там $ на jquery? А куда добавлять var MyjQuery123 = jQuery.noConflict();?
« Последнее редактирование: 22.11.2012, 13:57:31 от borro »
*

quake3

  • Захожу иногда
  • 131
  • 3 / 0
Re: Конфликт Jquery и Mootools
« Ответ #5 : 30.11.2012, 20:56:50 »
У меня вот такое выдает - COM_AICONTACTSAFE_THE_SELECTED_PROFILE_IS_INVALID ( 1 )
Никак не могу побороть.. Модуль aicontactsafe вообще не отображается.. как будто в этой позиции вообще ничего нет, ни сообщений - ничего.. А строчка эта появляется при попытке вывода формы с помощью плагина aicontactsafe form. Подскажите где глянуть ?

p.s. Joomla 2.5, шаблон использует Gantry Framework
« Последнее редактирование: 30.11.2012, 21:02:56 от quake3 »
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Re: Конфликт Jquery и Mootools
« Ответ #6 : 04.04.2013, 13:14:51 »
У меня вот такое выдает - COM_AICONTACTSAFE_THE_SELECTED_PROFILE_IS_INVALID ( 1 )
У меня в этом случае срабатывает синтаксис 
Код
{aicontactsafeform pf=1|use_css=1}
Я имел ту же самую ошибку при вставке формы в статью..
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Конфликт MooTools и Yandex.share. jQuery.noConflict() не помогает

Автор grover268

Ответов: 0
Просмотров: 1331
Последний ответ 07.04.2016, 10:38:37
от grover268
Нужно сделать Jquery Exit Popup

Автор olegtlt

Ответов: 2
Просмотров: 2343
Последний ответ 09.02.2016, 11:51:33
от Stomp
Модификация tipsy - Facebook-style tooltip plugin for jQuery

Автор leo78

Ответов: 1
Просмотров: 1320
Последний ответ 08.08.2015, 11:10:38
от leo78
jQuery изменить класс мышкой, а в остальным убрать класс active, возможно прописать двойное нажатие

Автор leo78

Ответов: 3
Просмотров: 1391
Последний ответ 18.07.2015, 11:16:21
от leo78
Что оптимальнее - запросы в базу или jQuery?))

Автор verstalshik

Ответов: 3
Просмотров: 1164
Последний ответ 06.11.2013, 12:47:27
от verstalshik