Новости Joomla

SW JProjects v.2.6.1 - компонент каталога расширений для веб-приложений

👩‍💻 SW JProjects v.2.6.1 - компонент каталога расширений для веб-приложений.

Компонент позволяет сделать свой мини-Joomla Extensions Directory - каталог расширений для CMS (не только для Joomla) или файлов. Есть возможность скачивания по лицензионным ключам создания кастомных схем данных для сервера обновлений.

v.2.6.1. Что нового?

  • Правки наследования схем серверов обновлений. Улучшена логика наследования схем серверов обновлений для проектов компонент - категория - проект.
  • Не стабильные релизы в сервере обновлений. Теперь в данные сервера обновлений попадают все версии (alpha, beta и т.д.), а не только stable.
  • Косметические изменения. В шаблоне по умолчанию сделаны замены некоторых CSS-классов, уточнено присвоение атрибутов loading=lazy и fetchpriority.
  • Рефакторинг и правки кода. Текущее обновление кодовой базы.
  • Исправление ошибок.

Больше спасибо за помощь в тестировании участникам нашего сообщества Александру Новикову (@pro_portal) и Александру Судьбинову (@alexrevo).

Событие Pizza, Bugs & Fun - 29-30 января 2026 года.

Событие Pizza, Bugs & Fun  - 29-30  января 2026 года.

