Новости Joomla

Вышли релизы безопасности Joomla 6.0.2 и Joomla 5.4.2

Релиз безопасности Joomla 6.0.2 и 5.4.2

Проект Joomla спешит сообщить о выпуске Joomla 6.0.2 и Joomla 5.4.2. Это релиз безопасности для серии Joomla 6.0 и релиз безопасности для серии Joomla 5.4.

JL Content Fields Filter 4.0.0

JL Content Fields Filter 4.0.0

JL Content Fields Filter - Это бесплатный модуль, который фильтрует материалы в категории Joomla согласно настраиваемым полям.

Данный крупный релиз включает полную совместимость с Joomla 6, критические исправления безопасности, полностью модернизированный интерфейс администратора и обширный рефакторинг кода.

Ключевые Особенности:

- Полная совместимость с Joomla 6: Полная миграция на PSR-4, удаление устаревших методов, исправления для PHP 8.2+ и современные взаимодействия с базой данных.

- Полностью переписанный интерфейс компонента:

- Современный JS стек (Native Fetch, ES6+, модальные окна Bootstrap 5)

- Новое поле FilterfieldsField для предварительного просмотра фильтров в реальном времени.

- Полный CRUD, улучшенные функции SEO и улучшенный UX.

- Критические исправления безопасности:

- 5 SQL-инъекций устранены в нескольких файлах.

- Добавлена защита от XSS, улучшены токены CSRF и проверки разрешений.

- Улучшения модуля и плагина: Улучшенная функциональность слайдера, лучшие сбросы форм, динамическое обнаружение контекста для плагинов и оптимизированная логика фильтрации.

Страница расширения:
https://joomline.ru/rasshirenija/moduli/jlcontentfieldsfilter.html

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

ash4ever

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Ошибка в JS?
« : 13.07.2011, 18:18:53 »
Здравствуйте, участники форума.
При переходе по ссылке в выпадающем меню, впоследствии при на ведение на меню 1го уровня, меню 2го уровня отображается не полностью. В чем может быть причина, подскажите пж? Вместо 6-и пунктов меню 2го уровня - 4 пунтка.

Мб причина в js?






if (typeof(MooTools)!= 'undefined'){
      var subnav = new Array();
      Element.extend(
      {
         hide: function(timeout)
         {
            this.status = 'hide';
            clearTimeout (this.timeout);
            if (timeout)
            {
               this.timeout = setTimeout (this.anim.bind(this), timeout);
            }else{
               this.anim();      
            }
         },
         show: function(timeout)
            this.status = 'show';
            clearTimeout (this.timeout);
            if (timeout)
            {
               this.timeout = setTimeout (this.anim.bind(this), timeout);
            }else{      
               this.anim();
            }
         },
         setActive: function () {
            this.className+=' sfhover';
         },
         setDeactive: function () {
            this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
         },
         anim: function() {
            if ((this.status == 'hide' && this.style.left != '0px') || (this.status == 'show' && this.style.left == '0px' && !this.hidding)) return;
            this.setStyle('overflow', 'hidden');
            if (this.status == 'show') {
               this.hidding = 0;
               this.hideAll();
            } else {
            }
            if (this.status == 'hide')
            {
               this.hidding = 1;
               this.myFx2.stop();
               if (this.parent._id) this.myFx2.start(this.offsetWidth,0);
               else this.myFx2.start(this.offsetHeight,0);
               } else {
               this.setStyle('left', '0px');
               this.myFx2.stop();

               if (this.parent._id) this.myFx2.start(0,this.mw);
               
               else this.myFx2.start(0,this.mh);
            }
         },
         init: function() {
            this.mw = this.clientWidth;
            this.mh = this.clientHeight;
            if (this.parent._id)
            {
               this.myFx2 = new Fx.Style(this, 'width', {duration: 300});
               this.myFx2.set(0);
            }else{
               this.myFx2 = new Fx.Style(this, 'height', {duration: 300});
               this.myFx2.set(0);
            }
            this.setStyle('left', '-999em');
            animComp = function(){
               if (this.status == 'hide')
               {
                  this.setStyle('left', '-999em');
                  this.hidding = 0;
               }
               this.setStyle('overflow', '');
            }            
            this.myFx2.addEvent ('onComplete', animComp.bind(this));
         },
         hideAll: function() {            
            for(var i=0;i<subnav.length; i++) {            
               if (!this.isChild(subnav))               
               {
                  subnav.hide(0);
               }
            }
         },
         isChild: function(_obj) {            
            obj = this;            
            while (obj.parent)            
            {
               if (obj._id == _obj._id)
               {
                  return true;
               }            
               obj = obj.parent;
            }
            return false;
         }
      });
      var DropdownMenu = new Class({                  
         initialize: function(element)
         {
            $A($(element).childNodes).each(function(el)                  
            {
               if(el.nodeName.toLowerCase() == 'li')               {
                  $A($(el).childNodes).each(function(el2)
                  {
                     if(el2.nodeName.toLowerCase() == 'ul')
                     {
                        $(el2)._id = subnav.length+1;                        
                        $(el2).parent = $(element);                        
                        subnav.push ($(el2));                        
                        el2.init();                     
                        el.addEvent('mouseover', function()
                        {
                           el.setActive();
                           el2.show(0);
                           return false;
                        });
                        el.addEvent('mouseout', function()
                        {
                           el.setDeactive();
                           el2.hide(20);
                        });
                        new DropdownMenu(el2);
                        el.hasSub = 1;
                     }
                  });
                  if (!el.hasSub)
                  {
                     el.addEvent('mouseover', function()
                     {
                        el.setActive();
                        return false;
                     });

                     el.addEvent('mouseout', function()
                     {
                        el.setDeactive();
                     });
                  }
               }
            });
            return this;
         }
      });
      window.onDomReady(function() {new DropdownMenu($E('#mega_menu ul.menu'))});
   }else {
      sfHover = function() {
      var sfEls = document.getElementById("mega_menu").getElementsByTagName("li");
      for (var i=0; i<sfEls.length; ++i) {
         sfEls.onmouseover=function() {
            this.className+="sfhover";
         }
         sfEls.onmouseout=function() {
            this.className=this.className.replace(new RegExp("sfhover\\b"), "");
         }
      }
   }
   if (window.attachEvent) window.attachEvent("onload", sfHover);
}
*

