コード例 #1
0
ファイル: comentario.php プロジェクト: reneegonam/CoCo
 public function action_subir()
 {
     if ($_POST) {
         $envio_id = $_POST['envio_id'];
         $cmt = new Model_Comentario();
         $cmt->subir($_POST);
         //echo kohana::debug($cmt);
         $this->errores = $cmt->errores;
         $this->formulario = $cmt->formulario;
         $this->request->redirect("noticia/ver/" . $envio_id . "#cmt" . $cmt->id);
     }
 }
コード例 #2
0
ファイル: Comentario.php プロジェクト: clagomess/trashofweb
 public static function getInstance()
 {
     if (self::$_instance == null) {
         self::$_instance = new Model_Comentario();
     }
     return self::$_instance;
 }
コード例 #3
0
ファイル: home.php プロジェクト: 4bs4/marifa
 /**
  * Submenu de la moderación.
  * @param string $activo Sección actual.
  * @return array
  */
 public static function submenu($activo)
 {
     $listado = array();
     $listado['p_principal'] = array('caption' => 'Principal');
     $listado['index'] = array('link' => '/moderar/', 'caption' => 'Inicio', 'active' => FALSE);
     if (Usuario::permiso(array(Model_Usuario_Rango::PERMISO_POST_VER_DENUNCIAS, Model_Usuario_Rango::PERMISO_FOTO_VER_DENUNCIAS, Model_Usuario_Rango::PERMISO_USUARIO_VER_DENUNCIAS))) {
         $listado['p_denuncias'] = array('caption' => 'Denuncias');
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_DENUNCIAS)) {
             $listado['denuncias_posts'] = array('link' => '/moderar/denuncias/posts/', 'caption' => 'Posts', 'active' => FALSE, 'cantidad' => Model_Post_Denuncia::cantidad(Model_Post_Denuncia::ESTADO_PENDIENTE));
         }
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_DENUNCIAS)) {
             $listado['denuncias_fotos'] = array('link' => '/moderar/denuncias/fotos/', 'caption' => 'Fotos', 'active' => FALSE, 'cantidad' => Model_Foto_Denuncia::cantidad(Model_Post_Denuncia::ESTADO_PENDIENTE));
         }
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_USUARIO_VER_DENUNCIAS)) {
             $listado['denuncias_usuarios'] = array('link' => '/moderar/denuncias/usuarios/', 'caption' => 'Usuarios', 'active' => FALSE, 'cantidad' => Model_Usuario_Denuncia::cantidad(Model_Post_Denuncia::ESTADO_PENDIENTE));
         }
     }
     $listado['p_gestion'] = array('caption' => 'Gestión');
     if (Usuario::permiso(Model_Usuario_Rango::PERMISO_USUARIO_SUSPENDER)) {
         $listado['gestion_usuarios'] = array('link' => '/moderar/gestion/usuarios/', 'caption' => 'Usuarios', 'active' => FALSE, 'cantidad' => Model_Usuario_Suspension::cantidad());
     }
     // $listado['gestion_buscador'] = array('link' => '/moderar/gestion/buscador/', 'caption' => 'Buscador contenido', 'active' => FALSE);
     if (Usuario::permiso(array(Model_Usuario_Rango::PERMISO_POST_VER_PAPELERA, Model_Usuario_Rango::PERMISO_FOTO_VER_PAPELERA))) {
         $listado['p_papelera'] = array('caption' => 'Papelera de reciclaje');
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_PAPELERA)) {
             $listado['papelera_posts'] = array('link' => '/moderar/papelera/posts/', 'caption' => 'Posts eliminados', 'active' => FALSE, 'cantidad' => Model_Post::s_cantidad(Model_Post::ESTADO_PAPELERA));
         }
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_PAPELERA)) {
             $listado['papelera_fotos'] = array('link' => '/moderar/papelera/fotos/', 'caption' => 'Fotos eleminadas', 'active' => FALSE, 'cantidad' => Model_Foto::s_cantidad(Model_Foto::ESTADO_PAPELERA));
         }
     }
     if (Usuario::permiso(array(Model_Usuario_Rango::PERMISO_POST_VER_DESAPROBADO, Model_Usuario_Rango::PERMISO_COMENTARIO_VER_DESAPROBADO))) {
         $listado['p_desaprobado'] = array('caption' => 'Contenido desaprobado');
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_DESAPROBADO)) {
             $listado['desaprobado_posts'] = array('link' => '/moderar/desaprobado/posts', 'caption' => 'Posts', 'active' => FALSE, 'cantidad' => Model_Post::s_cantidad(Model_Post::ESTADO_PENDIENTE) + Model_Post::s_cantidad(Model_Post::ESTADO_RECHAZADO));
         }
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_VER_DESAPROBADO)) {
             $listado['desaprobado_comentarios'] = array('link' => '/moderar/desaprobado/comentarios/', 'caption' => 'Comentarios', 'active' => FALSE, 'cantidad' => Model_Comentario::cantidad(Model_Comentario::ESTADO_OCULTO));
         }
     }
     // Seteamos el color.
     foreach ($listado as $k => $v) {
         if (isset($v['cantidad'])) {
             if ($listado[$k]['cantidad'] > 0) {
                 $listado[$k]['tipo'] = 'important';
             } else {
                 $listado[$k]['tipo'] = 'success';
             }
         }
     }
     if (isset($listado[$activo])) {
         $listado[$activo]['active'] = TRUE;
     }
     return $listado;
 }
