Настройка доступа для гостей и пользователей.
Здравствуйте, у меня проблема предоставления доступа для гостей к API MODX
Использую плагин Login после регистрации выполняется скрипт который создает личную страницу для пользователя.
Скрипт отвечающий за создание страницы:
$modx->runProcessor('resource/create')
Гости при регистрации не могут создать личную страницу. А когда я регистрирую пользователя через фронт-енд все создается правильно.Использую плагин Login после регистрации выполняется скрипт который создает личную страницу для пользователя.
Скрипт отвечающий за создание страницы:
$id = $modx->runProcessor('resource/create', array(
'pagetitle' => $hook->getValue('username'),
'parent' => $parent,
'template' => $template,
'isfolder' => 0,
'published' => 1,
'tv6' => 1,
'hidemenu' => 1
))
При регистрации выводит следующие ошибки[2016-10-05 08:27:56] (ERROR @ xxxx/public_html/core/xpdo/xpdo.class.php : 2824) Recoverable error: Object of class modProcessorResponse could not be converted to string
[2016-10-05 08:27:57] (ERROR @ xxxx/public_html/core/model/modx/modresponse.class.php : 208) Attempted to redirect to an empty URL.
Заранее спасибо. Комментарии: 2
вы результат runProcessor пихаете в переменную id и потом наверно что то с ней делаете, полагая что там id, а там обьект modProcessorResponse.
нужно
нужно
$resource = $response->getObject();
$id = $resource['id'];
Сниппет полностью
$parent = 30;
$template = 5;
if ($id = $modx->runProcessor('resource/create', array(
'pagetitle' => $hook->getValue('username'),
'parent' => $parent,
'template' => $template,
'isfolder' => 0,
'published' => 1,
'tv6' => 1,
'hidemenu' => 1
)))
{
$userId = $hook->getValue('register.user')->get('id');
$user = $modx->getObject('modUserProfile', array('id' => $userId));
$user->set('website',$id);
$user->save();
$modx->runSnippet('tv', array('id' => $id, 'tv' => 6, 'value' => $userId));
$modx->cacheManager->refresh();
$output = $id;
} else {
die();
}
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.