Новости Joomla

Вышли релизы Joomla 6.1 и Joomla 5.4.5: новые возможности и стабильность

Релиз Joomla 6.1.0

Проект Joomla! объявил о доступности Joomla 6.1 [Nyota] — новой минорной версии шестой серии, а также о выпуске релиза исправлений ошибок Joomla 5.4.5. Релиз 6.1 приносит ряд долгожданных функций, повышающих удобство управления контентом и защиту от спама.

👩‍💻 Компонент "CS Афиши" для Joomla.

👩‍💻 Компонент "CS Афиши" для Joomla.

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

В состав пакета расширений входят:
- Компонент "CS Афиши"
- Модуль "Календарь событий"
- Модуль "Предстоящие события"
- Библиотека "ImgResize"

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

Модуль "Календарь событий" отображает предстоящие и прошедшие мероприятие на календаре, с отображением мероприятий на конкретную дату во всплывающем окне.

Модуль "Предстоящие события" показывает список предстоящий событий по порядку их наступления.

P.S. Расширение платное, но плата символическая, чисто для отработки приема платежей. Ключи без ограничения по времени, купившие сейчас - смогут обновляться без ограничений.

Разработчик - участник нашего сообщества Дмитрий Денисов (@codersite).

Страница расширения
Демо

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

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Не смог не поделиться, нашел сегодня вот такое в коммерческом расширении, думаю по коду понятно в каком )
Что должно быть в голове у человека, чтобы внутри HTML элемента, вызываемого к показу внутри PHP кода обращаться к базе и чего то там перебирать через foreach.
Мой мир никогда не будет прежним, ушел за пузырем

Код: php
echo '<img class="dgimg" src="'.resize($obj->imgoriginalname, $ad_maxwidth, $ad_maxheight, 0, 0, $ad_showwatermark, $obj->catid)
            .'" '.get_width_height($obj->imgoriginalname, $ad_maxwidth, $ad_maxheight, $obj->catid).' alt="'.$obj->imgtitle.'" /><br />';
            echo ($ad_showrating && $ratingpos == 1)? '<div>'.showVote ($obj->id, $obj->imgvotes, $obj->imgvotesum, true, $obj->catid).'</div>' : '';
              if ($ad_slideshow) {
              $element = substr($order, 2);
              $wheredesc  = ($dir == 'DESC')? '> ':'< ';
              $whereasc = ($dir == 'ASC')? '> ':'< ';
              $db->setQuery('SELECT p.*'
              .' FROM #__datsogallery AS p'
              .' WHERE p.id != '.$obj->id
              .' AND '.$order.$whereasc.$db->Quote($obj->$element)
              .' AND p.catid = '.$obj->catid
              .' AND p.published = 1'
              .' AND p.approved = 1'
              .' AND p.language IN ('.$db->Quote($language)
              .','.$db->Quote('*').')'
              .' GROUP BY '.$order.' '.$dir
              );
              $rows = $db->loadObjectList();
              if (count($rows)) {
                foreach ($rows as $row) {
                  echo "<a class=\"viewdetails\" style=\"visibility:hidden;\" rel=\"shadowbox[viewdetails];player=img;current_id="
                  .JRoute::_("index.php?option=com_datsogallery&view=image&amp;catid=".$row->catid."&amp;id=".$row->id.$itemid.$na)
                  ."\" href=\"".JURI::root()."index.php?option=com_datsogallery&view=sbox&catid=".$row->catid."&id=".$row->id
                  ."&format=raw\" title=\"".jsspecialchars($row->imgtitle)."\"></a>\n";
                }
              }
              $db->setQuery('SELECT p.*'
              .' FROM #__datsogallery AS p'
              .' WHERE p.id != '.$obj->id
              .' AND '.$order.$wheredesc.$db->Quote($obj->$element)
              .' AND p.catid = '.$obj->catid
              .' AND p.published = 1'
              .' AND p.approved = 1'
              .' AND p.language IN ('.$db->Quote($language)
              .','.$db->Quote('*').')'
              .' GROUP BY '.$order.' '.$dir
              );
              $rows = $db->loadObjectList();
              if (count($rows)) {
                foreach ($rows as $row) {
                  echo "<a class=\"viewdetails\" style=\"visibility:hidden;\" rel=\"shadowbox[viewdetails];player=img;current_id="
                  .JRoute::_("index.php?option=com_datsogallery&view=image&amp;catid=".$row->catid."&amp;id=".$row->id.$itemid.$na)
                  ."\" href=\"".JURI::root()."index.php?option=com_datsogallery&view=sbox&catid=".$row->catid."&id=".$row->id
                  ."&format=raw\" title=\"".jsspecialchars($row->imgtitle)."\"></a>\n";
                }
              }
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Код, смешной до невозможности
« Ответ #1 : 22.04.2015, 18:27:51 »
префикс $ad_ в именах переменных о многом говорит...
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Код, смешной до невозможности
« Ответ #2 : 22.04.2015, 18:38:50 »
а что за расширение такое?
интернет-блог: http://websiteprog.ru
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Код, смешной до невозможности
« Ответ #3 : 22.04.2015, 18:48:29 »
а что за расширение такое?
Незабвенная DatsoGallery
Код с версии 1.2.8
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: Код, смешной до невозможности
« Ответ #4 : 22.04.2015, 19:45:40 »
Она же еще с таким ужасом и за деньги продавалась? :)
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Код, смешной до невозможности
« Ответ #5 : 22.04.2015, 19:52:07 »
Она же еще с таким ужасом и за деньги продавалась? :)
не поверишь, она до сих пор продается )
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Код, смешной до невозможности
« Ответ #6 : 22.04.2015, 19:57:14 »
Ну а что, работает главное, потенциальным покупателям неважно как оно написано. Бистрикс вроде вон тоже на 90% из г-кода состоит, вся логика в представлениях реализована, тем не менее продукт продается и в России немалой популярностью пользуется.
интернет-блог: http://websiteprog.ru
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Код, смешной до невозможности
« Ответ #7 : 22.04.2015, 20:00:24 »
Ну а что, работает главное, потенциальным покупателям неважно как оно написано. Бистрикс вроде вон тоже на 90% из г-кода состоит, вся логика в представлениях реализована, тем не менее продукт продается и в России немалой популярностью пользуется.
Так то не поспоришь, оно работает.
Но при любой попытке внести незначительное изменение попадаешь в ад.
Мне вот понадобилось изменить тип ссылки из режима просмотра галереи, после найденного плюнул и отказался от заказа, там еще много чего надо было делать. Ковыряться в таком г.. просто невозможно.

