Как убрать постоянное дублирование кода, на проверку прав доступа?

Всем привет!

У меня есть два вида проверок:
1) Залогинен ли пользователь для взаимодействия со страницой;
2) Принадлежит ли пользователю объект, над которым он хочет провести операцию удаления, редактирования и т.д;

Первое я решил очень просто. У меня проект построен на CodeIgniter, перед выполнением метода контроллера, у меня выполняется хук – где в нём идёт нужная проверка. Сделал я это через аннотации, у метода контроллера ставится док-комментарий:
/**
 * Удаление объекта
 *
 * @auth_required
 */
public function remove_object($object_id)

Со вторым сложнее, приходится писать вот такой код:
if ($object->getOwner()->getId() != $this->session->userdata('user_id'))
    show_404();

Возможно есть решения как это обойти?
  • Вопрос задан
  • 2950 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы