Контроллер содержит бизнес логику. Проверку введенных данных и т.д.
Может разбить контроллер на несколько частей?
/**
* Добавляем производителя
*
* @param string|null $result
*/
public function addProducer($result = null)
{
// проверка на авторизацию
$this->logged();
if (isset($_POST['submit'])) {
$Producer = new Producer(new DataBase());
$res = $Producer->addProducer(1, $_POST['producer']);
$res = ($res === true) ? 'success' : 'error';
header('Location: ' . _HTTP_SERVER . 'admin/add-producer/' . $res);
exit;
}
$data = [];
$data['result'] = $result;
$this->renderAdminPage('add_producer', $data);
}
// ------- AJAX -------
/**
* Удаление производителя
* @param int|null $producerId
*/
public function delProducer($producerId = null)
{
// проверка на авторизацию
$this->logged();
if (isset($_POST['producerId'])) {
$Producer = new Producer(new DataBase());
echo json_encode(['result' => $Producer->delProducer($_POST['producerId'])]);
}
}