コード例 #4
0
 public function getcomentarioAction()
 {
     self::requireIsPost();
     General::permissaoAuth(false);
     $arComentario = current(Model_Comentario::getInstance()->get(array('nu_post' => $this->getRequest()->getParam('nu_post'), 'limit' => $this->getRequest()->getParam('limit'))));
     if (count($arComentario)) {
         foreach ($arComentario as $item) {
             $item['size'] = 32;
             echo General::compressHtml($this->view->partial('helpers/li_post.phtml', $item));
         }
     }
 }
コード例 #5
0
ファイル: Post.php プロジェクト: clagomess/trashofweb
 public function get($param)
 {
     $bind = array();
     $bind['dt_fuso'] = $_SESSION['tw_auth']['dt_fuso'];
     $sql = "SELECT\n\t\t\tp.co_post,\n\t\t\tp.nu_post,\n            u.co_usuario,\n\t\t\tu.nu_usuario,\n\t\t\tu.no_email,\n\t\t\tu.no_usuario,\n\t\t\tp.tx_post,\n\t\t\tCONVERT_TZ(p.dt_cadastro,'+00:00',:dt_fuso) dt_cadastro,\n\t\t\tp.dt_cadastro dt_cadastro_utc,\n\t\t\ttp.qt_comentario,\n\t\t\ti.nu_imagem\n\t\tFROM\n\t\ttb_post p\n\t\tJOIN\n\t\t( \n            SELECT\n\t\t\t    p.co_post,\n\t\t\t    if(c.co_comentario is null,0,count(*)) qt_comentario\n\t\t    FROM\n\t\t    tb_post p\n\t\t    JOIN tb_usuario u\n\t\t\t    ON u.co_usuario = p.co_usuario ";
     if ($param['tipo'] == "amigo") {
         $sql .= " JOIN tb_seguidor s\n\t            ON s.co_usuario_seguido = u.co_usuario ";
     }
     $sql .= " LEFT JOIN tb_comentario c\n\t                ON c.co_post = p.co_post AND c.st_ativo = 1\n                WHERE p.st_ativo = 1\n\t            AND u.st_ativo = 1 ";
     if ($param['tipo'] == "rede") {
         $sql .= " AND u.co_pais = :co_pais ";
         $bind['co_pais'] = $_SESSION['tw_auth']['co_pais'];
     }
     if ($param['tipo'] == "amigo") {
         $sql .= " AND s.co_usuario_seguidor = :co_usuario_seguidor";
         $bind['co_usuario_seguidor'] = $_SESSION['tw_auth']['co_usuario'];
     }
     if ($param['tipo'] == "usuario") {
         if ($param['nu_usuario']) {
             $sql .= " AND u.nu_usuario = :nu_usuario";
             $bind['nu_usuario'] = $param['nu_usuario'];
         } else {
             $sql .= " AND u.co_usuario = :co_usuario";
             $bind['co_usuario'] = $param['co_usuario'];
         }
     }
     if ($param['tipo'] == "id") {
         $sql .= " AND p.nu_post = :nu_post";
         $bind['nu_post'] = $param['nu_post'];
     }
     if ($param['uptime']) {
         $sql .= " AND p.dt_cadastro < :dt_cadastro";
         $bind['dt_cadastro'] = $param['uptime'];
     }
     $sql .= " GROUP BY p.co_post\n                    ORDER BY p.dt_cadastro desc\n                    LIMIT 10 ) tp ON tp.co_post = p.co_post\n        JOIN tb_usuario u ON u.co_usuario = p.co_usuario\n        LEFT JOIN tb_imagem i ON i.co_imagem = u.co_imagem";
     $cache_id = "pst_" . md5(serialize($param) . serialize($bind));
     $cache = General::cache(10);
     General::setCacheID('pst', $cache_id);
     $rs = $cache->load($cache_id);
     if (!$rs) {
         $rs = $this->getAdapter()->fetchAll($sql, $bind);
         $cache->save($rs, $cache_id);
     }
     unset($cache);
     $arIDPost = array();
     $arReturn = array();
     if (count($rs)) {
         foreach ($rs as $item) {
             if ($item['qt_comentario'] > 0) {
                 $arIDPost[] = $item['co_post'];
             }
         }
         $arComentario = array();
         if (count($arIDPost)) {
             $arComentario = Model_Comentario::getInstance()->get(array("co_post" => $arIDPost, "limit" => $param['tipo'] == "id" ? 100 : 3));
         }
         foreach ($rs as $item) {
             $arReturn[$item['co_post']] = $item;
             $arReturn[$item['co_post']]['comentario'] = $arComentario[$item['co_post']];
         }
         unset($arComentario);
         unset($rs);
         unset($arIDPost);
         return $arReturn;
     } else {
         return array();
     }
 }
