-
Постов
153 -
Зарегистрирован
-
Посещение
-
Победитель дней
17
Активность репутации
-
WaNted получил реакцию от BlackShot в Как разрешить одинаковые имена пользователей?
В целом это можно сделать. Но нужно предусмотреть взаимодействия с именем в движке. К примеру поле \IPS\Helpers\Form\Member получает пользователей по имени, и если выбрать пользователя с именем, которое уже существует, он сохранит первого попавшего пользователя с таким именем в БД, а не нужного нам. Авторизацию отключить по имени, а оставить только по email и пр. По хорошему тут нужно писать плагин.
-
WaNted получил реакцию от Donjuan в Telegram Login Handler 1.0.3 Ошибка 500
Dusty Вы пост читали по ссылке? Там исправленная мной версия этого приложения, в которой нет этой ошибки.
-
WaNted получил реакцию от by_ix в Telegram Login Handler 1.0.3
Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.
Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
@HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
Прикрепляю исправленную версию.
telegramlogin.tar
-
WaNted получил реакцию от iDreaMs в Обновление языка форума без потери своего перевода
Если язык связан с файлом из маркетплейса, то не даёт загружать свой язык поверх. Я в таком случае написал небольшой скрипт который запускаю после обновления языка.
Файл с таким содержимым залить в корень сайта и запускать после обновления языка.
-
-
-
WaNted получил реакцию от iiioroh в Telegram Login Handler 1.0.3
Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.
Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
@HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
Прикрепляю исправленную версию.
telegramlogin.tar
-
WaNted получил реакцию от Zero108 в Telegram Login Handler 1.0.3
Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.
Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
@HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
Прикрепляю исправленную версию.
telegramlogin.tar
-
-
WaNted получил реакцию от Maqlao в Telegram Login Handler 1.0.3
Тестирую у себя - работает всё прекрасно с разных аккаунтов.
У кого возникает подобная проблема с моим фиксом, просьба написать в лс для отладки.
@Anche отказался от предложения протестировать его случай.
-
WaNted получил реакцию от Maqlao в Telegram Login Handler 1.0.3
Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.
Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
@HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
Прикрепляю исправленную версию.
telegramlogin.tar
-
WaNted получил реакцию от aLEX49566 в Telegram Login Handler 1.0.3
Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.
Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
@HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
Прикрепляю исправленную версию.
telegramlogin.tar
-
WaNted получил реакцию от Desti в (D) Blackline Spoiler
Еще момент по вашему хуку шаблона. Нежелательно переопределять целый участок кода, т.к. это делает невозможным дальнейшее изменение шаблона. Предлагаю использовать вместо replace способ add attributes и добавить там plugins.blackline в data-controller.
-
WaNted получил реакцию от Desti в (D) Blackline Spoiler
Небольшое предложение: захукать метод getAllowedCssClasses в классе \IPS\Text\Parser и добавить туда blacklineSpoiler, тогда можно будет избавиться от первого пункта. 🙂
-
WaNted отреагировална пост Desti в (D) Blackline Spoiler
Просмотр файла (D) Blackline Spoiler
Плагин для редактора сообщений, позволяющий прятать текст за черным (настраиваемо) спойлером. При клике на спойлер текст открывается. Работа со спойлером в редакторе не отличается от стандартных операций, выделили текст, нажали кнопку.
Порядок установки (всё в АЦ):
1. В строке поиска набираем Editor -> жмем на [System] Settings -> таб Advanced и добавляем класс с именем blacklineSpoiler в первом окошке (Allowed CSS classes), нажимаем Save внизу.
2. Снова набираем Editor -> жмем [System] Editor Customization -> кнопка Add Button и загружаем файл blackline.zip. После загрузки кнопка (с черной полоской) появится внизу в неиспользуемых, перетащите ее в нужное место. Повторите на всех размерах редактора.
3. В строке поиска набираем Plugin -> жмем [System] Plugins -> жмем ссылку "manual upload" и загружаем файл Blackline spoiler 1.0.0.xml
По умолчанию цвет спойлера и текста черный. Если вам надо поменять цвета, отредактируйте CSS приложения стандартным образом. background-color: цвет спойлера, color: цвет текста, должны быть одинаковые.
В загрузке плагины для CKEditor и IPS. Работают только вместе.
Если что-то непонятно - смотрите картинки.
Актуально для версии 4.6 - 4.7, другие версии по запросу.
Добавил Desti Добавлено 07/26/22 Категория Темы и дизайн Язык русский, английский
-
WaNted получил реакцию от by_ix в Плагины, которые вызывают сбой работы форума при обновлении до v4.7.0
Не требует, а рекомендует для следующих релизов. Минимальная версия PHP 7.4. Используйте её, чтобы не отваливались приложения и плагины, пока авторы не адаптируют под 8 версию.
-
WaNted получил реакцию от cliva в Форматирование текста
Хукайте метод getAllowedCssClasses в классе \IPS\Text\Parser
А ну или в настройках можно так же указать разрешенные css-классы.
Тогда ничего не будет урезать при сохранении.
-
WaNted отреагировална пост Exception в Форматирование текста
ага, без этого ни один инородный класс выводиться не будет. Еще можно и атрибуты пропускать нужные этой функцией:
/** * Customize HTML Purifier HTML Definition * * @param HTMLPurifier_HTMLDefinition $def The definition * @return void */ protected function _htmlPurifierModifyHtmlDefinition( $def )
-
WaNted отреагировална пост Exception в Функция удаления
Не нашел рабочего хайда под новую версию ips, пришлось писать самому. Как вам идея хайда под ранг пользователя? Так как ранг пользователя гибок к настройкам, а пользователь сам решает какими путями его получить, думаю это самый топ вариант.
-
WaNted получил реакцию от VladD в Текст для определённой группы пользователей
{{if \IPS\Member::loggedIn()->inGroup( array( 6, 7 ) )}} Надпись для групп с id 6 и 7 {{else}} Надпись для всех остальных {{endif}}
-
WaNted отреагировална пост Exception в mixins jquery в ips
похоже на костыль) Но как вариант "анти-переопределение метода" работает
this.around('addToCommentFeed', function ( origFn, e, data ) { this.scope.find('[data-role="commentFeed"]').attr('data-role', 'dis_commentFeed'); this.scope.find('#myElement').after('<div data-role="commentFeed"></div>'); origFn( e, data ); $('.ipsComment').unwrap('[data-role="commentFeed"]'); this.scope.find('[data-role="dis_commentFeed"]').attr('data-role', 'commentFeed'); }); #myElement динамичный элемент и по завершению тоже удаляется, получаем чистый DOM
-
WaNted получил реакцию от Exception в mixins jquery в ips
Я думаю стоит попробовать это. Пример:
this.around('addToCommentFeed', function (origFn, e, data) { this.scope.find('[data-role="commentFeed"]').attr('data-role', 'oldCommentFeed'); this.scope.find('#yourElement').attr('data-role', 'commentFeed'); origFn(e, data); this.scope.find('#yourElement').removeAttr('data-role'); this.scope.find('[data-role="oldCommentFeed"]').attr('data-role', 'commentFeed'); }); В теории комментарий будет добавлен в нужный элемент #yourElement.
-
WaNted отреагировална пост Desti в mixins jquery в ips
Я разговаривал на эту тему с разрабами движка, почитайте. Там есть ответы на некоторые вопросы.
invisioncommunity.com/forums/topic/455654-plugin-code-hooks/
Иногда проще сделать свой JS файл, а не модифицировать оригинал. Ограничение по копированию кода относится только к "When overriding a method...".
Но в любом случае команда, проверяющая код перед публикацией укажет вам на нарушения и предложит их исправить, так что всё можно решить.
-
WaNted отреагировална пост Exception в древовидные комментарии\сообщения
Пока вот что удалось реализовать
Плагин при включении в выбранных приложениях существенно изменяет логику комментариев
- Возможность отдельно ответить на комментарий (с возможностью отмены ответа)
- Ответы выводятся под комментарием
- Все ответы выделяются настраиваемым таймлайном
- Подгрузка комментариев\ответов на AJAX
- Ограничение комментариев\ответов на страницу и при AJAX
- Возможность сохранения структуры ответов, если комментарий "родитель" был удален или скрыт
- Возможность детальной настройки плагина
- Все системные и визуальные функции комментирования сохранены. Все новые комментарии\ответы моментально добавляются средствами IPS AJAX в ленту.
осталось сделать пару правок для работы авто поллинга
-
WaNted получил реакцию от Exception в древовидные комментарии\сообщения
$сommentIds = array( 1, 2, 3 ); foreach ( $this->comments( NULL, NULL, 'date', 'asc', NULL, NULL, NULL, array( array( \IPS\Db::i()->in( 'comment_id', $сommentIds, TRUE ) ) ), FALSE, isset( \IPS\Request::i()->showDeleted ) ) as $LoadComment )