/**
  * 
  * @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));
 }
示例#2
0
 /**
  * @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)));
 }
示例#4
0
 /**
  * @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);
 }
示例#5
0
 /**
  * @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);
     }
 }
示例#6
0
 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;
 }