Показать сообщение отдельно
Старый 31.07.2008, 11:49   #6
(:)
Senior Member
 
Регистрация: 05.04.2006
Сообщений: 105
По умолчанию

Привет,

В коде через ТСЕмейн создаем записи в таблицах be_groups и be_users.
Если у пользователя Админские права код работает нормально.
В случае неАдмина возникают проблемы с доступом.

Система проверки прав тайпы проверяет следюущее:
1) не позволяет добавлять записи на нулевую страницу никому кроме админа.
2) При добавлениии записей не все поля принимают заданные значения.

И вобщем-то это понятно, поскольку так работает система прав.

Вопрос же в том, как сказать ТСЕМейн что мы даем неАдмину права выполнять админские действия?

Расширение Actions по сути делает именно это.

Заглянув в исходники sys_action класс class.tx_sysaction.php находим подтверждение этому.

PHP код:
...
$tce t3lib_div::makeInstance("t3lib_TCEmain");
$tce->stripslashes_values=0;
$tce->start($data,Array(),$this->BE_USER);

/****************/
$tce->admin=1;
/***************/

$tce->process_datamap();
... 
вот именно этот код
PHP код:
$tce->admin=1
позволяет задать в ТСЕМейн права админа для любой операции даже если пользователь не обладает админскими правами.

надеюсь это поможет,
привет
(:) вне форума   Ответить с цитированием