File: /home/awaldron/_accomods/apidev.accomods.com/index.php
<?php
error_reporting(E_ALL);
// DECLARE GLOBALS
$host = 'apidev.accomods.com';
define('ROOT_DIR', '/alanwaldron.com/home/awaldron/_accomods/'.$host);
require_once 'vendor/Exception.php';
require_once 'vendor/PHPMailer.php';
require_once 'vendor/SMTP.php';
require_once 'vendor/autoload.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
// INCLUDE OUR FUNCTION FILES
require_once "v1/_globals.php";
require_once "v1/_pdf_template.php";
require_once "v1/auth.php";
require_once "v1/order.php";
require_once "v1/school.php";
require_once "v1/thrive.php";
require_once "v1/pdf.php";
// SET CORS POLICY
cors();
// PARSE THE URL AND DATA
$method = $_SERVER['REQUEST_METHOD'];
$request = explode('/', substr($_SERVER['REQUEST_URI'],1));
$function = strtolower($method.'_'.$request[0].'_'.$request[1].'_'.$request[2]);
// remove the first 3 items from the request
array_shift($request);
array_shift($request);
array_shift($request);
// format the post body
$body = [];
$postBody = file_get_contents('php://input');
if ( strlen($postBody) > 0 ) {
$body = json_decode( $postBody, true );
}
// Connect to the database
$db = dbconnect();
// Check the token
$auth_user = check_token( $db, $_SERVER['HTTP_AUTHORIZATION'] );
// Check if user is an Admin
$is_admin = !!qVal( $db, "SELECT admin FROM users WHERE user_id=".$auth_user." AND admin=1");
// Call the endpoint
if (function_exists($function)) {
call_user_func($function, $request, $body, $auth_user, $is_admin, $db);
} else {
response( 404, ['success'=>false,'error'=>'Endpoint not found: '.$function] );
}