Там же не так дико много кода, можно было бы за столько лет причесать и оформить. Когда сам же это и писал - переделать зная структуру работы на пару недель максимум.
Да и разговор то не про это, просто смешной кусок кода, надо бы сделать тему в флейме где выкладывать подобные "страшилки", я у себя в старых исходниках тоже похожее находил
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Код, смешной до невозможности
« Ответ #8 : 22.04.2015, 20:11:12 »
Да, не помешало бы. Это хотя-бы может подтолкнуть разработчиков научится нормально писать. Я вот и на этом форуме на смешные коды натыкаюсь переодически. Вот например шедевр:
Код: php
$orderCol = 'a.name '.$orderDirn.', a.ordering'
      ||  $orderCol = 'a.date '.$orderDirn.', a.ordering' . 'a.time '.$orderDirn.', a.ordering'
      ||  $orderCol = 'a.state '.$orderDirn.', a.ordering';

Тоже компонент какой-то будет. А потом все кричат что Joomla отстой, когда наставять себе подобных расширений.
интернет-блог: http://websiteprog.ru
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Код, смешной до невозможности
« Ответ #9 : 22.04.2015, 20:14:38 »
Да. последний перл стоит этой коллекции ))
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Код, смешной до невозможности
« Ответ #10 : 22.04.2015, 20:16:44 »
Код: php
$orderCol = 'a.name '.$orderDirn.', a.ordering'
      ||  $orderCol = 'a.date '.$orderDirn.', a.ordering' . 'a.time '.$orderDirn.', a.ordering'
      ||  $orderCol = 'a.state '.$orderDirn.', a.ordering';
Чет я не пойму что это вообще делает, "Х = бла ИЛИ Х = бла2 ИЛИ Х = бла3", понятно что это запрос в базу, но логику не улавливаю

Кстати я понял причину подобного кода у датсы - чтобы ни один сторонний прогер не смог разобраться и покупатели обращались к производителю за доработками, нормальная такая бизнес логика )
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Код, смешной до невозможности
« Ответ #11 : 22.04.2015, 20:20:15 »
оно делает $orderCol = true, а то что имел  ввиду автор бог знает, видимо запрос какой то но даже и в запросе ', a.ordering' . 'a.time ' ошибка будет . Этот шедевр еще обернут был в условие в которое автор никогда не попадает, поэтому он до сих пор убежден что оно работает.
« Последнее редактирование: 22.04.2015, 20:27:43 от zomby6888 »
интернет-блог: http://websiteprog.ru
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Код, смешной до невозможности
« Ответ #12 : 22.04.2015, 20:26:53 »
оно делает $orderCol = true
ну, вернет оно единицу вне зависимости от типа переменной (хотя сомневаюсь что там оно объявлено), смысл сего действа непонятен.
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Код, смешной до невозможности
« Ответ #13 : 13.11.2015, 21:31:18 »
Попросили меня тут  одну форму подкоректировать. Залез в компонент и..
Спойлер
[свернуть]

Это только кусок из файла в несколко тыщ строк, коих там еще навалом. Компоненет вроде как коммерческий..
 
интернет-блог: http://websiteprog.ru
*

