Новости Joomla

IWS.BY VK app widget - Виджет приложения ВКонтакте для Joomla

IWS.BY VK app widget - Виджет приложения ВКонтакте для Joomla

👩‍💻 IWS.BY VK app widget - Виджет приложения ВКонтакте для Joomla.Модуль «Виджет приложения ВКонтакте» для Joomla поможет добавить на сайт виджет с карточкой приложения или игры из социальной сети ВКонтакте.У вас возникла потребность отобразить информацию о ваших приложениях или играх на сайте с кнопкой перехода в социальную сеть, то этот модуль для Вас. Вам не придется хранить информацию о приложении у себя на сайте, все данные получаются через публичное API социальной сети ВКонтакте. Хранение информации на стороне ВКонтакте позволит Вам не нагружать базу данных сайта.В модуле имеется всего несколько опций и полей, которые максимально упрощают публикацию виджета. Первая опция позволяет подключить публичное API социальной сети ВКонтакте, необходимое для работы виджетов. Следующее поле потребует ввести идентификатор приложения или игры, присвоенный в социальной сети ВКонтакте. Следующая опция позволит выбрать вид отображаемой информации в виджете.Модуль имеет 3 варианта отображения:- карточка- участники- кнопкаПоддерживаемые версии Joomla: Joomla 3, Joomla 4, Joomla 5.Страница расширенияJoomla Extensions Directory#joomla #расширения #vk

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 #расширения

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

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Общий привет!
Есть такая необходимость, чтобы при регистрации нового пользователя (joomla 2.5) в таблицу #__users добавить еще один столбец и внести туда запись.
Добавить еще столбец особых проблем не вызывает, выполнить sql-запрос тоже, только вот куда именно надо прописать этот самый sql-запрос? Пожалуйста, подскажите, как мне добавить еще одну запись для нового юзера?
Кстати, необходимые уточнения.
Название нового столбца принципиального значения не имеет, для примера можно обозвать example, а вот значение, вносимое в этот столбец - это
Код
base64_encode($password)
Причем, $password - это не хеш, а чистое значение пароля, которое юзер вбивает в поле регистрации.
Ну здесь понятно, что после проверки
Код
if (jform[password1] == jform[password2]){
$passw = base64_encode($password);
sql = "INSERT INTO `#__users` (`example`) VALUES (`$passw`)"; // здесь выполняется вставка значение в столбец
}
Только где все это дело прописать?
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Решается на самом деле просто, но с этической точки зрения и с точки зрения безопасности не надо бы этого делать.

Или вы хотите сделать клон одноклассников и заняться фишингом паролей? ;)

Да и без клонов - с учётом того что более 70% юзеров используют одни и те же пароли, в том числе и для email, на всех подряд сайтах - как-то неприлично.

*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Дело в том, что на одном домене с joomla2.5 на поддомене установлен другой скрипт (е-мейл рассылок). При регистрации нового пользователя на Joomla, мне необходимо, чтобы этот пользователь смог зайти в свой аккаунт в скрипте рассылок под этими же самыми логином и паролем. Причем, новая запись в таблицу #__users должна вводиться автоматически.
Я думаю, что эта необходимость вполне этически выглядит.
Что касается безопасности. Здесь просто нет выбора. После некоторых раздумий, я пришел к выводу, что по идее можно как-то вытащить пароль вновь созданного юзера из базы, но так ведь там хэш!.  Но мне ведь нужен именно пароль, вводимый в поле при регистрации. Необходимость заставляет использовать base64_encode.
Дальнейший ход этих действий такой - я извлекаю из базы запись, пропускаю ее через
Код
base64_decode
и получаю пароль в чистом виде. А затем уже вношу этот пароль, после некоторых преобразований, в соответствии с требованиями скрипта почтовых рассылок, в базу, в таблицу пользователей этого самого скрипта.
Вот!
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Вообще корректнее бы было реализовать этот ваш скрипт как компонент Joomla и не разводить субдомены с посторонними скриптами.
А что касается пароля при регистрации - он же не по пути от браузера пользователя до сайта хешируется )

Смотрите в сторону плагина группы user - на некоторые события при регистрации он передаётся в плагин в незашифрованном виде.
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Что касается того, чтобы сделать этот скрипт как компонент, то там 20 МБ кода (там кода чем у Joomla более, чем в три раза).
А что касается плагина группы  user
то я нашел там функции onUserAfterDelete, onUserAfterSave, onUserLogin и onUserLogout
а куда именно там вставлять, мозгов не хватает.
В общем я представляю так.
Где-то надо перехватить пост-запрос, переопределить переменную пароля и добавить параметр для вставки в таблицу базы.
Но, е-мое, башка не варит, в какой именно функции там это можно сделать.
Пожалуйста, разжуйте слегка!
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Плагин user/joomla посмотрите и найдёте всё что вам нужно
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Кстати, можно бы было и другим путём пойти - нафига перехватывать пароли и писать их в базу в практически открытом виде, когда можно было бы в том скрипте реализовать такой же алгоритм хеширования и проверки хеша как в Joomla

И тогда вам остаётся просто копировать логины и хеши из базы Joomla в ту базу.
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Гораздо проще проверять наличие ид и по его присутствию делать запрос. Исключив тем самым двойную идентификацию
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Юзера естественно. Если есть значит пользователь зарегистрирован в системе и делать запрос в другую базу или таблицу
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Юзера естественно. Если есть значит пользователь зарегистрирован в системе и делать запрос в другую базу или таблицу

А откуда этот ID взять?
У ТС задача чтобы юзер логинился на субдомене. Вот он идёт на субдомен и пытается там логиниться.
Что дальше?
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Цитировать
Кстати, можно бы было и другим путём пойти - нафига перехватывать пароли и писать их в базу в практически открытом виде, когда можно было бы в том скрипте реализовать такой же алгоритм хеширования и проверки хеша как в Joomla

