dev.mylifejournal.ru : [Plugin] Userman https://dev.mylifejournal.ru Laatste forum onderwerpen Cotonti en Sat, 06 Dec 2025 10:58:50 -0000 Kabak UM_EDIT_EDITLINK

UM_EDIT_DETAILSLINK

не используются в базовом шаблоне .

Уровень - это тоже самое что основная группа = Member , Administrator... в соседнем столбце, но в виде звёздочек  ( убрал это из шаблона в последней версии )

 

Добавлено 5 дней спустя:

Если есть идеи что добавить в плагин, то давайте обсуждать.

Например, фильтр пользователей которые давно зарегистрированны на сайте, но не заходили на сайт любое указанное админом время и никогда ничего не постили и не лайкали.

Добавлено 1 день спустя:

Обновил репозиторий.  Добавл фильтр по давности посещения 

 

Добавлено 1 день спустя:

Добавил отображение количества постов, статей, коментов принадлежащих пользователю и дополнительную фильтрацию.

 

Добавлено 3 недели спустя:

Убрал баз с групповым удалением пользователей

 

Добавлено 1 неделя спустя:

Добавил сортировку списка пользователей по любому полю и индикацию по какому именно полю отсортирован список

Всё на GIT

]]>
Thu, 09 Nov 2023 18:27:35 -0000
Argont #47314 Kabak:

Убрал баг с экстраполями во время редактирования профиля пользователя

 

я багов не обнаружил по экстраполям, при том, что плагин вовсе не обновлял.

а сортировка, это вещь нужная

Добавлено 15 часов спустя:

у вас тут две ссылки одинаковые в userman.edit.php

 

    'UM_EDIT_DETAILSLINK' => cot_url('admin','m=other&p=userman&a=edit&id='.$urr['user_id']),
	'UM_EDIT_EDITLINK' => cot_url('admin','m=other&p=userman&a=edit&id='.$urr['user_id']),

может вы хотели так ?:

    'UM_EDIT_DETAILSLINK' => cot_url('users', 'm=details&id='.$urr['user_id']),
	'UM_EDIT_EDITLINK' => cot_url('admin','m=other&p=userman&a=edit&id='.$urr['user_id']),

где, первая ссылка ведет на страницу пользователя...

 

Добавлено 2 дня спустя:

не могу сообразить, в списке пользователей, в таблице точнее, есть колонка "Уровень" которая выводит звездочки пользователя

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

]]>
Ma, 06 Nov 2023 17:03:39 -0000
Kabak Добавил сортировку asc desc по всем полям 

Убрал баг с экстраполями во время редактирования профиля пользователя

Всё на GIT

]]>
Ma, 06 Nov 2023 16:34:41 -0000
Argont #47312 Kabak:

Argont ,

Если вы знаете Cotonti и умеете писать плагины, то прошу вас, высказывайтесь по существу, чтобы вопрос решался, а не просто что-то сказать. Мой вопрос я чётко описал. Если вы знаете на него ответ, то помогайте. Всё это пишеься для всех и бесплатно.  Заодно и уровень владения движком подтянем вместе.

 

Задача была написать удобный менеджер пользователей в админке

я хотел как лучше, не хочу разводить демагогию, котонти знаю не настолько хорошо как вы думаете, здесь важно понимать конкретную задачу (нужна функция и в определенном месте) а затем отслеживать связи, и как их подключать уже пример приводил

сразу после

1
$delete_pfs = cot_module_active('pfs') ? cot_checkbox(false, 'um_edit_userdelpfs', $L['PFS']) : '';

добавить

1
$temp->assign(cot_generate_usertags($urr, 'UM_EDIT_'));

"Задача была написать удобный менеджер " - это размытая задача, даже для человека, а системе нужно четко, в нужном участке/локации выполнение функции, которая сообщаятся с модулем пользователей.

пример конкретной задачи, который бы нам помог имел бы вопрос:

"как при создании пользователя, ему сразу сделать N-авторизаций".

с таким вопросом можно работать.

Добавлено 2 часа спустя:

Вот, я бы сказал дествительно прекрасный пример (готовая конструкция) импорта данных по запросу из параметров запроса, которые затем можно будет использовать уже по всему плагину.

