====== QueryApiController ====== **Layer:** ''Controller'' · **Source:** ''lib/controller/api/QueryApiController.php:39'' (lines 39–203) ---- class QueryApiController extends ApiController ======= Inheritance ======= ^ Relation ^ Type ^ Meaning ^ | extends | [[scriptlog:lib:controller:apicontroller|''ApiController'']] | parent class/interface | ======= Constants (0) ======= //None.// ======= Properties (1) ======= ^ Visibility ^ Type ^ Name ^ Default ^ Line ^ | ''private'' | ''(untyped)'' | ''$postService'' | | 44 | ======= Methods (5) ======= ^ Visibility ^ Method ^ Summary ^ Line ^ | public | ''__construct()'' | Constructor | 49 | | public | ''index()'' | Generic query endpoint. | 68 | | public | ''posts()'' | Query posts only. | 109 | | public | ''pages()'' | Query pages only. | 140 | | private | ''executeQuery()'' | Execute a query based on keyword and type. | 170 | ======== __construct() ======== public function __construct() //lines 49–54 (6)// Constructor //Takes no parameters.// ======== index() ======== public function index($_params = []) //lines 68–99 (32)// Generic query endpoint. QUERY /api/v1/query Accepts a JSON body with query parameters and returns results. This is a safe, idempotent endpoint suitable for complex queries that would be impractical to encode as URI query parameters. ^ Parameter ^ Type ^ Default ^ Description ^ | ''$_params'' | ''(untyped)'' | ''[]'' | //none// | **Returns:** ''(none declared)'' — void ======== posts() ======== public function posts($_params = []) //lines 109–130 (22)// Query posts only. QUERY /api/v1/query/posts ^ Parameter ^ Type ^ Default ^ Description ^ | ''$_params'' | ''(untyped)'' | ''[]'' | //none// | **Returns:** ''(none declared)'' — void ======== pages() ======== public function pages($_params = []) //lines 140–161 (22)// Query pages only. QUERY /api/v1/query/pages ^ Parameter ^ Type ^ Default ^ Description ^ | ''$_params'' | ''(untyped)'' | ''[]'' | //none// | **Returns:** ''(none declared)'' — void ======== executeQuery() ======== private function executeQuery($keyword, $type) //lines 170–202 (33)// Execute a query based on keyword and type. ^ Parameter ^ Type ^ Default ^ Description ^ | ''$keyword'' | ''(untyped)'' | //required// | //none// | | ''$type'' | ''(untyped)'' | //required// | //none// | **Returns:** ''(none declared)'' — array ======= Imports ======= ^ Alias ^ Fully-qualified name ^ | ''ApiController'' | [[scriptlog:lib:controller:apicontroller|''Scriptlog\Controller\ApiController'']] | | ''ApiHateoas'' | [[scriptlog:lib:core:apihateoas|''Scriptlog\Core\ApiHateoas'']] | | ''ApiResponse'' | [[scriptlog:lib:core:apiresponse|''Scriptlog\Core\ApiResponse'']] | | ''FormValidator'' | [[scriptlog:lib:core:formvalidator|''Scriptlog\Core\FormValidator'']] | | ''Sanitize'' | [[scriptlog:lib:core:sanitize|''Scriptlog\Core\Sanitize'']] | | ''PostDao'' | [[scriptlog:lib:dao:postdao|''Scriptlog\Dao\PostDao'']] | | ''PostService'' | [[scriptlog:lib:service:postservice|''Scriptlog\Service\PostService'']] | ---- //This page is generated from source by 'tools/gendoc'. Edits will be overwritten.//