63 lines
1.8 KiB
PHP
63 lines
1.8 KiB
PHP
<?php
|
|
/**
|
|
* app/plugins/todo/controllers/tasts.php
|
|
*
|
|
* This is the tasks' API controller.
|
|
*
|
|
* @package TP ToDo
|
|
* @version 3.0
|
|
* @author Joey Kimsey <Joey@thetempusproject.com>
|
|
* @link https://TheTempusProject.com
|
|
* @license https://opensource.org/licenses/MIT [MIT LICENSE]
|
|
*/
|
|
namespace TheTempusProject\Controllers\Api;
|
|
|
|
use TheTempusProject\Models\Tasks as TaskModel;
|
|
use TheTempusProject\Classes\ApiController;
|
|
use TheTempusProject\Houdini\Classes\Views;
|
|
|
|
class Tasks extends ApiController {
|
|
protected static $tasks;
|
|
|
|
public function __construct() {
|
|
parent::__construct();
|
|
self::$tasks = new TaskModel;
|
|
}
|
|
|
|
public function complete( $id = null ) {
|
|
$task = self::$tasks->get( $id );
|
|
if ( ! $task ) {
|
|
$responseType = 'error';
|
|
$response = 'No task found.';
|
|
} else {
|
|
$responseType = 'data';
|
|
$response = self::$tasks->complete( $id );
|
|
}
|
|
Views::view( 'api.response', ['response' => json_encode( [ $responseType => $response ], true )]);
|
|
}
|
|
|
|
public function delete( $id = null ) {
|
|
$task = self::$tasks->get( $id );
|
|
if ( ! $task ) {
|
|
$responseType = 'error';
|
|
$response = 'No task found.';
|
|
} else {
|
|
$responseType = 'data';
|
|
$response = self::$tasks->delete( $id );
|
|
}
|
|
Views::view( 'api.response', ['response' => json_encode( [ $responseType => $response ], true )]);
|
|
}
|
|
|
|
public function home( $id = null ) {
|
|
$task = self::$tasks->get( $id );
|
|
if ( ! $task ) {
|
|
$responseType = 'error';
|
|
$response = 'No task found.';
|
|
} else {
|
|
$responseType = 'data';
|
|
$response = $task;
|
|
}
|
|
Views::view( 'api.response', ['response' => json_encode( [ $responseType => $response ], true )]);
|
|
}
|
|
}
|