Уже несколько лет в мире Joomla проводятся мероприятия "Pizza, Bugs & Fun" (#PBF), где каждый может посвятить несколько часов своего мозгового времени тому, чтобы наша любимая CMS стала ближе к идеалу.

Ссылки на видео и статьи из этого поста рассказывает об организационных вопросах, которые пригодятся для участия в PBF, а так же что и как делать.

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

Каждый помогает тем, что он умеет:

  • кто-то пишет недостающую документацию,
  • кто-то пишет код,
  • кто-то тестирует как исправлены ошибки или сделан новый функционал.

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

https://www.youtube.com/watch?v=a-FuVKXg_Uw 

На момент написания данного поста в репозитории Joomla 810 открытых Issue (как правило это баги) и 236 Pull request (PR, исправление багов и новый функционал). Все PR обязательно тестируются минимум двумя участниками сообщества, дабы в конечный код движка не проскочила ошибка.

Если каждый из участников только нашего сообщества сделает даже одно тестирование, то, боюсь, PR и Issue на всех не хватит 😀 И ничего не останется нашим коллегам из международных Joomla-чатов.

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

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
В принципе все работает и можно было оставить так, как есть, но мне кажется его можно улучшить:

Спойлер
[свернуть]

Все это должно превратиться в это:
Спойлер
[свернуть]
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Создать массива или дроработать
« Ответ #1 : 03.08.2015, 10:19:22 »
В принципе все работает и можно было оставить так, как есть, но мне кажется его можно улучшить:
Спойлер
[свернуть]


Все это должно превратиться в это:
Как PHP код может превратиться в JS код? Может все это должно обрабатываться тем JS кодом который там полностью не выведен?
Как и не понятны подобные строки: "$use_wm1$use_yandex1$use_paypal1$use_moneybookers1$use_robox1$use_liqpay1$use_smscoin1$use_cbank1"
Не выведет ли это кучу раз одно и тоже?
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #2 : 03.08.2015, 11:14:41 »
Istaan
Простите за предыдущую беседу.
Спасибо, очень хорошо сократился код.
Код
"$use_wm1$use_yandex1$use_paypal1$use_moneybookers1$use_robox1$use_liqpay1$use_smscoin1$use_cbank1"
Подобный список мне тоже не очень нравиться.
Нет, не выводит:
Спойлер
[свернуть]
Проверил ваш вариант, не совсем верно он работает:
Спойлер
[свернуть]
Спойлер
[свернуть]
:o
« Последнее редактирование: 03.08.2015, 11:31:04 от leo78 »
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Создать массива или дроработать
« Ответ #3 : 03.08.2015, 11:32:27 »
Если я правильно понимаю то что то типа этого
Спойлер
[свернуть]
Но мне тестировать неначем, может не работать! Просто приблизительно как можно сократить написал!

Мой вариант может неработать по нескольки причинам:
1. Код пишется в уме, и не отлаживается, нет целостности понимания что делает код
2. в строке $use_cbank1 = $params->get( 'use_rupay' ) == 0 ? '' : ' #cbank,'; ошибка вместо use_rupay должно быть use_cbank
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Создать массива или дроработать
« Ответ #4 : 03.08.2015, 11:37:10 »
Хотя правильно ли я понимаю, вам нужно если человек выбрал систему оплаты webmoney то все остальные системы скрываются? Если выбрал PayPal то все остальные системы скрываются!
Если так вам вообще не нужно ни строчки PHP кода и три строчки JS кода!
Если так! То удаляете весь PHP код
И делаете так:
для блоков которые отображают ваши платежные системы даете класс class="payments"
а дальше
$('.payments).hide();
$('#нужная_система').show();
PHP код нужен будет только для того что бы выводить или не выводить иконку включенной системы! Все!
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #5 : 03.08.2015, 11:45:17 »
Istaan
В том и дело 9 платежных систем, их можно выбрать в админ панели, включить все, или на собственный выбор, конечно не продумано если пользователь отключит их все но даётся выбор.
демонстрация
Массив не проще сделать?
Код
$selectors = array();
array_push($selectors, "#1");
array_push($selectors, "#2");
array_push($selectors, "#3");
echo implode(", ", $selectors); // "#1, #2, #3"
Только как потом выдергивать ненужный ID?
« Последнее редактирование: 03.08.2015, 12:01:21 от leo78 »
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #6 : 03.08.2015, 13:35:58 »
Такой  JS код был:
Спойлер
[свернуть]
Думал упростить его  >:(
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Создать массива или дроработать
« Ответ #7 : 03.08.2015, 14:01:00 »
https://jsfiddle.net/Frisian/enwmps9o/35/
Как я и говорил все что вы делаете в PHP вам не нужно!
Я поправил ваш код там так как нужно делать!
Основа:
1. Ссылка: <a id="ammh1" style="margin:3px;" class="south" href="#wm" title="WebMoney"></a>
её заключить в
Код: php
<?php if($params->get('show_wm')): ?>
<a id="ammh1" style="margin:3px;" class="south" href="#wm" title="WebMoney"></a>
<?php endif; ?>

2. Блок с платежной системой должен быть в контейнере:
Код: php
<?php if($params->get('show_wm')): ?>
<div id="wm" class="amoney">
... тут платежная система
</div>
<?php endif; ?>
Класс у всех этих блоков должен быть amoney! ID должен быть тот что в href="#wm" (без решетки конено)

Дальше в JS код всего:
Код: javascript
jQuery(function($) {
    $(document).on('click', '.south', function(){
        $('.amoney').hide(); //скрываем все блоки с классом amoney
        $($(this).attr('href')).slideDown(500); //отображаем блок с id которой пришол у нас из аттрибута href текущей ссылки
        return false;
    });
});

Все! Вот ту порнографию что вы писали удалить, она не нужна! Добавлять можно неограниченное количество блоков...
« Последнее редактирование: 03.08.2015, 14:10:04 от Istaan »
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #8 : 03.08.2015, 14:13:32 »
Istaan
Так просто, класс, спасибо!
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #9 : 03.08.2015, 15:06:37 »
Istaan
Просто уточнить хотел, так все нормально.
Оставили случайно:
Код
.removeAttr('title');
Код
jQuery(function($) {
    $('#amoney').on('click', '.south', function(){
        $('#amoney .south.active').removeClass('active').removeAttr('title');
        $(this).addClass('active');
- оно Неправильно работает, удаляет но не возвращает.
у меня так работает
Код
jQuery(function($) {
    $('#amoney').on('click', '.south', function(){
     $('#amoney .south').removeClass('active');
     $(this).addClass('active');
    });
});
« Последнее редактирование: 03.08.2015, 15:10:30 от leo78 »
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Создать массива или дроработать
« Ответ #10 : 03.08.2015, 15:24:16 »
ну я не знал что тот код делает по этому дописал ниже свой на https://jsfiddle.net/Frisian/enwmps9o/35/
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #11 : 03.08.2015, 16:00:24 »
Еще вопрос, что делать с этим:
Код
<a class="south" href="javascript:void(0);" style="margin:3px;text-decoration: none;" onclick="hide_all()" title="Скрыть все">Благодарность Автору</a>
Пишет ошибки:
Цитировать
Uncaught ReferenceError: hide_all is not definedonclick @ universal-module.html:314
jquery.min.js:2 Uncaught Error: Syntax error, unrecognized expression: javascript:void(0);

изменил на
Код
<a rel="nofollow" class="south hasTooltip active" style="margin:3px;text-decoration: none;" title="Скрыть все">Благодарность Автору</a>

https://jsfiddle.net/enwmps9o/36/

И править не чего особо не пришлось только изменил ссылки и все

А если поставить .toggle(500);
https://jsfiddle.net/enwmps9o/38/
« Последнее редактирование: 03.08.2015, 16:37:57 от leo78 »
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Создать массива или дроработать
« Ответ #12 : 03.08.2015, 17:17:47 »
Я в предыдущей ваше теме отписывался, что могу сделать вообще без скриптов, как время будет. Задача у вас простая. Размеры кнопок фиксированные, высота выпадающего блока тоже.
Держите.
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #13 : 03.08.2015, 17:24:50 »
Shustry
А убрать блок как?
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Создать массива или дроработать
« Ответ #14 : 03.08.2015, 17:25:37 »
Какой блок убрать? У вас в примере ничего не убирается.
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #15 : 03.08.2015, 18:02:11 »
Ладно пока буду ломать это
Код
<?php
$use_wm1 = $params->get( 'use_wm' ) == 0 ? '' : ' #wm,';
$use_rupay1 = $params->get( 'use_rupay' ) == 0 ? '' : '  #rupay,';
$use_yandex1 = $params->get( 'use_yandex' ) == 0 ? '' : ' #yandex,';
$use_paypal1 = $params->get( 'use_paypal' ) == 0 ? '' : ' #paypal,';
$use_moneybookers1 = $params->get( 'use_moneybookers' ) == 0 ? '' : '#moneybookers,';
$use_robox1 = $params->get( 'use_robox' ) == 0 ? '' : ' #robox,';
$use_liqpay1 = $params->get( 'use_liqpay' ) == 0 ? '' : ' #liqpay,';
$use_smscoin1 = $params->get( 'use_smscoin' ) == 0 ? '' : ' #smscoin,';
$use_cbank1 = $params->get( 'use_cbank' ) == 0 ? '' : ' #cbank,';

$hideall = trim( rtrim( "$use_wm1$use_rupay1$use_yandex1$use_paypal1$use_moneybookers1$use_robox1$use_liqpay1$use_smscoin1$use_cbank1", "," ), ' ' );
$payments = array(
   'wm' => trim( rtrim( "$use_rupay1$use_yandex1$use_paypal1$use_moneybookers1$use_robox1$use_liqpay1$use_smscoin1$use_cbank1", "," ), ' ' ),
   'rupay' => trim( rtrim( "$use_wm1$use_yandex1$use_paypal1$use_moneybookers1$use_robox1$use_liqpay1$use_smscoin1$use_cbank1", "," ), ' ' ),
   'yandex' => trim( rtrim( "$use_wm1$use_rupay1$use_paypal1$use_moneybookers1$use_robox1$use_liqpay1$use_smscoin1$use_cbank1", "," ), ' ' ),
   'paypal' => trim( rtrim( "$use_wm1$use_rupay1$use_yandex1$use_moneybookers1$use_robox1$use_liqpay1$use_smscoin1$use_cbank1", "," ), ' ' ),
   'moneybookers' => trim( rtrim( "$use_wm1$use_rupay1$use_yandex1$use_paypal1$use_robox1$use_liqpay1$use_smscoin1$use_cbank1", "," ), ' ' ),
   'robox' => trim( rtrim( "$use_wm1$use_rupay1$use_yandex1$use_paypal1$use_moneybookers1$use_liqpay1$use_smscoin1$use_cbank1", "," ), ' ' ),
   'liqpay' => trim( rtrim( "$use_wm1$use_rupay1$use_yandex1$use_paypal1$use_moneybookers1$use_robox1$use_smscoin1$use_cbank1", "," ), ' ' ),
   'smscoin' => trim( rtrim( "$use_wm1$use_rupay1$use_yandex1$use_paypal1$use_moneybookers1$use_robox1$use_liqpay1$use_cbank1", "," ), ' ' ),
   'cbank' => trim( rtrim( "$use_wm1$use_rupay1$use_yandex1$use_paypal1$use_moneybookers1$use_robox1$use_liqpay1$use_smscoin1", "," ), ' ' )
);
?>
<script>
   (function ($) {
      <?php foreach($payments as $payment => $value): ?>
         <?php if($params->get('use_' . $payment)): ?>
            this.show_<?php echo $payment; ?> = function () {
               $('<?php echo $value; ?>').hide();
               $('#<?php echo $payment; ?>').<?php echo $jfadtogquery;?>;
               return false;
            };
         <?php endif; ?>
      <?php endforeach; ?>
      this.hide_all = function () {
         $('<?php echo $hideall; ?>').hide();
         return false;
      }
   })(jQuery);
   <?php if ($jammfadtogquery1 == 1): ?>
   jQuery(function ($) {
      $('#amoney').on('click', '.south', function () {
         $('#amoney .south').removeClass('active');
         $(this).addClass('active');
      });
   });
   <?php endif; ?>
</script>

правда не работает
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #16 : 03.08.2015, 18:34:13 »
Istaan
брать из массива нашел как
Код
<?php

$foo = array('bar' => 'baz');
echo "Hello {$foo['bar']}!"; // Hello baz!

?>
Спойлер
[свернуть]

Код
echo $payments['wm'];

 *DRINK*
« Последнее редактирование: 03.08.2015, 18:49:23 от leo78 »
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Создать массива или дроработать
« Ответ #17 : 03.08.2015, 20:58:58 »
Не понял, зачем вам то если я показал рабочий пример без этой ненужной простыни на PHP!
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #18 : 03.08.2015, 21:25:58 »
Ваш пример:
https://jsfiddle.net/Frisian/enwmps9o/35/
мой:
http://jsfiddle.net/enwmps9o/40/
Разница в том, что нажимая повторно на кнопку нечего не происходит, в вашем примере оно открывается сколько не нажимай. 
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Создать массива или дроработать
« Ответ #20 : 03.08.2015, 21:56:57 »
Так?

https://jsfiddle.net/Shustry/f5o6hcw4/1/

Код: javascript
jQuery(function($) {
    $('.south').each(function(idx, el){
        $(this).on('click', function(){
            if ($(this).hasClass('active')) {
               return false;
            } else {
                $(this).addClass('active').siblings().removeClass('active');
                $('.amoney').eq(idx-1).slideDown(500).siblings('.amoney').hide();
            }
        });
    });
});
*

leo78

  • Завсегдатай
  • 1018
  • 62 / 8
  • I left from paradise!?...
Re: Создать массива или дроработать
« Ответ #21 : 03.08.2015, 22:28:54 »
Istaan, Shustry
надо подумать, слишком много информации  >:(
« Последнее редактирование: 04.08.2015, 01:53:30 от leo78 »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как создать дополнительный параметр(по типу published) для элемента списка?

Автор borro

Ответов: 4
Просмотров: 1679
Последний ответ 08.02.2018, 17:03:11
от borro
Как создать модуль PayMaster ?

Автор tsinchugova

Ответов: 0
Просмотров: 1562
Последний ответ 27.11.2013, 07:18:44
от tsinchugova
Как создать поле типа "sql" для Joomla 2.5

Автор tasknet

Ответов: 9
Просмотров: 3539
Последний ответ 15.05.2012, 17:36:45
от SDKiller
Как создать zip архив средствами Joomla API

Автор tasknet

Ответов: 14
Просмотров: 5195
Последний ответ 06.01.2012, 12:54:55
от Фей
Как создать установочный .xml файл для компонента

Автор swordholder

Ответов: 4
Просмотров: 3003
Последний ответ 17.03.2011, 03:09:31
от Ortnox