Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2009-03-30 22:31:33

v01d
Модератор
Зарегистрирован: 2008-10-14
Сообщений: 179
Рейтинг :   
Сайт

Настраиваем меню для пользователей с разным статусом.

Задача: Все пользователи регистрируются со статусом "Журналист".

Решение:
файл: /engine/plugins/auth_basicauth_basic.php
строка 167

".db_squote(EncodePassword($newpassword)).", ".db_squote($values['email']).", '4', '".$add_time."', '')");

строка 172

".db_squote(EncodePassword($newpassword)).", ".db_squote($values['email']).", '4', '".$add_time."', '')");

строка 179

['login']).", ".db_squote(EncodePassword($newpassword)).", ".db_squote($values['email']).", '4', '".$add_time."', '', '".$actcode."')");

строка 188

".db_squote(EncodePassword($values['password'])).", ".db_squote($values['email']).", '4', '".$add_time."', '')");

Четверку (,'4',) меняем на тройку (,'3',)
Теперь каждый зарегистрировавшийся будет иметь статус "Журналист".

Теперь нужно убрать поле Админ-панель в меню для Журналиста.

Файл: /engine/usermenu.php

	$tvars['regx']["'\[login\](.*?)\[/login\]'si"] = '';
	$tvars['regx']["'\[is-logged\](.*?)\[/is-logged\]'si"] = '$1';
	$tvars['regx']["'\[isnt-logged\](.*?)\[/isnt-logged\]'si"] = '';
	$tvars['regx']["'\[login-err\](.*?)\[/login-err\]'si"] = ($SYSTEM_FLAGS['auth_fail'])?'$1':'';

	$tvars['regx']["'\[if-have-perm\](.*?)\[/if-have-perm\]'si"] = ($userROW['status'] > 3)?'':'$1';
}

Перед скобкой "}" добавить строку

$tvars['regx']["'\[if-have-perm1\](.*?)\[/if-have-perm1\]'si"] = ($userROW['status'] > 2)?'':'$1';

Правим темплейт usermenu.tpl

<li>[if-have-perm] <a href="{admin_url}">{l_adminpanel}</a></li>

Нужно чтобы было так

<li>[if-have-perm][if-have-perm1] <a href="{admin_url}">{l_adminpanel}</a>[/if-have-perm1]</li>

За решение говорим спасибо ROZARD'у.

Изменено v01d (2009-03-30 22:39:19)


Продвигай NGCMS,
скачай статью и на свой сайт повесь.
Геленджик - лучший отдых на Черном море

Не в сети

#2 2009-10-09 00:23:20

graf
Участник
Откуда Днепр
Зарегистрирован: 2008-10-13
Сообщений: 394
Рейтинг :   

Re: Настраиваем меню для пользователей с разным статусом.

а как в 0.9.1 RC1 сделать по дефолту, регистрацию всех пользователем со статусом журналист?

в файле auth_basic.php
нашел строка 161

		// Статус пользователя по умолчанию
		$regstatus = intval(extra_get_param('auth_basic','regstatus'));
		if (($regstatus < 1)||($regstatus > 4))
			$regstatus = 4;

пробовал ставить 3 вместо 4, никаких перемен

Не в сети

#3 2009-10-09 00:35:57

ROZARD
Модератор
Откуда Россия, Астрахань
Зарегистрирован: 2008-10-13
Сообщений: 1,523
Рейтинг :   82 
Сайт

Re: Настраиваем меню для пользователей с разным статусом.

graf, Через настройки плагина auth_basic.

extra_get_param('auth_basic','regstatus')

это именно от туда...

Не в сети

#4 2009-10-09 00:45:15

graf
Участник
Откуда Днепр
Зарегистрирован: 2008-10-13
Сообщений: 394
Рейтинг :   

Re: Настраиваем меню для пользователей с разным статусом.

а если используется авторизация через PunBB, тогда надо в плагине PunBB, менять ID группы при регистрации?

Не в сети

#5 2009-10-09 01:10:33

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Настраиваем меню для пользователей с разным статусом.

graf, нет. ID группы это для форума.
Тебе надо в файле engine/plugins/auth_punbb/auth_punbb начиная со строки ~336 искать строки вида:

			$mysql->query("INSERT INTO ".uprefix."_users (name, pass, mail, status, reg, last, punbb_userid) VALUES (".db_squote($values['login']).", ".db_squote(EncodePassword($newpassword)).", ".db_squote($values['email']).", '4', '".$add_time."', '', ".db_squote($punbb_userid['id']).")");

и везде "4" заменить на нужное тебе значение

Не в сети

#6 2009-10-09 10:15:01

ROZARD
Модератор
Откуда Россия, Астрахань
Зарегистрирован: 2008-10-13
Сообщений: 1,523
Рейтинг :   82 
Сайт

Re: Настраиваем меню для пользователей с разным статусом.

graf пишет:

а если используется авторизация через PunBB, тогда надо в плагине PunBB, менять ID группы при регистрации?

А пун пока не стоит использовать так как все моменты в нем ещё не оттестированы...:)

Не в сети

Подвал раздела

Работает на FluxBB