[UserProfile] - профиль пользователя.
В продолжение вот этой темы modx.pro/crowdfunding/4539-displaying-user-pages/
компонент реализует профиль пользователя.
В админке добавляется таб
![](https://file.modx.pro/files/d/2/4/d24fae06f9e4c998d2c9f0bed1ed3b90s.jpg)
для вывода на фронте набор сниппетов в комплекте.
Описание буду добавлять по мере свободного времени. Пока что кратко изложу.
Настройки
![](https://file.modx.pro/files/2/2/f/22f89931313631f47ceff4f0ef6d162bs.jpg)
— Включить/ выключить работу компонента
— Алиас страницы профиля
— Скрыть пользователя — id пользователей через запятую
— Скрыть группу — id групп через запятую
— Скрыть неактивных пользователей
— Разрешенные секции — список разрешенных к работе секций, по умолчанию info,tickets,comments,favorites.
неуказанные секции будут выдавать 404
Дополнительные поля
Добавлены следующие поля:
lastname — фамилия (редакт.)
firstname — имя (редакт.)
secondname — отчество (редакт.)
description — (редакт.)
introtext -(редакт.)
registration,lastactivity,ip — заполняются автоматически в админке не редактируются.
Дополнительные поля в extended
Также реализована возможность добавления новых полей в extended. Для этого есть отдельная настройка
![](https://file.modx.pro/files/0/8/1/0810439175cec8c125ce44d988394b46s.jpg)
Основная действующая на данный момент настройка это — Табы / поле ввода
указывается в виде json строки
![](https://file.modx.pro/files/e/0/7/e07a467f23f3bfbe62ab537c805b8b6bs.jpg)
Вкратце пока все…
ps. Компонент при установке автоматом подтягивает pdoTools, все сниппеты на его основе.
Если установлен компонент Theme.Bootstrap то при установке будут созданы страницы пользователя с примером вызова сниппетов.
Компонент в modstore.pro
компонент реализует профиль пользователя.
В админке добавляется таб
![](https://file.modx.pro/files/d/2/4/d24fae06f9e4c998d2c9f0bed1ed3b90s.jpg)
для вывода на фронте набор сниппетов в комплекте.
Описание буду добавлять по мере свободного времени. Пока что кратко изложу.
Настройки
![](https://file.modx.pro/files/2/2/f/22f89931313631f47ceff4f0ef6d162bs.jpg)
— Включить/ выключить работу компонента
— Алиас страницы профиля
— Скрыть пользователя — id пользователей через запятую
— Скрыть группу — id групп через запятую
— Скрыть неактивных пользователей
— Разрешенные секции — список разрешенных к работе секций, по умолчанию info,tickets,comments,favorites.
неуказанные секции будут выдавать 404
Дополнительные поля
Добавлены следующие поля:
lastname — фамилия (редакт.)
firstname — имя (редакт.)
secondname — отчество (редакт.)
description — (редакт.)
introtext -(редакт.)
registration,lastactivity,ip — заполняются автоматически в админке не редактируются.
Дополнительные поля в extended
Также реализована возможность добавления новых полей в extended. Для этого есть отдельная настройка
![](https://file.modx.pro/files/0/8/1/0810439175cec8c125ce44d988394b46s.jpg)
Основная действующая на данный момент настройка это — Табы / поле ввода
указывается в виде json строки
{"activity":{"registration":"","lastactivity":"","ip":""},
"personal":{"lastname":"","firstname":"","secondname":""},
"social":{"facebook*":"","odnoklassniki":"","vk":"","mail":"","twitter":""},
"test_tab":{"test_field":"combo-boolean","test_field1":"modx-combo-browser",
"name":"textarea","data":"datefield"}
}
по этой строке формируются табы в админке. Первый параметр таб, затем указываете нужные поля. По умолчанию все поля textfield, можно указать другой тип поля. По этой же настройке выводятся табы на фронте сайта.![](https://file.modx.pro/files/e/0/7/e07a467f23f3bfbe62ab537c805b8b6bs.jpg)
Вкратце пока все…
ps. Компонент при установке автоматом подтягивает pdoTools, все сниппеты на его основе.
Если установлен компонент Theme.Bootstrap то при установке будут созданы страницы пользователя с примером вызова сниппетов.
Компонент в modstore.pro
*Meta, которой принадлежат facebook и instagram признана экстремистской в России
Поблагодарить автора
Отправить деньги
Комментарии: 77
Классно! Спасибо!
А где взять то его?
Действительно, а где сам компонент, хотелось бы его пощупать.
ребят, да как обычно… Отправлено в SimpleDream, пардон в Modstore. Как только — так сразу.
Седня ж еще какой день то? Правильно — понедельник…
Седня ж еще какой день то? Правильно — понедельник…
Выложили: modstore.pro/packages/users/userprofile
спасибо
добавил в пост ссылку
Самое-то главное, Володя — компонент реализует вывод страниц пользователей как на modx.pro!
Компонент работает в связке с office или сам по себе.
сам по себе, там нет регистрации, есть только редактирование профиля и все…
тоесть с office работает без проблем?
не знаю, поставьте посмотрите…
сейчас протестирую отпишусь сразу
Тест со стороны админа
по умолчанию заглушка растянута не пропорционально (рис 1)
![](https://file.modx.pro/files/4/5/e/45e1131d4b98d45d323656a9c8558d52.png)
после того как изображение загрузил то же самое (рис 2)
![](https://file.modx.pro/files/f/c/d/fcd5246fb899426cc165b1df7895cb74.png)
после сохранения профиля и обновлении страницы превью картинки исчезает (рис 3) но сама картинка сама есть
![](https://file.modx.pro/files/2/d/0/2d0853aa072cb1a163a053025a347399.png)
ip адрес всегда по нулям.
Немного не понял вкладки личное тк по умолчанию в modx есть поле полное имя
хотя если нужно разделение конкретно по фамилии имени и отчеству то да.
Если поля не заполнены они подсвечиваются красным но сохранить профиль можно (рис 4)
по умолчанию заглушка растянута не пропорционально (рис 1)
![](https://file.modx.pro/files/4/5/e/45e1131d4b98d45d323656a9c8558d52.png)
после того как изображение загрузил то же самое (рис 2)
![](https://file.modx.pro/files/f/c/d/fcd5246fb899426cc165b1df7895cb74.png)
после сохранения профиля и обновлении страницы превью картинки исчезает (рис 3) но сама картинка сама есть
![](https://file.modx.pro/files/2/d/0/2d0853aa072cb1a163a053025a347399.png)
ip адрес всегда по нулям.
Немного не понял вкладки личное тк по умолчанию в modx есть поле полное имя
хотя если нужно разделение конкретно по фамилии имени и отчеству то да.
Если поля не заполнены они подсвечиваются красным но сохранить профиль можно (рис 4)
![](https://file.modx.pro/files/8/e/c/8ece3b76cab96b1b6fb7e67ea7583219s.jpg)
1. не пропорциональна — принял
2. пропала картинка, скорее всего / не хватает — принял
3. ip — заполняется если пользователь залогинился в контексте != 'mgr' — проверьте
4. по поводу сохранения и подсветки обязательных полей пока так, проверки как таковой нет…
2. пропала картинка, скорее всего / не хватает — принял
3. ip — заполняется если пользователь залогинился в контексте != 'mgr' — проверьте
4. по поводу сохранения и подсветки обязательных полей пока так, проверки как таковой нет…
ip — заполняется если пользователь залогинился в контексте != 'mgr' — проверьтеЧем обоснована такая особенность?
плагином на OnLoadWebDocument. А что есть необходимость это делать в контексте mgr?
В том-то и дело, что нет. Может я что-то не правильно понял?
Сань спроси нормально а? я не совсем понимаю что тебе непонятно или еще что либо…
Скрина нет, могу только догадываться. Поле IP у пользователя для чего? Видеть с какого адреса заходил? Если так, то почему контекст MGR?
3. ip — заполняется если пользователь залогинился в контексте != 'mgr' — проверьтекакой скрин? ты спросил непонятно что… какой скрин я тебе должен показать?
!= 'mgr'
А что есть необходимость это делать в контексте mgr?
Если так, то почему контекст MGR?"!=" — этот символ значит «не равно», поэтому ip проверяется только при авторизации через все другие контексты.
Супер! Спасибо!
пожалуйста! )
Что-то я рано радовался)
Parse error: syntax error, unexpected '[' in /core/components/userprofile/model/userprofile/userprofile.class.php on line 550
Parse error: syntax error, unexpected '[', expecting ')' in /core/components/userprofile/model/userprofile/userprofile.class.php on line 1077
modx 2.3
php версия какая? что за сервер?
явно ниже 5.4, ругается на краткую нотацию array — []. У меня в последнее время самая частая ошибка, так как пишу на 5.6, а поддерживать приходится хостинги на 5.3.
Как вариант, в скрипте установки делать проверку и останавливать установку с сообщением, что версия ниже допустимой. Пока так не делал, но можно. Ну или в старой нотации писать для поддержки старья.
Как вариант, в скрипте установки делать проверку и останавливать установку с сообщением, что версия ниже допустимой. Пока так не делал, но можно. Ну или в старой нотации писать для поддержки старья.
ставлю на локалхост… )
У меня до сих пор для всех проектов в PhpStorm стоит PHP 5.3.
Из 5.4+ не использую ничего.
Из 5.4+ не использую ничего.
для modx хватает, не спорю, но я еще и на laravel пишу и экспериментирую и новые плюшки очень хороши. И это я не говорю о производительности. Когда onliner.by перевели на php 5.6, производительность выросла просто на пустом месте процентов на 20-30% (в среднем).
Вряд ли из-за того, что вместо array() стали писать []? То есть, новый PHP быстрее не из-за того, что там есть более продвинутый синтаксис и прочие плюшки.
У нас хостинг тоже летает на PHP 5.5, но дополнения должны работать и на 5.3, к сожалению.
У нас хостинг тоже летает на PHP 5.5, но дополнения должны работать и на 5.3, к сожалению.
так я ж и не говорю, что только из-за []. Выше проблема как раз в том, что использовали синтаксис 5.4, когда на сервере 5.3 или ниже.
Писать [] вместо array() у меня вошло в привычку после работы в onliner.by, так как там код писали по PSR, но новую версию не только из-за этого я использую. А в остальном да, приходится адаптировать под 5.3, хотя у нашего одного крупного белорусского хостера есть возможность переключить на 5.5 версию. Если учесть, что БД на SSD дисках, то с MODX можно работать.
Писать [] вместо array() у меня вошло в привычку после работы в onliner.by, так как там код писали по PSR, но новую версию не только из-за этого я использую. А в остальном да, приходится адаптировать под 5.3, хотя у нашего одного крупного белорусского хостера есть возможность переключить на 5.5 версию. Если учесть, что БД на SSD дисках, то с MODX можно работать.
5.3.29
А как можно обойти эту ошибку?
А как можно обойти эту ошибку?
Либо обновить версию до 5.4 и выше либо дождаться, когда автор исправит это в самом компоненте.
… либо исправить самому)
Спасибо, но обновится никак. Сайт на хостинге hoster.by
Одна надежда на Володю
Одна надежда на Володю
на hoster.by как раз таки можно.
![](https://file.modx.pro/files/1/2/4/12461e2874e5448e19a2ccb11a875ba8.png)
![](https://file.modx.pro/files/e/1/8/e18f77d408e43e4b53a0b1178b68af5f.png)
![](https://file.modx.pro/files/1/2/4/12461e2874e5448e19a2ccb11a875ba8.png)
![](https://file.modx.pro/files/e/1/8/e18f77d408e43e4b53a0b1178b68af5f.png)
Опа) Я думал данную функцию нельзя самостоятельно проворачивать) Спасибо! А какую версию посоветуете ставить?
я ставил последнюю — 5.5, все ок, по работе и по скорости
я думаю, вам не стоит об этом думать, если вы не знаете каждую конкретную настройку и для чего она. Там уже оптимальные настройки
— поправил аватарки и для локальных прикрутил phpthumb
— поправил проверку группы пользователя
обновление скинул в репо
— поправил проверку группы пользователя
обновление скинул в репо
Обновлен.
За что отвечает [[!+user_id]]?
Просто в независимости от того. залогинен я в web или нет, он постоянно выводит 0
Просто в независимости от того. залогинен я в web или нет, он постоянно выводит 0
Поменял алиас и теперь адрес профиля выглядит так: site.com/id/111
Есть ли возможность убрать слеш после id, чтобы выглядело как site.com/id111
Есть ли возможность убрать слеш после id, чтобы выглядело как site.com/id111
нет
По-идее, в ТЗ шаблонизацию закладывали.
Отличное дополнение. Спасибо. Как ссылку вывести на профиль пользователя?
<a href="[[+main_url]]/[[!+user_id]]/">[[+fullname]]</a>
В профиле на сайте не дату регистрации показывает а не понятно какую дату, откуда она вообще берется эта дата.
Гы) Я тоже поначалу не мог догнать. Насколько я понял, регистрация — это первая авторизация пользователя с момента установки UserProfile
Данное дополнение конфликтует с установленным ajaxmanager-1.2.0-pl.
Переходим в меню — Пользователи -> выбираем пользователя -> кликаем редактировать = получаем страницу пустую страницу с заголовком в админке — Новый пользователь
Скриншот: take.ms/Raif6
Отключаешь ajaxmanager — все ОК.
Переходим в меню — Пользователи -> выбираем пользователя -> кликаем редактировать = получаем страницу пустую страницу с заголовком в админке — Новый пользователь
Скриншот: take.ms/Raif6
Отключаешь ajaxmanager — все ОК.
После того как пользователь внес данные в поля — в админке не возможно просмотреть данные по пользователю — take.ms/zsN1I получаю пустую страницу.
Да, помогает только обновление на F5 после нажатия на редактирование пользователя
В чанке сниппета upUsers не хватает плейсхолдера [[+idx]] для вывода порядкового номера пользователя.
Также было бы неплохо, чтобы из коробки была возможность выводить статус пользователя: онлайн/оффлайн. Допустим, если lastactivity в последние 20 минут неактивно, то в какой-то плейсхолдер вбивается статус пользователя (1/0).
Ещё можно добавить вывод принодлежности пользователя к группе/группам (учитывая что их может быть несколько).
А их может быть несколько?
Конечно, например Users и Administrator
Друзья, так как убрать ошибку?????????? Конечно без манипуляций с версиями php на хостинге!
Parse error: syntax error, unexpected '[', expecting ')' in /srv/sites/exemplesite.ru/core/components/userprofile/model/userprofile/userprofile.class.php on line 1081
Отличный компонент, Спасибо! Подскажите как можно вывести поле из табов, например «test_field» из примера.
Это дополнительные поля в extended и вывести можно просто
[[+extended.test_tab.test_field]]
т.е. extended.таб.поле
Спасибо!
А как вывести стандартные firstname,lastname и т.д.?
Нужен ли вызов up?
Нужен ли вызов up?
Проблема в том, что плагин UserProfile, почему то реагирует на тоже самое действие, что и Office.
То есть, Office вообще не обрабатывал выход пользователя с сайта, это делал другой плагин, которому указанные контексты в Office без разницы.
Почему другой плагин реагирует на действие «auth/logout» — нужно спросить у его автора. Лично я специально использовал названия через косую, чтобы не совпадало ни с «logout» ни c «auth_logout», ни с какими другими параметрами сторонних плагинов.
Правда, судя по коду UserProfile — там очень много взято как раз из Office, поэтому и действия совпадают.
В общем, поставил UserProfile более низкий приоритет, чем Office и всё заработало.
Нужно фиксить.
И, Володя, не увидел ссылки на github + нет внятной документации.
Отличный компонент, сыроват но все же!!!
Как добавить описание к полю?
т.е. я создал доп поле
work
в профиле он отображается как:
up_field_work:
как заменить up_field_work: на Должность
тот же вопрос к закладке?
В словаре нет пространства userprofile
Как добавить описание к полю?
т.е. я создал доп поле
work
в профиле он отображается как:
up_field_work:
как заменить up_field_work: на Должность
тот же вопрос к закладке?
В словаре нет пространства userprofile
Спасибо!
А я думал через Управление словарями, оказалось все банально — в файле
А я думал через Управление словарями, оказалось все банально — в файле
вы все правильно думали, я лишь показал что лексиконы на месте…
в следующих версиях будет через Управление словарями? :)
а как связать с hybridauth чтоб показывал в табах соц.сетей — ссылки на профили из hybridauth
Parse error: syntax error, unexpected '[', expecting ')' in /core/components/userprofile/model/userprofile/userprofile.class.php onВолодя, та же беда…
Вы б нашли время поправить… (:
Потому как не мало проектов стоит на PHP 5.3
править я его не планирую, а вот переписать с учетом переноса роутинга на modx.pro/components/5035-virtualpage-virtual-page/ да…
Возможные хотелки и недочеты предыдущей версии принимаю тут github.com/vgrish/userprofile2/issues (в удобочитаемом виде)
Возможные хотелки и недочеты предыдущей версии принимаю тут github.com/vgrish/userprofile2/issues (в удобочитаемом виде)
Есть возможность разрешить редактировать пользователю только те ресурсы, которые он создал и никакие другие?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.