<?php

namespace SHServ\Middleware;

use \Fury\Modules\Template\Template;

class Controller extends \Fury\Kernel\Controller{
	public function __construct(){
		parent::__construct();
	}

	public function new_template(){
		return new Template(PROJECT_FOLDER, FCONF['templates_folder']);
	}

	public function utils() {
		return app() -> utils;
	}

	/**
	 * Валидирует, что переданные ID — положительные целые числа.
	 *
	 * @param array $ids Ассоциативный массив [имя_параметра => значение]
	 * @return array|null Ошибка response_error или null если всё ок
	 */
	protected function validate_positive_int_ids(array $ids): ?string {
		foreach ($ids as $name => $value) {
			if ($value != intval($value) || intval($value) < 1) {
				return $this -> utils() -> response_error("invalid_id", [$name]);
			}
		}
		return null;
	}
}