Что же делать, когда требуется нестандартная задача? К примеру, нам необходимо сделать так, чтобы редактировать ресурсы мог только тот человек, который его и создал. На помощь, конечно же приходят плагины. Именно они и помогут решить нам эту нестандартную задачу.
Создаем плагин в админ панели с любым названием и вешаем его (вкладка "Системные события") на событие OnBeforeDocFormSave. Вставляем следующее содержимое:
<?php
switch ($modx->event->name) {
case 'OnBeforeDocFormSave':
if ($mode == 'upd') {
$user_id = $modx->user->id;
$res_user_id = $resource->get('publishedby');
if ($user_id === $res_user_id) {
$resource->save();
}
else {
$modx->event->output("Вам нельзя редактировать ресурсы!");
}
}
break;
}