ProfileLinkX
30 5 000
Доброе время суток, MODX-еры.
На неделе разрабатывал для одного сайта функционал упоминаний пользователей (как это собственно уже реализовано на modx.pro немалое количество времени. Это когда пишешь в посте/комментарии юзернейм через значок @). По ходу дела возникали интересные ньюансы и пожелания по гибкости настроек, в итоге уже начали обрисовываться очертания для полноценного компонента.
Собственно, какое-то время размышлял, стОит ли дооформить и делать компонент платным. Но в свете последних событий, популярность MODX сейчас под вопросом, как и то, что его активно будут использовать для создания всяческого рода комьюнити и платформ с межпользовательским взаимодействием. И решил попробовать собрать на краунде небольшую сумму и выложить компонент в бесплатном доступе. Репозиторий исходников так же будет доступен в public на github.
UPD собрано средств:
1799/5000 ₽
199 @iWatchYouFromAfar
200 @Андрей Шевяков
100 @Arahort
1000 @Andrey
300 @brioni
UPD 01.10.2019 месяц прошел, хоть нужная сумма и не была собрана, но выкладываю компонент в открытый доступ в репозитории и отправил на модерацию в магазин дополнений. Если компонент нужен, активно используется и необходимы будут доработки, не стесняйтесь предлагать финансовую помощь взамен на новые фичи или исправление существующих багов. Спасибо всем, кто поучаствовал.
Ну и немного демонстрации
Подсказка юзеров
Выделение совпадений @логинов пользователей в тексте страницы и показ tooltip-ов по наведению (опционально)
А вот собственно доступные настройки
Ну и подробнее про некоторые фичи, дающие гибкость:
Исключения на показ
Возможность с помощью сист.настройки исключить из подсказок либо отдельных служебных юзеров либо целые секретные группы (модераторы, парсеры, агенты ФБР)
Подключение необходимых скриптов на фронте.
С помощью настройки profilelinkx_env установленной в default необходимые JS-библиотеки (tippy.js, textcomplete) подключаются по старинке во время инициализации скрипта, который в свою очередь по классике подключается вызовом сниппета [[!ProfileLinkX]] на нужных страницах/чанках.
Но т.к. в последнее время набирают популярность сборщики для автоматизации/минификации js/css-бандлов (webpack, gulp), то есть возможность переключить эту настройку и ограничиться инициализацией основного скрипта, а нужные libs подключать и собирать самостоятельно.
Подмена в контенте @username на @fullname
По сист.настройке и если такой был задан у юзера в профиле
__
И из используемых зависимостей — jQuery. При должной популярности компонента и потребностях пользователей впоследствии перепишу на чистый современный JS.
P.S. У кого проблемы с сервисом Яндекс.Деньги — пишите в личку, предложу другие варианты задонатить.
На неделе разрабатывал для одного сайта функционал упоминаний пользователей (как это собственно уже реализовано на modx.pro немалое количество времени. Это когда пишешь в посте/комментарии юзернейм через значок @). По ходу дела возникали интересные ньюансы и пожелания по гибкости настроек, в итоге уже начали обрисовываться очертания для полноценного компонента.
UPD собрано средств:
1799/5000 ₽
199 @iWatchYouFromAfar
200 @Андрей Шевяков
100 @Arahort
1000 @Andrey
300 @brioni
UPD 01.10.2019 месяц прошел, хоть нужная сумма и не была собрана, но выкладываю компонент в открытый доступ в репозитории и отправил на модерацию в магазин дополнений. Если компонент нужен, активно используется и необходимы будут доработки, не стесняйтесь предлагать финансовую помощь взамен на новые фичи или исправление существующих багов. Спасибо всем, кто поучаствовал.
Ну и немного демонстрации
Подсказка юзеров
Выделение совпадений @логинов пользователей в тексте страницы и показ tooltip-ов по наведению (опционально)
А вот собственно доступные настройки
Ну и подробнее про некоторые фичи, дающие гибкость:
Исключения на показ
Возможность с помощью сист.настройки исключить из подсказок либо отдельных служебных юзеров либо целые секретные группы (модераторы, парсеры, агенты ФБР)
Подключение необходимых скриптов на фронте.
С помощью настройки profilelinkx_env установленной в default необходимые JS-библиотеки (tippy.js, textcomplete) подключаются по старинке во время инициализации скрипта, который в свою очередь по классике подключается вызовом сниппета [[!ProfileLinkX]] на нужных страницах/чанках.
Но т.к. в последнее время набирают популярность сборщики для автоматизации/минификации js/css-бандлов (webpack, gulp), то есть возможность переключить эту настройку и ограничиться инициализацией основного скрипта, а нужные libs подключать и собирать самостоятельно.
Подмена в контенте @username на @fullname
По сист.настройке и если такой был задан у юзера в профиле
__
И из используемых зависимостей — jQuery. При должной популярности компонента и потребностях пользователей впоследствии перепишу на чистый современный JS.
P.S. У кого проблемы с сервисом Яндекс.Деньги — пишите в личку, предложу другие варианты задонатить.
Поблагодарить автора
Отправить деньги
Комментарии: 19
Т.е. компонент готов, но надо либо взять какую то сумму через сбор либо выложить платно? А какова сумма разработки? А то в статье не указано сколько нужно
Ну я описал во 2ом абзаце, что решил идти не по пути платного компонента потому что потому, а набрать сумму и выложить его бесплатно.
5 000 р, в шапочке указано
5 000 р, в шапочке указано
Я так понял это самодостаточный компонент? Или завязан на Tickets? Т.е. на том компоненте, где есть возможность создавать посты/комментарии?
Да, это самодостаточный компонент.
Подсказка пользователей основана на списке стандартных пользователях из modUser+modUserProfile, повесить её можно на любой тэг textarea
все встреченные в HTML страницы вхождения @username, если такой username существует и не добавлен в исключения, будут заменяться на паттерн ссылки — для этого используется стандартный MODX-овский event OnWebPagePrerender
Каким образом уже организовано создание постов/комментариев — не важно, Tickets или самописное решение.
Если в tooltip-е нужна будет какая-нибудь информация из TicketAuthor (например, рейтинг, количество постов/комментариев), могу доработать компонент, дописать новую настройку, чтобы опционально присоединялась таблица tickets_authors и в чанке были доступны эти поля.
Не будет это работать со сторонними подключаемыми сервисами, типа Disqus, виджет комментария ВК
Подсказка пользователей основана на списке стандартных пользователях из modUser+modUserProfile, повесить её можно на любой тэг textarea
все встреченные в HTML страницы вхождения @username, если такой username существует и не добавлен в исключения, будут заменяться на паттерн ссылки — для этого используется стандартный MODX-овский event OnWebPagePrerender
Каким образом уже организовано создание постов/комментариев — не важно, Tickets или самописное решение.
Если в tooltip-е нужна будет какая-нибудь информация из TicketAuthor (например, рейтинг, количество постов/комментариев), могу доработать компонент, дописать новую настройку, чтобы опционально присоединялась таблица tickets_authors и в чанке были доступны эти поля.
Не будет это работать со сторонними подключаемыми сервисами, типа Disqus, виджет комментария ВК
Круто! Закинул малеха, авось пригодится когда-нибудь.
Закинул символическую сумму дабы просто поддержать развитие Modx компонентов
А можно теги так же сделать? Типа как вконтакте или инсте
по такому же принципу можно и теги, но этот компонент не про это. он заточен под юзеров
Сделаете?
Я конечно не автор дополнения но думаю это является ответом:
этот компонент не про это. он заточен под юзеров
В ближайшие пару месяцев точно нет. Но открою исходники на github, любой сможет либо форкнуть и по образцу сделать под себя нужный функционал, либо прислать PR в репозиторий
Лойс, отправлена монетка. Суперполезный инструмент. Если будут донить мало, подумаю о том, что бы в следующем месяце задонить еще. Считаю надо поддерживать авторов таких великолепных подгонов монеткой и чтобы было желание развивать MODX!
тоже копейку закинул. модх должен жить
Автор, добавь больше способов задонатить. Тоже бы вкинул свою копейку.
Пиши в ЛС, какую сумму хочешь задонатить, пришлю в ответ альтернативный вариант
Я не понял, че никто не донит? Ща поправим!
UPD
Отправлено!
UPD
Отправлено!
Месяц прошел, хоть нужная сумма и не была собрана, но выкладываю компонент в открытый доступ в репозитории и отправил на модерацию в магазин дополнений. Если компонент нужен, активно используется и необходимы будут доработки, не стесняйтесь предлагать финансовую помощь взамен на новые фичи или исправление существующих багов. Спасибо всем, кто поучаствовал.
не дело, поддержу еще копеечкой в следующем месяце, компонент хороший и нуждается в дальнейшем всевозможном развитии!
Задонатил еще малость! Спасибо за компонент!
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.