<?php

use Jaga\Models\PAK\PAKQuestionnaireCategory;

class PAKQuestionnaireCategoryController extends BaseController
{
    public function onConstruct()
    {
        parent::onConstruct();
        $this->checkIsAuthenticated();
    }
    
    public function list()
    {
        $this->checkScopes(['pak.manage.questionnaire']);

        $request = $this->request->get();
        $request['title'] = array_key_exists('title', $request) ? $request['title'] : '';

        $conditions = [];
        $bind = [];

        if (!empty($params['keyword'])) {
            array_push($conditions, 'title ILIKE :title:');
            $bind['title'] = '%' . $request['title'] . '%';
        }

        $params = [
            'order' => 'views_order ASC'
        ];

        if(!empty($conditions)) {
            $params = [
                'conditions' => implode(' AND ', $conditions),
                'bind' => $bind
            ];
        }

        $categories = PAKQuestionnaireCategory::find($params);
        $total_record = $categories->count();

        return new PaginatedResponse(
            $categories,
            $total_record,
            $total_record,
            0
        );
    }
}