Новости Joomla

Astroid обновился до версии 3.3.7!

Astroid обновился до версии 3.3.7!

Astroid — это мощный фреймворк для дизайнеров и разработчиков, позволяющий создавать адаптивные, быстрые и надежные веб-сайты и шаблоны на базе Joomla.

Главное в новой версии:

-   Исправлена загрузка файлов макетов

В предыдущем крупном релизе Astroid 3.3.6 были сделаны важные улучшения:

Основные моменты:

  • Улучшенный UI/UX в ключевых областях конфигурации
  • Повышенная стабильность и согласованность в Layout Builder и Form Builder
  • Исправления ошибок на основе отзывов сообщества
  • Улучшенная обработка визуальных эффектов, границ и шрифтов

Улучшения:

  • Обновленный UX Layout Builder
  • Улучшенный эффект предзагрузчика
  • Улучшенный стиль границ
  • Улучшенный UI/UX вкладки «Layout» в Template Options

Исправления ошибок:

  • Решены проблемы с некорректными динамическими значениями
  • Исправлен Color Transform при прокрутке
  • Устранены проблемы с работой Form Builder в Article Layout и Module Layout Builder
  • Исправлена проблема с созданием ненужных временных файлов при обработке шрифтов

Скачать: https://github.com/templaza/astroid-framework/releases/tag/v3.3.7

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

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

Paha_web

  • Захожу иногда
  • 166
  • 1 / 0
  • Еще правок хотите?
Всем привет. Передо мною встала задача, сделать регистрацию без логина, т.е. чтобы вместо логина подставлялся email автоматом.
Нашел я плагин один. но он не работает. Логин не меняется при сохранении.

Код
jimport('joomla.plugin.plugin');

class plgSystemRegEmail extends JPlugin {

    function onAfterInitialise()
    {
        if (JRequest::getVar('task') == 'registration.register') {
            JRequest::setVar('username', JRequest::getVar('email'));
        }
    }
}

этот плагин мне кажется работает только под Joomla 1.5.

Я решил написать свой плагин пишу в нем такой код

Код
 
jimport('joomla.plugin.plugin');
 
class plgUserMyMeta extends JPlugin
{
public function onBeforeStoreUser($context, &$article, $isNew)
{
        if (JRequest::getVar('task') == 'registration.register') {
            JRequest::setVar('username', JRequest::getVar('email'));
        }
}
}

не работает.

В общем помогите кто чем может, как сделать регистрацию без логина. Чтобы потом авторизация была по email.
« Последнее редактирование: 01.07.2014, 17:57:09 от Paha_web »
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #1 : 01.07.2014, 19:46:13 »
Во второй версии вроде как onUserBeforeSave событие называется . Третьим параметром передаются свойства вроде как . Их и меняйте. JRequest класс вобще уже устарел во второй версии он depricated а в третьей возможно и вобще его выпилили..
интернет-блог: http://websiteprog.ru
*

Paha_web

  • Захожу иногда
  • 166
  • 1 / 0
  • Еще правок хотите?
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #2 : 01.07.2014, 20:40:51 »
jimport('joomla.plugin.plugin');
 
class plgUserMyMeta extends JPlugin
{
   public function onUserBeforeSave($user, $isnew)
   {
          
         if (JRequest::getVar('task') == 'registration.register') {
            $user['username'] = $user['email'];
        }

   }
}

не работает.
JRequest - это класс который обрабатывает входящие данные из GET или POST

подкиньте идеи
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #3 : 01.07.2014, 20:43:49 »
Вам же сказали
JRequest класс вобще уже устарел во второй версии он depricated а в третьей возможно и вобще его выпилили..
Код: php-brief
JFactory::getApplication()->input->get()
JFactory::getApplication()->input->set()
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Paha_web

  • Захожу иногда
  • 166
  • 1 / 0
  • Еще правок хотите?
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #4 : 01.07.2014, 21:34:18 »
Пробую:

Код
jimport('joomla.plugin.plugin');
 