и не прийдется в при создании пользователя заводить

$umuser['user_logcount'] = cot_import('um_userlogcount','P','INT');	

а просто используем

'UM_CREATE_USER_LOGCOUNT' => cot_inputbox('text', 'um_userlogcount', $cfg['plugin']['userman']['defaultlogcount'], array('size' => 32, 'maxlength' => 64)),

а для его редактирования, тоже не прийдется заводить

$euser['user_logcount']     = cot_import('ruserlogcount','P', 'INT');

где уже просто используем

'UM_EDIT_LOGCOUNT' =>  cot_inputbox('text', 'ruserlogcount', $urr['user_logcount'], array('maxlength' => '8')),

и можно указать произвольное количество посещений, отличимое от того, что у нас по дефолту в сетапе

defaultlogcount=04:string::17:

 

Добавлено 1 минута спустя:

сори за сумбор в  тексте

Добавлено 11 минут спустя:

кроме того, как писал выше, а конкретно и в частности при редактировании данных пользователя, используя

	$temp->assign(cot_generate_usertags($urr, 'UM_EDIT_'));

в userman.function.php я вовсе закоментировал

function cot_build_um_country($flag)

и

function cot_build_um_flag($flag)

и т.д.

работает.

Добавлено 23 минуты спустя:

если надумаете редактировать дату последнего визита пользователя(авторизацию)

	$euser['user_lastlog']    = (int)cot_import_date('ruserlastlog');

и

'UM_EDIT_LASTLOG' => cot_selectbox_date($urr['user_lastlog'], 'long', 'ruserlastlog').' '.Cot::$usr['timetext'],

 

]]>
Ma, 06 Nov 2023 11:22:09 -0000
Kabak Argont ,

Если вы знаете Cotonti и умеете писать плагины, то прошу вас, высказывайтесь по существу, чтобы вопрос решался, а не просто что-то сказать. Мой вопрос я чётко описал. Если вы знаете на него ответ, то помогайте. Всё это пишеься для всех и бесплатно.  Заодно и уровень владения движком подтянем вместе.

 

Задача была написать удобный менеджер пользователей в админке

]]>
Ma, 06 Nov 2023 10:57:12 -0000
Argont #47310 Kabak:

Dayver, благодарю.   обновил репозиторий

Как взаимодействовать с модулем Users и плагином UserImages  чтобы не копировать + не модернизировать их функции , но при этом всё работало в админке ?

Я понимаю, что это неправильно, но не могу догадаться для красивого решения. frown

если копировать то смотря что и для чего, а дублировать думаю точно лишнее.

смотря какой вопрос перед вами стоит, а затем уже искать, как законнектить то, что уже есть в модуле с вашим плагином.

]]>
Ma, 06 Nov 2023 10:50:15 -0000
Kabak Dayver, благодарю.   обновил репозиторий

Как взаимодействовать с модулем Users и плагином UserImages  чтобы не копировать + не модернизировать их функции , но при этом всё работало в админке ?

Я может чего-то не понимаю, но вынужден копировать и модернизировать некоторые функции из Users и UserImages только потому, что нужно возвращать движок не в Users и UserImages, а в админку в Userman.

Я понимаю, что это неправильно, но не могу догадаться для красивого решения. frown

]]>
Ma, 06 Nov 2023 09:23:22 -0000
Dayver #47305 Kabak:

что я не понял, так почему при деинсталяции плагина не удаляется таблица из базы.

Какая именно таблица не удаляется ?

Тут правильно писать так

$db->query("DROP TABLE IF EXISTS $db_userman");

Поскольку если будет использоватся не стадартный префикс к таблицам то и удаление закончится ошибкой.

А тут что бы быть точным нужно писать не "баз" а "таблиц"

]]>
Ma, 06 Nov 2023 08:59:19 -0000
Kabak Вчера вечером проверил - не подтверждается.  У меня cot_userman удаляется в 0.9.24 бета   и ночью обновил репозиторий. 