コード例 #6
0
ファイル: desaprobado.php プロジェクト: 4bs4/marifa
 /**
  * Listado de comentarios que se encuentran desaprobados.
  * @param int $pagina Número de página a mostrar.
  * @param int $tipo Tipo de comentarios a mostrar.
  */
 public function action_comentarios($pagina, $tipo)
 {
     // Verifico permisos.
     if (!Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_VER_DESAPROBADO)) {
         $_SESSION['flash_error'] = 'No tienes permiso para acceder a esa sección.';
         Request::redirect('/');
     }
     // Formato de la página.
     $pagina = (int) $pagina > 0 ? (int) $pagina : 1;
     // 0: Posts y fotos
     // 1: Fotos.
     // 2: Posts.
     // Verifico el tipo de comentarios a mostrar.
     if ($tipo == 0 || $tipo == 1 || $tipo == 2) {
         $tipo = (int) $tipo;
     } else {
         $tipo = 0;
     }
     // Cantidad de elementos por pagina.
     $cantidad_por_pagina = 20;
     // Cargamos la vista.
     $vista = View::factory('/moderar/desaprobado/comentarios');
     // Asignamos datos.
     $vista->assign('tipo', $tipo);
     // Cargo datos en función del tipo.
     if ($tipo === 0) {
         // Cargo el modelo.
         $model_comentario = new Model_Comentario();
         // Cargo el listado de comentarios.
         $lst = $model_comentario->listado($pagina, $cantidad_por_pagina, Model_Comentario::ESTADO_OCULTO);
         if (count($lst) == 0 && $pagina != 1) {
             Request::redirect('/moderar/desaprobado/comentarios');
         }
     } elseif ($tipo === 1) {
         // Cargo el modelo.
         $model_comentario = new Model_Foto_Comentario();
         // Cargo el listado de comentarios.
         $lst = $model_comentario->listado($pagina, $cantidad_por_pagina, Model_Foto_Comentario::ESTADO_OCULTO);
         if (count($lst) == 0 && $pagina != 1) {
             Request::redirect('/moderar/desaprobado/comentarios/1/1');
         }
     } else {
         // Cargo el modelo.
         $model_comentario = new Model_Post_Comentario();
         // Cargo el listado de comentarios.
         $lst = $model_comentario->listado($pagina, $cantidad_por_pagina, Model_Post_Comentario::ESTADO_OCULTO);
         if (count($lst) == 0 && $pagina != 1) {
             Request::redirect('/moderar/desaprobado/comentarios/1/2');
         }
     }
     // Calculo las cantidades.
     $c_foto = Model_Foto_Comentario::cantidad(Model_Foto_Comentario::ESTADO_OCULTO);
     $c_post = Model_Post_Comentario::cantidad(Model_Post_Comentario::ESTADO_OCULTO);
     $c_total = $c_foto + $c_post;
     // Paso datos para barra.
     $vista->assign('cantidad_fotos', $c_foto);
     $vista->assign('cantidad_posts', $c_post);
     $vista->assign('cantidad_total', $c_total);
     $vista->assign('actual', $pagina);
     // Paginación.
     $total = $tipo == 0 ? $c_total : ($tipo == 1 ? $c_foto : $c_post);
     $paginador = new Paginator($total, $cantidad_por_pagina);
     $vista->assign('paginacion', $paginador->get_view($pagina, '/moderar/desaprobado/comentario/%s/' . $tipo));
     // Obtenemos datos de los comentarios.
     foreach ($lst as $k => $v) {
         $a = $v->as_array();
         if ($v instanceof Model_Foto_Comentario) {
             $a['foto'] = $v->foto()->as_array();
         } else {
             $a['post'] = $v->post()->as_array();
         }
         $a['usuario'] = $v->usuario()->as_array();
         $lst[$k] = $a;
     }
     // Seteamos listado de comentarios.
     $vista->assign('comentarios', $lst);
     unset($lst);
     // Seteamos el menu.
     $this->template->assign('master_bar', parent::base_menu('moderar'));
     // Cargamos plantilla administracion.
     $admin_template = View::factory('moderar/template');
     $admin_template->assign('contenido', $vista->parse());
     unset($portada);
     $admin_template->assign('top_bar', Controller_Moderar_Home::submenu('desaprobado_comentarios'));
     // Asignamos la vista a la plantilla base.
     $this->template->assign('contenido', $admin_template->parse());
 }