class plgUserMyMeta extends JPlugin
{
public function onUserBeforeSave($user, $isnew, $new)
{
       
           $jform = JFactory::getApplication()->input->get('jform', array(), 'array');
           $email = $jform['email'];
           JFactory::getApplication()->input->set($jform['username'],$email);
}
}

не работает
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #5 : 02.07.2014, 00:54:38 »
А зачем вы в jinput устанавливаете свойство? После вызова метода save и плагинов он уже ни на что не влияет, как впрочем и не влияют свойства которые передаются в плагин. Как вариант изменить email уже после сохранения юзера:
Код: php
public function onUserAfterSave($user, $isNew, $result, $Error)
{
    if ($isNew) {
$user['username'] = $user['email'];
$table = JTable::getinstance('user', 'jtable');
$table->bind($user);
$table->store();
    }
}

Возможно еще как то и через объект juser менять свойство, но тогда надо будет придумать способ избежать рекурсии в методе save
« Последнее редактирование: 02.07.2014, 01:08:55 от zomby6888 »
интернет-блог: http://websiteprog.ru
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #6 : 02.07.2014, 11:05:19 »
Был невнимателен:
- в J2.5 JRequest еще работает
- на onUserBeforeSave не получится менять рег.данные: объект $table уже предопределен до этого
- делайте как zomby6888 подсказал.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Paha_web

  • Захожу иногда
  • 166
  • 1 / 0
  • Еще правок хотите?
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #7 : 02.07.2014, 22:26:16 »
А зачем вы в jinput устанавливаете свойство? После вызова метода save и плагинов он уже ни на что не влияет, как впрочем и не влияют свойства которые передаются в плагин. Как вариант изменить email уже после сохранения юзера:
Код: php
public function onUserAfterSave($user, $isNew, $result, $Error)
{
    if ($isNew) {
$user['username'] = $user['email'];
$table = JTable::getinstance('user', 'jtable');
$table->bind($user);
$table->store();
    }
}

Возможно еще как то и через объект juser менять свойство, но тогда надо будет придумать способ избежать рекурсии в методе save

Работает. Спасибо.

А как можно сделать чтобы менять параметр $user['username'] перед сохранением в БД.
Чтобы при регистрации вобще убрать поле логин. Чтобы не вводить вообще логин, а подставлять в него значение емайла автоматом перед сохранинием.
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #8 : 03.07.2014, 09:05:55 »
Ну назовите поле email, label формы поменяйте и все, главное чтобы аттрибут name у input формы был  jform[name] - вроде так. По идее там никаких фильтров на username не накладывается, так что можете спокойно email использовать в качестве логина. А еще кстатии, сейчас подсмотрел в модели при формировании данных запускается событие onContentPrepareData, можно там данные менять наверняка.
интернет-блог: http://websiteprog.ru
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #9 : 03.07.2014, 11:19:35 »
onContentPrepareData, можно там данные менять наверняка.
Нет, не получится.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Не могу разобраться с onBeforeStoreUser
« Ответ #10 : 03.07.2014, 11:32:59 »
Цитировать
Нет, не получится.
Ага, тоже сейчас посмотрел, вот если бы там метод getData сохранял данные которые ему возвращают методы плагинов, а там только проверка на true или false..
интернет-блог: http://websiteprog.ru
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Разобраться с мобильной версией

Автор Pepperoni

Ответов: 1
Просмотров: 1107
Последний ответ 19.12.2020, 09:53:38
от Physicist
Не могу добавить глобальный тег

Автор Hellboy4ik

Ответов: 14
Просмотров: 2934
Последний ответ 03.10.2018, 18:45:01
от NewUsers
Не могу найти, где править описания товаров

Автор Anna

Ответов: 4
Просмотров: 1571
Последний ответ 14.01.2018, 21:25:52
от Anna
Не могу восстановить пароль администратора

Автор vasya_p

Ответов: 32
Просмотров: 5523
Последний ответ 04.12.2017, 20:53:21
от vasya_p
не могу зайти в панель управления

Автор Мурашка

Ответов: 21
Просмотров: 2662
Последний ответ 20.10.2017, 12:35:05
от SeBun