И тогда вам остаётся просто копировать логины и хеши из базы Joomla в ту базу.
очень мудрое решение...!
...
Но я не смог найти (или не хотел), (хотя я искал) этот механизм в Joomla.
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
plugins\authentication\joomla\joomla.php
libraries\joomla\user\helper.php
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Копируете данный код в файл register.php файл записываете в корень сайта. (Тестовое решение, проблемы с безопасностью)
Теперь, чтобы пользователь был авторизован, достаточно вызвать ваш домен/register.php?userid=837 где 837 ид авторизованного пользователя
Спойлер
[свернуть]
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Теперь, чтобы пользователь был авторизован, достаточно вызвать ваш домен/register.php?userid=837 где 837 ид авторизованного пользователя

1) у ТС на субдомене не Joomla
2) а если бы была - таким образом любой посторонний или бот может подбирать id и авторизовываться

Если уж делать синхронизацию "залогиненного" состояния - то при авторизации и не http запросами, а работая непосредственно с базой.
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
При регистрации нового пользователя на Joomla, мне необходимо, чтобы этот пользователь смог зайти в свой аккаунт в скрипте рассылок под этими же самыми логином и паролем.
Т. есть я как понимаю регистрация на субдомене произведена. Тогда почему к регистрации на субдомене не прикрепить автоматическую регистрацию пользователя Joomla в основном домене
2)Тестовое решение, проблемы с безопасностью
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Изначально же в условии - первичная регистрация на основном домене где Joomla
Параллельно - синхронизация базы пользователей субдомена, где самописное что-то.
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Ух тогда так.
Пишем плагин регистрации. При регистрации:
1. получаем e-mail зарегистрированного
2. Делаем запрос на субдомен с выборкой логина пароля
3. Записываем юзера
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Fedor Vlasenko
Цитировать
Ух тогда так.
Пишем плагин регистрации. При регистрации:
1. получаем e-mail зарегистрированного
2. Делаем запрос на субдомен с выборкой логина пароля
3. Записываем юзера
Большое спасибо, конечно, за помощь, но, действительно, здесь задачка немного другая.
На поддомене установлен совершенно другой скрипт (не joomla), но основоном домене стоит Joomla.
Мои клиенты регистрируются на основном сайте (joomla) и после этого, могут войти в аккаунт того - другого скрипта, под тем же логином и паролем.

Г-н SDKiller все правильно понял.

Только вот дело за малым осталось. Не ложиться спать, пока не допилю плагин user/joomla
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Цитировать
могут войти в аккаунт того - другого скрипта
вот откуда там данные(логин и пароль) в другом скрипте?
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
логин вытаскивается из базы #__users и вставляется в базу того - другого скрипта.
Вот с паролем здесь посложней.
Хеш, сохраненный в базе #__users обратно расшифровать - большая проблема, поэтому мне необходимо, где-то перехватить этот пароль, пока он не превратился в хэш, переопределить переменную и выполнить вставку этого пароля в базу того скрипта (другого).
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
пишите плагин группы user обрабатывайте событие
public function onUserAfterSave($user, $isnew, $success, $msg){}
в $user будет ваш пароль не зашифрованный
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Я никогда в жизни не писал плагинов........
Но... видимо, когда то надо начинать пробовать.
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Простыми словами, на существующем плагине внутри функции onUserAfterSave
есть то, что мне нужно?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
вставьте там строку и зарегистрируйтесь
var_dump($user); //или
die (var_dump($user));
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
я попозже отвечу.... дела возникли
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Fedor Vlasenko !
Спасибо за реальную помощь!
Все-таки я поймал мышку за хвост.
А мышка пряталась в
[password_clear] =>
*

rafaello9

  • Захожу иногда
  • 152
  • 2 / 0
Тут новый арбуз выкатился!
В силу сложившихся обстоятельств я пошел на такое решение, что добавил еще один столбец в таблицу #__users и сохраняю там необходимые данные.
В момент активации / деактивации в дополнительном столбце таблицы #__users удаляются сохраненные там данные.

Как то можно сделать так, чтобы
при активации / деактивации юзера
не удалялись данные из этого столбца?



Все, проблема решилась перестановкой столбца в самый конец!
« Последнее редактирование: 20.06.2013, 23:06:14 от rafaello9 »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
пиши в params, он в json, пример you_data
Код: php-brief
 $user = JFactory::getUser();
        $params = json_decode($user->params, true);
        $params['you_data'] = 'NeW data';
        $db = JFactory::getDBO();
        $query = $db->getQuery(true);
        $query->update('#__users')->set('params=' . $db->Quote(json_encode($params)))->where('id=' . $user->id);
        $db->setQuery($query)->query();
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как добавить много меток сразу?

Автор Sergeyy

Ответов: 1
Просмотров: 1033
Последний ответ 10.12.2018, 16:49:03
от Sergeyy
Выбор пользователя в модальном окне в админке

Автор orexov_m

Ответов: 0
Просмотров: 1148
Последний ответ 11.04.2017, 11:35:43
от orexov_m
Добавить проверку в форму регистрации

Автор apsorry

Ответов: 3
Просмотров: 1398
Последний ответ 08.01.2016, 15:40:02
от apsorry
Добавить класс каждому li

Автор xenos

Ответов: 6
Просмотров: 1720
Последний ответ 15.04.2015, 09:14:47
от xenos
Как понять в каком случае плагин производит запись в бд?

Автор maxis

Ответов: 34
Просмотров: 3038
Последний ответ 27.01.2015, 08:23:51
от maxis