cours-ending/src/CoursEndingBundle/Controller/RestController.php

81 lines
1.9 KiB
PHP
Raw Normal View History

2016-03-18 23:40:48 +01:00
<?php
namespace CoursEndingBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use FOS\RestBundle\Controller\FOSRestController;
use FOS\RestBundle\Controller\Annotations as Rest;
use Nelmio\ApiDocBundle\Annotation\ApiDoc;
use Symfony\Component\HttpFoundation\Request;
2016-03-19 15:18:15 +01:00
use CoursEndingBundle\Model\FormQuery;
use CoursEndingBundle\Model\QuestionQuery;
use CoursEndingBundle\DataRestContainer;
2016-03-21 09:32:19 +01:00
use CoursEndingBundle\Form\Type\FormsType;
use FOS\RestBundle\View\View;
2016-03-18 23:40:48 +01:00
2016-03-19 17:33:18 +01:00
/**
* @author Simon Vieille <simon@deblan.fr>
*/
2016-03-18 23:40:48 +01:00
class RestController extends FOSRestController
{
/**
* @Rest\View
* @ApiDoc(
2016-03-19 15:18:15 +01:00
* description="",
2016-03-18 23:40:48 +01:00
* )
*/
2016-03-19 15:18:15 +01:00
public function getFormsAction(Request $request)
2016-03-18 23:40:48 +01:00
{
2016-03-19 15:18:15 +01:00
$data = FormQuery::create()->find()->getData();
2016-03-18 23:40:48 +01:00
2016-03-19 15:18:15 +01:00
$container = new DataRestContainer($data);
2016-03-18 23:40:48 +01:00
2016-03-19 15:18:15 +01:00
return $container;
2016-03-18 23:40:48 +01:00
}
2016-03-19 17:33:18 +01:00
2016-03-18 23:40:48 +01:00
/**
* @Rest\View
* @ApiDoc(
2016-03-19 15:18:15 +01:00
* description="",
2016-03-18 23:40:48 +01:00
* )
*/
2016-03-19 15:18:15 +01:00
public function getQuestionsAction(Request $request)
2016-03-18 23:40:48 +01:00
{
2016-03-19 15:18:15 +01:00
$data = QuestionQuery::create()->find()->getData();
2016-03-19 17:33:18 +01:00
$container = new DataRestContainer($data);
return $container;
2016-03-18 23:40:48 +01:00
}
2016-03-19 15:18:15 +01:00
/**
* @Rest\View
* @ApiDoc(
* description="Je suis une description",
2016-03-21 09:32:19 +01:00
* input="CoursEndingBundle\Form\Type\FormsType",
2016-03-19 15:18:15 +01:00
* )
*/
2016-03-21 09:32:19 +01:00
public function postFormsAction(Request $request)
{
$forms = ['forms' => FormQuery::create()->find()];
$form = $this->createForm(FormsType::class, $forms);
$form->handleRequest($request);
return View::create($form, 400);
}
2016-03-19 15:18:15 +01:00
// public function postQuestionsAction(Request $request)
// {
// // $form = $this->createForm(new FooType());
// // $form->handleRequest($request);
// //return View::create($form, 400);
// return [
// 'status' => 'ok',
// ];
// }
2016-03-18 23:40:48 +01:00
}