Oxlamon

  • Давно я тут
  • 746
  • 95 / 4
Re: Ошибка в JS?
« Ответ #1 : 13.07.2011, 18:37:47 »
Может быть причина и в js...
Сегодня вообще день загадочный. Вот буквально пару часов назад был вопрос по вёрстке. Такая же простыня кода в теме - только из стилей, но без самой разметки.
И неопределённо поставленный вопрос без ссылки на пример.

Сейчас вот предлагают искать баг в абстрактном js... Как-то это несерьёзно, на мой взгляд.
А скоро топики вообще будут состоять из нескольких слов: "У меня не работает. Помогите. Очень надо!"

Сайт, где эта проблема, сейчас засекречен?
*

ash4ever

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Ошибка в JS?
« Ответ #2 : 14.07.2011, 15:20:47 »
Согласен, извиняюсь, что забыл сразу оставить ссылку.
http://www.lottekf.ru
*

Oxlamon

  • Давно я тут
  • 746
  • 95 / 4
Re: Ошибка в JS?
« Ответ #3 : 14.07.2011, 16:46:38 »
В js никаких проблем нет, проблемы в вёрстке. Меню раскрывается, но уходит внутрь контейнера #mega_mainbody
В данном случае может помочь прибитие футера книзу и установка для контейнера .mega_wrap 100% высоты.
*

ash4ever

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Ошибка в JS?
« Ответ #4 : 14.07.2011, 19:08:37 »
В js никаких проблем нет, проблемы в вёрстке. Меню раскрывается, но уходит внутрь контейнера #mega_mainbody
В данном случае может помочь прибитие футера книзу и установка для контейнера .mega_wrap 100% высоты.

 :D СПА - СИ - БО, очень помогли!
*

ash4ever

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Ошибка в JS?
« Ответ #5 : 15.07.2011, 10:12:26 »
Oxlamon, можете пожалуйста еще раз посмотреть по той же ссылке - почему в Firefox не действует min-height?
*

Oxlamon

  • Давно я тут
  • 746
  • 95 / 4
Re: Ошибка в JS?
« Ответ #6 : 15.07.2011, 14:04:00 »
Не-не, не только в ФФ. Если просто так указывать min-height, то футер просто так вниз не опустится, т.к. в соответствии со спецификацией в данном случае min-height=0, хоть и 100%. Вот если бы они были абсолютно позиционированы, тогда да...

Просто посмотрите способы прибития подвала книзу, приемлемые для вашей разметки.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

simpleform2 ошибка ajax error в Google chrome

Автор safronoff343

Ответов: 1
Просмотров: 1306
Последний ответ 05.06.2020, 20:36:42
от safronoff343
Ошибка #1050 при переносе базы данных на хостинг

Автор Ksen

Ответов: 7
Просмотров: 25023
Последний ответ 16.03.2020, 17:47:29
от Petrovich
При попытке войти в админку 404 ошибка компонента

Автор omezik

Ответов: 4
Просмотров: 2934
Последний ответ 31.08.2019, 22:41:46
от Taatshi
Ошибка в компоненте CKForms

Автор Vas80

Ответов: 9
Просмотров: 1777
Последний ответ 22.04.2019, 13:34:48
от sivers
Ошибка Fatal error: Allowed memory size of 73400320 bytes exhausted

Автор Andre109

Ответов: 1
Просмотров: 2215
Последний ответ 03.12.2018, 01:29:56
от voland