Добавлены Аватарки и Фото, но при удалении фото или аватаруи в плагине пока выбрасывает в другую локацию.  Разбираюсь с этим

]]>
Ma, 06 Nov 2023 06:42:05 -0000
Argont #47305 Kabak:

что я не понял, так почему при деинсталяции плагина не удаляется таблица из базы.

Какая именно таблица не удаляется ?

в инсталляторе только одна )))

выдавало фатал эрор указывая на

$db->query("DROP TABLE IF EXISTS `cot_userman`");

пришлось отказаться пока от сценария в userman.uninstall.php полностью

это все на последней версии движка с репозитория

]]>
Ma, 06 Nov 2023 05:35:45 -0000
Kabak

что я не понял, так почему при деинсталяции плагина не удаляется таблица из базы.

Какая именно таблица не удаляется ?

]]>
Zo, 05 Nov 2023 22:30:19 -0000
Argont #47303 Kabak:

Argont,

без cot_generate_um_usertags()  вас будет выкидывать в модуль users

ни разу не выкидывало ))

а по аватаркам, я их уже подтянул, а то, что их редактировать отсюда на сейчас не получится - не критично, прямо на аватар повесил ссылку сразу на редактирование пользователя с фронтэнда, если вдруг там что не пристойное.

что я не понял, так почему при деинсталяции плагина не удаляется таблица из базы.

а в остальном, было интерересно на выходном поковыряться yes

]]>
Zo, 05 Nov 2023 20:29:32 -0000
Kabak Argont,

Благодраю за найденные ошибки.  Как устраню, напишу здесь

С фото и аватарками всё сложнее.  Вам просто показывают фото и аватар, но чтобы заменить... нужно подумать как это сделать.

без cot_generate_um_usertags()  вас будет выкидывать в модуль users

 

 

]]>
Zo, 05 Nov 2023 12:12:46 -0000
Argont Не пугайте так больше ))) знаю что полей штук пять, захожу в таблицу - пусто.

беда видна тогда, когда префикс отличается от `cot_`

в userman.admin.php

строку

	'UM_EXTRA_FIELDS' => cot_url('admin','m=extrafields&n=cot_users'),

замените на

	'UM_EXTRA_FIELDS' => cot_url('admin','m=extrafields&n='.$db_users),

 

Добавлено 49 минут спустя:

и не разобрался, аватарки пользователей не подтягиваются при редактировании и просмотре. я так понимаю, это где нужно прописать, чтоб теги пользователя генерировались.

Добавлено 1 час спустя:

без этой функции работает спокойно

function cot_generate_um_usertags($user_data, $tag_prefix = '', $emptyname='', $allgroups = false, $cacheitem = true)

 

Добавлено 9 минут спустя:

в userman.admin.php

foreach ($sqlusers as $urr)
{
	$jj++;
	$temp->assign(array(
        'UM_ROW_NUM' => $jj,
		'UM_ROW' => $urr
	));
	$temp->assign(cot_generate_um_usertags($urr, 'UM_ROW_'));

заменил на

foreach ($sqlusers as $urr)
{
	$jj++;
	$temp->assign(array(
        'UM_ROW_NUM' => $jj,
		'UM_ROW' => $urr,
		
	));
	$temp->assign(array(
	'UM_URL_FOR_EDIT' => cot_url('admin', 'm=other&p=userman&a=edit&id='.$urr['user_id']),
	));
	$temp->assign(cot_generate_usertags($urr, 'UM_ROW_'));

в userman.admin.tpl строку

<td class="centerall">{UM_ROW_NAME}&nbsp</td>

заменил на

<td class="centerall"><a href="https://dev.mylifejournal.ru/{UM_URL_FOR_EDIT}">{UM_ROW_NICKNAME}</a></td>

кстати и автарки пошли ))

Добавлено 27 минут спустя:

в userman.edit.php

сразу после

$delete_pfs = cot_module_active('pfs') ? cot_checkbox(false, 'um_edit_userdelpfs', $L['PFS']) : '';

добавить

	$temp->assign(cot_generate_usertags($urr, 'UM_EDIT_'));

 

]]>
Zo, 05 Nov 2023 02:54:04 -0000
Kabak Я не понимаю суть вопроса.  Что-то не работает или работает неправильно ?

]]>
Ma, 30 Okt 2023 10:05:49 -0000
Argont #47272 Kabak:

Плагин работы с пользователями в админке.

Обновил для работы с Cotonti 0.9.24 beta  и добавил экстраполя.

должен работать с Cotonti 0.9.23 и PHP 8.1.2

GIT

пожалуйста, спокойно, я серьезно только поддерживыю новые идеи движка, о которых боюсь и сами разработчики не осведомлены, я не "поддеваю" , но немного не понимаю механику, точнее математику в файлах

userman.install.sql

и

userman.uninstall.php

]]>
Zo, 29 Okt 2023 08:29:28 -0000
Alex300 Отлично. Было бы здорово еще и тут обновить описание

]]>
Zo, 29 Okt 2023 06:24:39 -0000
Kabak Плагин работы с пользователями в админке.

Обновил для работы с Cotonti 0.9.24 beta  и добавил экстраполя.

должен работать с Cotonti 0.9.23 и PHP 8.1.2

GIT


Как пользоваться плагином ?


Как быстро создать нового пользователя ?

1) устанавливаем имя , Email , подпись. ( по умолчанию плагин берёт из своих настроек )

2) Если на вашем сайте есть обязательные поля которые должен заполнить пользователь при регистрации, то они отобразятся в разделе Обязательные экстраполя

Их необходимо заполнить, иначе плагин напишет сообщение об ошибке и поьзователь не создасться. Если обязательные экстраполя отсутствуют, то в разделе

экстраполя будет написано, что поля отсутствуют.

после заполнения всех полей нужно нажать серую кнопку "Создать пользователя" под формой. Если всё хорошо, то вверху будет сообщение об успешном создании.


 

3) Если необходимо отредактировать профиль пользователя нужно нажать на его имя в таблице. 

Откроется такая же форма как в модуле users , но с дополнительными кнопками.

3.1) Кнопка "Обновить" её нужно нажать ,если вы хотите сохранить внесённые вами изменения в профиль пользователя.

3.2) Кнопка "Вернуться"  Вернёт вас на главную страницу плагина Userman со списком всех пользователей на вашем сайте.

3.3) Кнопка "Изменить временный доступ к группам" - это временное назначение пользовтелю доступа к группам на вашем сайте.

Например, вы хотите разрешить кому-нибудь на время читать какой-то раздел на форуме или страницы которые не доступны пользователям с уровнем Members 

Так удобно управлять индивидуальными "подписками" - временному доступом к ресурсам на вашем сайте.

3.4)  Кроме основной группы пользователю вы можете отметить любую группу выше по уровню, для установки доступа ко всем ресурсам доступным этому уровню пользователей.

В графе "Причина установки доступа к группам" можно укзать пометку для вас. Это просто текст с информацией для авмина о причинах открытия доступа пользователю.

Дата начала доступа (по умолчанию устаналивается текущей).  Просто оставляйте текущую дату в этом поле.   ( Отложенный доступ пока не реализован )

Дата окончания доступа (по умолчанию устаналивается текущей). Это дата окончания доступа. Как только пользователь авторизуется на вашем сайте плагин проверит, не пора ли отключить доступ.

И если дата на сервере больше чем указанная в этом поле, временный доступ пользователю к группам отключится.

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

В планах сделать проверку при каждом посещении сайта пользователем. 

 

В таблице есть столбец TGA. Здесь оттображается у кого есть временный доступ к другим группам и активен ли этот доступ.

В блоке Фильтры можно ввести Email и найти пользователя по Email ( необходимо полное совпадение ). Так же можно найти по имени

Пользователя можно удалять по одному. Справа на против каждого есть красная кнопка удаления. Она с запросом подтверждения действия.

Есть возможность группового удаления. Слева чекбоксы.  Можно выбрать одного или сразу ВСЕХ в соотвествии с установленным фильтром.

Если вы нажмёте на серую кнопки "Удалить всех выбранных" , то плагин удалит всех отмеченных чекбоксами без предупреждения.

 

Внизу на каждой странице плагина есть подсказка

]]>
Thu, 19 Okt 2023 19:56:32 -0000