Pony.fm/app/controllers/ApiControllerBase.php

23 lines
643 B
PHP
Raw Normal View History

2013-07-25 23:33:04 +02:00
<?php
abstract class ApiControllerBase extends Controller {
protected function execute($command) {
if (!$command->authorize())
return $this->notAuthorized();
$result = $command->execute();
if ($result->didFail()) {
return Response::json(['message' => 'Validation failed', 'errors' => $result->getValidator()->messages()->getMessages()], 400);
}
return Response::json($result->getResponse(), 200);
}
public function notAuthorized() {
return Response::json(['message' => 'You may not do this!'], 403);
}
public function notFound($message) {
return Response::json(['message' => $message], 403);
}
}