<?php $APP_PATH = dirname(dirname(__FILE__)); $SERVER_PATH = dirname($APP_PATH); $AliceSPA_PATH = $SERVER_PATH . '/AliceSPA'; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use AliceSPA\Helper\Config as configHelper; require $SERVER_PATH . '/vendor/autoload.php'; require $APP_PATH . '/Config/load.php'; $app = new \Slim\App(['settings' => $AliceSPAConfig['slimConfig']]); require $AliceSPA_PATH . '/Exception/load.php'; require $AliceSPA_PATH . '/Service/load.php'; require $AliceSPA_PATH . '/Middleware/load.php'; require $AliceSPA_PATH . '/Helper/load.php'; //API require $AliceSPA_PATH . '/API/load.php'; //--API configHelper::setConfig($AliceSPAConfig); configHelper::setErrors($AliceSPAErrors); if (!empty(configHelper::getCoreConfig()['CORSOrigin'])) { $app->options('/{routes:.+}', function ($request, $response, $args) { return $response; }); $app->add(function ($req, $res, $next) { $response = $next($req, $res); return $response->withHeader('Access-Control-Allow-Origin', configHelper::getCoreConfig()['CORSOrigin'])->withHeader('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization' . ', AliceSPA-UserID, AliceSPA-WebToken, AliceSPA-SessionID')->withHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS'); }); } $app->run();
return $response->withJson($formatter->getFailure($e->getMessage()), $e->getCode()); } catch (Exception $e) { return $response->withStatus(500); } }); // Delete $app->delete('/{resource}/{id}', function (ServerRequestInterface $request, Response $response, $resource, $id = null) { /** * @var ResponseDataFormatter $formatter */ $formatter = $this->get('dataFormatter'); try { $resource = AbstractResource::load($resource, $request, $response, $this); $resource->delete(); return $response->withJson($formatter->getSuccess()); } catch (StatusException $e) { return $response->withJson($formatter->getFailure($e->getMessage()), $e->getCode()); } catch (Exception $e) { return $response->withStatus(500); } }); // Options $app->options('/{resource}', function (ServerRequestInterface $request, Response $response, $resource, $id = null) { try { $resource = AbstractResource::load($resource, $request, $response, $this); return $resource->options(); } catch (StatusException $e) { return $response->withStatus($e->getCode()); } }); $app->run();
}); include "src/GigRoutes.php"; include "src/VenueRoutes.php"; include "src/AccountRoutes.php"; include "src/ContactRoutes.php"; })->add('AuthMiddleware')->add('HeaderMiddleware'); // Define the public group for options*/ $app->group('', function () use($app) { include "src/OptionRoutes.php"; })->add('HeaderMiddleware'); // Define the control group */ $app->group('/control', function () use($app) { /* AUTH */ $app->options('/login', function ($request, $response, $args) { $id = $request->getAttribute('id'); $response = $response->withHeader("Allow", "POST,OPTIONS"); $response = $response->withHeader("Access-Control-Allow-Methods", "POST,OPTIONS"); return $response; }); $app->post('/login', function ($request, $response, $args) { $parsedBody = $request->getParsedBody(); $password = $parsedBody['Password']; $username = $parsedBody['Username']; $account = AccountQuery::create()->findOneByUsername($username); if ($account != null) { $salt = $account->getSalt(); $hashedPassword = $account->getPassword(); } else { session_destroy(); return err_auth_error($response, "Incorrect credentials (username)"); } if (hash('sha512', $password . $salt) == $hashedPassword) {