/** * * @param Request $request * @param Application $app * @param int $idArticulo * * @return mixed */ public function agregar(Request $request, Application $app, $idArticulo) { $alias = $app['security']->getToken()->getUser()->getUsername(); $usuarioModelo = new Usuario($app['db']); $usuario = $usuarioModelo->getUsuarioPorAlias($alias); // El autor del articulo debe ser el logueado $idAutor = $usuario['id']; $initial_data = array('contenido' => ''); $form = $app['form.factory']->createBuilder('form', $initial_data); $form = $form->add('contenido', 'textarea', array('required' => true)); $form = $form->getForm(); if ("POST" == $request->getMethod()) { $form->handleRequest($request); if ($form->isValid()) { $data = $form->getData(); $comentarioModelo = new \Precursor\Application\Model\Comentario($app['db']); $filasAfectadas = $comentarioModelo->guardar($idArticulo, $idAutor, $data['contenido']); if ($filasAfectadas == 1) { $app['session']->getFlashBag()->add('success', array('message' => '¡Comentario creado!')); } return $app->redirect($app['url_generator']->generate('comentarios_articulo_list', array('idArticulo' => $idArticulo))); } } return $app['twig']->render('backend/comentarios_articulo/create.html.twig', array("form" => $form->createView(), 'idArticulo' => $idArticulo)); }
/** * @param Request $request * @param Application $app * * @return mixed */ public function index(Request $request, Application $app) { $comentarioModelo = new Comentario($app['db']); $comentarios = $comentarioModelo->getComentarios(array(), "WHERE comentario.estatus = 'I'"); $articuloModelo = new Articulo($app['db']); $articulos = $articuloModelo->getTodo('fecha_pub', "I"); return $app['twig']->render('ag_dashboard.html.twig', array('comentarios' => $comentarios, 'articulos' => $articulos)); }
/** * * @param Request $request * @param Application $app * @param int $idArticulo * @param int $id * * @return mixed */ public function eliminar(Request $request, Application $app, $idArticulo, $id) { $comentarioModelo = new Comentario($app['db']); $comentario = $comentarioModelo->getPorId($id); if (!empty($comentario)) { $filasAfectadas = $comentarioModelo->eliminar($id); if ($filasAfectadas == 1) { $app['session']->getFlashBag()->add('info', array('message' => '¡Comentario eliminado!')); } } else { $app['session']->getFlashBag()->add('warning', array('message' => '¡Comentario no encontrado!')); } return $app->redirect($app['url_generator']->generate('comentarios_articulo_list', array('idArticulo' => $idArticulo))); }
/** * @param Request $request * @param Application $app * * @return JsonResponse */ public function guardarComentario(Request $request, Application $app) { $usuarioLogueado = $app['security']->getToken()->getUser(); if (is_object($usuarioLogueado)) { $usuarioModelo = new Usuario($app['db']); $usuario = $usuarioModelo->getUsuarioPorAlias($usuarioLogueado->getUsername()); unset($usuario['clave']); $comentarioModelo = new ComentarioModelo($app['db']); $comentario = $request->get('comentario'); if (isset($comentario['idArticulo']) && isset($comentario['contenido'])) { $filasAfectadas = $comentarioModelo->guardar($comentario['idArticulo'], $usuario['id'], $comentario['contenido'], 'I'); if ($filasAfectadas == 1) { $response = array('mensaje' => 'Comentario guardado.'); } else { $response = array('mensaje' => 'Comentario no guardado.'); } $response['estatus'] = 200; $response['usuario'] = $usuario; } } else { $response = array('estatus' => 403, 'mensaje' => 'Usuario no logueado.'); } return new JsonResponse($response); }
/** * @param Request $request * @param Application $app * @param $id * * @return JsonResponse|RedirectResponse */ public function eliminar(Request $request, Application $app, $id) { $comentarioModelo = new ComentarioModelo($app['db']); $comentario = $comentarioModelo->getPorId($id); if ('GET' == $request->getMethod()) { if (!empty($comentario)) { $filasAfectadas = $comentarioModelo->eliminar($id); if ($filasAfectadas == 1) { $app['session']->getFlashBag()->add('info', array('message' => '¡Comentario eliminado!')); } } else { $app['session']->getFlashBag()->add('warning', array('message' => '¡Comentario no encontrado!')); } return $app->redirect($app['url_generator']->generate('comentario_list')); } elseif ('POST' == $request->getMethod()) { if (!empty($comentario)) { $filasAfectadas = $comentarioModelo->eliminar($id); if ($filasAfectadas == 1) { $response = array('mensaje' => 'Comentario eliminado.'); $app['session']->getFlashBag()->add('info', array('message' => '¡Comentario eliminado!')); } } else { $response = array('mensaje' => 'Comentario no encontrado.'); } return new JsonResponse($response); } }
public function eliminar($id) { $filasAfectadas = 0; $comentarioModelo = new Comentario($this->_db); $filasAfectadas += $comentarioModelo->_delete(array('id_articulo' => $id)); $etiquetasArticuloModelo = new EtiquetasArticulo($this->_db); $filasAfectadas += $etiquetasArticuloModelo->_delete(array('id_articulo' => $id)); $filasAfectadas += $this->_delete(array('id' => $id)); return $filasAfectadas; }