KKAAZZOO

  • Живу я здесь
  • 2288
  • 119 / 9
Re: Код, смешной до невозможности
« Ответ #14 : 13.11.2015, 21:43:39 »
Sobi бесплатный компонент, но создал его солидный разработчик Радек Суски, весьма авторитетный человек в Joomla сообществе
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Код, смешной до невозможности
« Ответ #15 : 13.11.2015, 21:44:17 »
Шедевр!  ::)
Не будь паразитом, сделай что-нибудь самостоятельно!
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Код, смешной до невозможности
« Ответ #16 : 13.11.2015, 21:52:20 »
Цитировать
Sobi бесплатный компонент, но создал его солидный разработчик Радек Суски, весьма авторитетный человек в Joomla сообществе

Даже не знаю что на это ответить. Код говорит сам за себя. Мне вот интересно как он угадывал в каком месте и сколько этих табуляторов "\t" поставить
интернет-блог: http://websiteprog.ru
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Код, смешной до невозможности
« Ответ #17 : 13.11.2015, 21:58:29 »
там DatsoGallery такая же по коду, раз столкнулся, пару суток голову ломал с выводами, модулями к ней и т.д.
может поэтому и автор кода столько ошибок сделал.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

wishlight

  • Гуру
  • 5086
  • 321 / 1
  • От 300 руб быстрый хостинг. Сервера.
Re: Код, смешной до невозможности
« Ответ #18 : 13.11.2015, 22:00:11 »
Пасаны, как не стать ***кодером?
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Код, смешной до невозможности
« Ответ #19 : 13.11.2015, 22:04:21 »
Цитировать
Пасаны, как не стать ***кодером?

Ну может это раздел поможет?
интернет-блог: http://websiteprog.ru
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Код, смешной до невозможности
« Ответ #20 : 13.11.2015, 22:08:40 »
Ну может это раздел поможет?
не не поможет, вон целый сайт аля баш уже много лет работает http://govnokod.ru/ а нашего полку прирастает с каждым годом )
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Код, смешной до невозможности
« Ответ #21 : 13.11.2015, 22:08:52 »
Ну когда пишешь на php, язык так и подстрекает опуститься в ***кодинг.
Вот, вчера такое накодил, оцените на гкснутость.
Спойлер
[свернуть]
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Код, смешной до невозможности
« Ответ #22 : 13.11.2015, 22:10:52 »
а куда этот ключ и столько ТРУЕ+ФАЛСЕ?
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Код, смешной до невозможности
« Ответ #23 : 13.11.2015, 22:11:42 »
Воланд - у тебя тоже адовые переменные $add ))
а так то хз что у тебя там должно быть, я может быть делал через кейсы, они красивше читаются. Ну и для таких вот уровневых условий обязательно нужны комментарии, что у тебя за массив и что там за каждый элемент внутри $condition, через месяц сам не разберешься

хотя по своему маленькому опыту могу судить, что если получается вот такой быдлокод - значит надо менять саму логику приложения, бо такое не должно быть. Но - зачастую лень и оставляешь в продакшн, ведь работает а переписывать бюджета нет
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Код, смешной до невозможности
« Ответ #24 : 13.11.2015, 22:18:19 »
Хм, а как там через кейсы, там 6 условий, должны учитываться одновременно, если они есть.
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Код, смешной до невозможности
« Ответ #25 : 13.11.2015, 22:18:30 »
Но - зачастую лень и оставляешь в продакшн, ведь работает а переписывать бюджета нет
вот лень=это точно, я бывает так ленюсь, что паддинги с маргинами путаю в CSS, про код вообще молчу.
и тем более я ***кодер и не умею и новичок, если сравнивать с проффесионалами в этом деле.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Код, смешной до невозможности
« Ответ #26 : 13.11.2015, 22:18:57 »
Воланд - я нашел тебе пример твоего кода http://govnokod.ru/19013
абажаю такие штуки
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Код, смешной до невозможности
« Ответ #27 : 13.11.2015, 22:19:57 »

хотя по своему маленькому опыту могу судить, что если получается вот такой быдлокод - значит надо менять саму логику приложения, бо такое не должно быть. Но - зачастую лень и оставляешь в продакшн, ведь работает а переписывать бюджета нет
Там жуткий K2, еще и с доработками, его не перепишешь ))
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Код, смешной до невозможности
« Ответ #28 : 13.11.2015, 22:29:37 »
Хм, а как там через кейсы, там 6 условий, должны учитываться одновременно, если они есть.

Код: php
switch (true) {
    case (condition):
        // do something
        break;
    case (condition):
        // do something else
        break;   
}
интернет-блог: http://websiteprog.ru
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Код, смешной до невозможности
« Ответ #29 : 13.11.2015, 22:31:45 »
Только брейк мне там не нужен.
А значит, кейсы еще уменьшили бы читаемость.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться