/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { // Primero comprobaremos si estamos recibiendo todos los campos. if (!$request->input('titol') || !$request->input('dataHora') || !$request->input('lloc') || !$request->input('inscripcioOberta') || !$request->input('presencial')) { // Se devuelve un array errors con los errores encontrados y cabecera HTTP 422 Unprocessable Entity – [Entidad improcesable] Utilizada para errores de validación. // En code podríamos indicar un código de error personalizado de nuestra aplicación si lo deseamos. return response()->json(['errors' => array(['code' => 422, 'message' => 'Faltan datos necesarios para el proceso de alta.'])], 422); } // Insertamos una fila en Fabricante con create pasándole todos los datos recibidos. // En $request->all() tendremos todos los campos del formulario recibidos. //damos formato dateTime $formato = 'Y-m-d H:i:s'; $fecha = DateTime::createFromFormat($formato, $request->input('dataHora')); $request->merge(array('dataHora' => $fecha)); //control de los booleanos (v1, en la v2 ira fuera) if ($request->input('inscripcioOberta') == "true") { $request->merge(array('inscripcioOberta' => true)); } else { $request->merge(array('inscripcioOberta' => false)); } if ($request->input('presencial') == "true") { $request->merge(array('presencial' => true)); } else { $request->merge(array('presencial' => false)); } $nouEsdeveniment = Esdeveniment::create($request->all()); // Más información sobre respuestas en http://jsonapi.org/format/ // Devolvemos el código HTTP 201 Created – [Creada] Respuesta a un POST que resulta en una creación. Debería ser combinado con un encabezado Location, apuntando a la ubicación del nuevo recurso. $response = Response::make(json_encode(['data' => $nouEsdeveniment]), 201)->header('Location', 'http://www.dominio.local/esdeveniments/' . $nouEsdeveniment->id)->header('Content-Type', 'application/json'); return $response; }
public function postEsdeveniment() { // Primero comprobaremos si estamos recibiendo todos los campos. if (!Request::input('name')) { print_r("falta name"); } else { if (!Request::input('data')) { print_r("falta data"); } else { $esdeveniment = Esdeveniment::where('titol', '=', Request::input('name'))->get(); if ($esdeveniment != "[]") { print_r("falta name"); } else { $esd = array('titol' => Request::input('name')); $esd = array_add($esd, 'lloc', Request::input('lloc')); $formato = 'Y-m-d H:i:s'; $fecha = DateTime::createFromFormat($formato, Request::input('data')); if (!$fecha) { print_r("falta data"); die; } $esd = array_add($esd, 'dataHora', $fecha); if (Request::input('oberta') == "false") { $esd = array_add($esd, 'inscripcioOberta', false); } else { $esd = array_add($esd, 'inscripcioOberta', true); } if (Request::input('lloc') == "") { $esd = array_add($esd, 'presencial', true); } else { $esd = array_add($esd, 'presencial', false); } //print_r($esd);die; $nouEsdeveniment = Esdeveniment::create($esd); print_r($nouEsdeveniment->id); } } } }