Перейти к содержанию

WaNted

Пользователи
  • Постов

    153
  • Зарегистрирован

  • Посещение

  • Победитель дней

    17

Активность репутации

  1. Лайк
    WaNted получил реакцию от BlackShot в Как разрешить одинаковые имена пользователей?   
    В целом это можно сделать. Но нужно предусмотреть взаимодействия с именем в движке. К примеру поле \IPS\Helpers\Form\Member получает пользователей по имени, и если выбрать пользователя с именем, которое уже существует, он сохранит первого попавшего пользователя с таким именем в БД, а не нужного нам. Авторизацию отключить по имени, а оставить только по email и пр. По хорошему тут нужно писать плагин.
  2. Лайк
    WaNted получил реакцию от Donjuan в Telegram Login Handler 1.0.3 Ошибка 500   
    Dusty Вы пост читали по ссылке? Там исправленная мной версия этого приложения, в которой нет этой ошибки.
  3. Лайк
    WaNted получил реакцию от by_ix в Telegram Login Handler 1.0.3   
    Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.

    Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
    @HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
    Прикрепляю исправленную версию.
     
    telegramlogin.tar
  4. Лайк
    WaNted получил реакцию от iDreaMs в Обновление языка форума без потери своего перевода   
    Если язык связан с файлом из маркетплейса, то не даёт загружать свой язык поверх. Я в таком случае написал небольшой скрипт который запускаю после обновления языка.
    Файл с таким содержимым залить в корень сайта и запускать после обновления языка.
  5. Лайк
    WaNted получил реакцию от Zero108 в URL   
    До цифры 5 и после неё используется неразрывной пробел вместо обычного.
    Просто переименуйте запись блога, заменив неразрывной на обычный пробел.
  6. Лайк
    WaNted получил реакцию от DasIst0 в URL   
    До цифры 5 и после неё используется неразрывной пробел вместо обычного.
    Просто переименуйте запись блога, заменив неразрывной на обычный пробел.
  7. Лайк
    WaNted получил реакцию от iiioroh в Telegram Login Handler 1.0.3   
    Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.

    Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
    @HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
    Прикрепляю исправленную версию.
     
    telegramlogin.tar
  8. Лайк
    WaNted получил реакцию от Zero108 в Telegram Login Handler 1.0.3   
    Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.

    Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
    @HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
    Прикрепляю исправленную версию.
     
    telegramlogin.tar
  9. Лайк
    WaNted отреагировална пост Maqlao в Telegram Login Handler 1.0.3   
    Ограничусь интеграцией Вконтакте.)
  10. Лайк
    WaNted получил реакцию от Maqlao в Telegram Login Handler 1.0.3   
    Тестирую у себя - работает всё прекрасно с разных аккаунтов.
    У кого возникает подобная проблема с моим фиксом, просьба написать в лс для отладки.
    @Anche отказался от предложения протестировать его случай.
  11. Спасибо
    WaNted получил реакцию от Maqlao в Telegram Login Handler 1.0.3   
    Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.

    Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
    @HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
    Прикрепляю исправленную версию.
     
    telegramlogin.tar
  12. Лайк
    WaNted получил реакцию от aLEX49566 в Telegram Login Handler 1.0.3   
    Дело в том, что там не учитывается возможное отсутствие у пользователей некоторых данных (фамилии, юзернейма, фото профиля). При формировании хэша для проверки авторизации туда попадают пустые переменные (last_name и/или username и/или photo_url), из-за чего в конечном итоге хэши не сходятся. Чтобы это исправить, нужно добавить проверку и исключить пустые переменные для формирования хэша.

    Отсюда получается, что у тех, у кого все это есть - спокойной могут авторизоваться, а те, у кого хоть что-то отсутствует (фамилия, юзернейм или фото) - получают ошибку.
    @HooLIGUN мыслил в правильную сторону, но не до конца решил проблему.
    Прикрепляю исправленную версию.
     
    telegramlogin.tar
  13. Лайк
    WaNted получил реакцию от Desti в (D) Blackline Spoiler   
    Еще момент по вашему хуку шаблона. Нежелательно переопределять целый участок кода, т.к. это делает невозможным дальнейшее изменение шаблона. Предлагаю использовать вместо replace способ add attributes и добавить там plugins.blackline в data-controller.
  14. Лайк
    WaNted получил реакцию от Desti в (D) Blackline Spoiler   
    Небольшое предложение: захукать метод getAllowedCssClasses в классе \IPS\Text\Parser и добавить туда blacklineSpoiler, тогда можно будет избавиться от первого пункта. 🙂
  15. Лайк
    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 Категория Темы и дизайн Язык русский, английский  
  16. Лайк
    WaNted получил реакцию от by_ix в Плагины, которые вызывают сбой работы форума при обновлении до v4.7.0   
    Не требует, а рекомендует для следующих релизов. Минимальная версия PHP 7.4. Используйте её, чтобы не отваливались приложения и плагины, пока авторы не адаптируют под 8 версию.
  17. Лайк
    WaNted получил реакцию от cliva в Форматирование текста   
    Хукайте метод getAllowedCssClasses в классе \IPS\Text\Parser
    А ну или в настройках можно так же указать разрешенные css-классы.
    Тогда ничего не будет урезать при сохранении.
  18. Лайк
    WaNted отреагировална пост Exception в Форматирование текста   
    ага, без этого ни один инородный класс выводиться не будет. Еще можно и атрибуты пропускать нужные этой функцией:
    /** * Customize HTML Purifier HTML Definition * * @param HTMLPurifier_HTMLDefinition $def The definition * @return void */ protected function _htmlPurifierModifyHtmlDefinition( $def )
     
  19. Лайк
    WaNted отреагировална пост Exception в Функция удаления   
    Не нашел рабочего хайда под новую версию ips, пришлось писать самому. Как вам идея хайда под ранг пользователя? Так как ранг пользователя гибок к настройкам, а пользователь сам решает какими путями его получить, думаю это самый топ вариант.

  20. Лайк
    WaNted получил реакцию от VladD в Текст для определённой группы пользователей   
    {{if \IPS\Member::loggedIn()->inGroup( array( 6, 7 ) )}} Надпись для групп с id 6 и 7 {{else}} Надпись для всех остальных {{endif}}  
  21. Лайк
    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
  22. Лайк
    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.
  23. Лайк
    WaNted отреагировална пост Desti в mixins jquery в ips   
    Я разговаривал на эту тему с разрабами движка, почитайте. Там есть ответы на некоторые вопросы. 
    invisioncommunity.com/forums/topic/455654-plugin-code-hooks/
    Иногда проще сделать свой JS файл, а не модифицировать оригинал. Ограничение по копированию кода относится только к "When overriding a method...".
    Но в любом случае команда, проверяющая код перед публикацией укажет вам на нарушения и предложит их исправить, так что всё можно решить. 
  24. Лайк
    WaNted отреагировална пост Exception в древовидные комментарии\сообщения   
    Пока вот что удалось реализовать
    Плагин при включении в выбранных приложениях существенно изменяет логику комментариев
    - Возможность отдельно ответить на комментарий (с возможностью отмены ответа)
    - Ответы выводятся под комментарием
    - Все ответы выделяются настраиваемым таймлайном
    - Подгрузка комментариев\ответов на AJAX
    - Ограничение комментариев\ответов на страницу и при AJAX
    - Возможность сохранения структуры ответов, если комментарий "родитель" был удален или скрыт
    - Возможность детальной настройки плагина
    - Все системные и визуальные функции комментирования сохранены. Все новые комментарии\ответы моментально добавляются средствами IPS AJAX в ленту.

    осталось сделать пару правок для работы авто поллинга
     
     
     
     
     
  25. Спасибо
    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 )  
×
×
  • Создать...