Exemple #1
0
 /**
  * Cargamos la plantilla base.
  */
 public function __construct()
 {
     // Cargamos la plantilla base.
     $this->template = View::factory('template');
     // Cargo las noticias.
     $noticia = Model_Noticia::get_active();
     if ($noticia !== NULL) {
         $this->template->assign('noticia', Decoda::procesar($noticia->contenido));
     }
     unset($noticia);
     // Cargo nombre del sitio.
     $model_config = new Model_Configuracion();
     $this->template->assign('brand', $model_config->get('nombre', 'Marifa'));
     // Acciones para menu offline.
     if (!Usuario::is_login()) {
         // Seteamos menu offline.
         $this->template->assign('user_header', View::factory('header/logout')->parse());
     } else {
         $this->template->assign('user_header', $this->make_user_header()->parse());
     }
     $this->template->assign('contenido', '');
     // Eventos flash.
     if (isset($_SESSION['flash_success'])) {
         $this->template->assign('flash_success', get_flash('flash_success'));
     }
     if (isset($_SESSION['flash_error'])) {
         $this->template->assign('flash_error', get_flash('flash_error'));
     }
     // Seteo si es mantenimiento.
     $m = new Mantenimiento();
     $this->template->assign('is_locked', $m->is_locked());
     unset($m);
 }
 private function flash($id, $message)
 {
     if (flash_empty($id)) {
         flash($id, $message);
     } else {
         $current_flash = get_flash($id);
         flash($id, $current_flash . '<br>' . $message);
     }
 }
Exemple #3
0
 /**
  * Cargamos la plantilla base.
  */
 public function __construct()
 {
     // Inicio la sessión.
     session_start();
     // Verifico el paso actual.
     if (!isset($_SESSION['step']) && $this->step !== 0) {
         $_SESSION['step'] = 0;
         Request::redirect('/installer/');
     }
     if (!isset($_SESSION['step'])) {
         $_SESSION['step'] = 0;
     }
     // Cargamos la plantilla base.
     $this->template = View::factory('template');
     // Contenido inicial vacio.
     $this->template->assign('contenido', '');
     // Eventos flash.
     if (isset($_SESSION['flash_success'])) {
         $this->template->assign('flash_success', get_flash('flash_success'));
     }
     if (isset($_SESSION['flash_error'])) {
         $this->template->assign('flash_error', get_flash('flash_error'));
     }
 }
function disp_header($title = "Newscloud Management Console", $action = 'index')
{
    global $init;
    global $controller_name;
    global $action_name;
    global $curr_site_id;
    require_once PATH_PHP . '/classes/page.class.php';
    $page = new XHTMLpage();
    $page->pkgScripts(CACHE_PREFIX . 'nrConsole', array(PATH_PHP_SCRIPTS . '/template.js'));
    //$template_src = '<script src="http://hotdish.org/?p=cache&type=js&cf=template.js&v=1.002"></script>';
    //$page->addScript(PATH_PHP_SCRIPTS.'/template.js');
    // hack: djm - dont know correct way to incorporate this
    //$page->addScript('http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.2/prototype.js');
    $templateBuilder = false;
    if ($action == 'template_builder') {
        $templateBuilder = true;
    }
    $flash = get_flash();
    include_once 'header.php';
}
Exemple #5
0
 /**
  * Mostramos una foto.
  * @param int $foto ID de la foto.
  */
 public function action_ver($foto)
 {
     // Convertimos la foto a ID.
     $foto = (int) $foto;
     // Cargamos la foto.
     $model_foto = new Model_Foto($foto);
     // Verificamos exista.
     if (!is_array($model_foto->as_array())) {
         $_SESSION['flash_error'] = 'La foto a la que intentas acceder no está disponible.';
         Request::redirect('/foto/');
     }
     // Verifico el estado.
     if ($model_foto->usuario_id !== Usuario::$usuario_id && $model_foto->estado !== Model_Foto::ESTADO_ACTIVA && !Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_DESAPROBADO) && !Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_PAPELERA)) {
         $_SESSION['flash_error'] == 'La foto a la que intentas acceder no está disponible.';
         Request::redirect('/foto/');
     }
     // Asignamos el título.
     $this->template->assign('title', 'Foto - ' . $model_foto->as_object()->titulo);
     // Cargamos la vista.
     $view = View::factory('foto/ver');
     // Mi id.
     $view->assign('me', Usuario::$usuario_id);
     // Informamos los permisos a la vista.
     $view->assign('permiso_borrar', Usuario::$usuario_id === $model_foto->usuario_id || Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_ELIMINAR));
     $view->assign('permiso_editar', Usuario::$usuario_id === $model_foto->usuario_id || Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_EDITAR));
     $view->assign('permiso_ocultar', Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_OCULTAR) || Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_DESAPROBADO) || Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_DENUNCIAS));
     $view->assign('permiso_papelera', Usuario::$usuario_id === $model_foto->usuario_id);
     // Información del usuario dueño del post.
     $u_data = $model_foto->usuario()->as_array();
     $u_data['seguidores'] = $model_foto->usuario()->cantidad_seguidores();
     $u_data['posts'] = $model_foto->usuario()->cantidad_posts();
     $u_data['comentarios'] = $model_foto->usuario()->cantidad_comentarios();
     $u_data['puntos'] = $model_foto->usuario()->cantidad_puntos();
     $view->assign('usuario', $u_data);
     unset($u_data);
     // Información de la foto.
     $ft = $model_foto->as_array();
     $ft['descripcion'] = Decoda::procesar($ft['descripcion']);
     $ft['votos'] = (int) $model_foto->votos();
     $ft['favoritos'] = (int) $model_foto->favoritos();
     $view->assign('foto', $ft);
     unset($ft);
     if (!Usuario::is_login() || $model_foto->as_object()->usuario_id == Usuario::$usuario_id) {
         $view->assign('es_favorito', TRUE);
         $view->assign('ya_vote', TRUE);
     } else {
         // Computamos la visita si es necesario.
         if ($model_foto->visitas !== NULL) {
             $model_foto->agregar_visita();
         }
         $view->assign('es_favorito', $model_foto->es_favorito(Usuario::$usuario_id));
         $view->assign('ya_vote', !Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VOTAR) || $model_foto->ya_voto(Usuario::$usuario_id));
     }
     // Verifico si soporta comentarios.
     $view->assign('puedo_comentar', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_COMENTAR_CERRADO) || $model_foto->soporta_comentarios() && Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_COMENTAR));
     $view->assign('comentario_eliminar', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_ELIMINAR));
     $view->assign('comentario_ocultar', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_OCULTAR));
     $view->assign('comentario_editar', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_EDITAR));
     // Comentarios del post.
     $cmts = $model_foto->comentarios();
     $l_cmt = array();
     foreach ($cmts as $cmt) {
         $cl_cmt = $cmt->as_array();
         $cl_cmt['usuario'] = $cmt->usuario()->as_array();
         $l_cmt[] = $cl_cmt;
     }
     $view->assign('comentarios', $l_cmt);
     unset($l_cmt, $cmts);
     $view->assign('comentario_content', isset($_POST['comentario']) ? $_POST['comentario'] : NULL);
     $view->assign('comentario_error', get_flash('post_comentario_error'));
     $view->assign('comentario_success', get_flash('post_comentario_success'));
     // Menu.
     $this->template->assign('master_bar', parent::base_menu('fotos'));
     $this->template->assign('top_bar', $this->submenu('index'));
     // Asignamos la vista.
     $this->template->assign('contenido', $view->parse());
 }
Exemple #6
0
function clear_flash($id)
{
    $flash = get_flash($id);
    unset($_SESSION['flash'][$id]);
    return $flash;
}
Exemple #7
0
 /**
  * Información de un post.
  * @param int $post ID del post a visualizar.
  */
 public function action_index($post)
 {
     // Convertimos el post a ID.
     $post = (int) $post;
     // Cargamos el post.
     $model_post = new Model_Post($post);
     // Verificamos exista.
     if (!is_array($model_post->as_array())) {
         $_SESSION['flash_error'] = 'El post al que intentas acceder no está disponible.';
         Request::redirect('/');
     }
     // Verifico el estado de post y permisos necesarios para acceder.
     switch ($model_post->estado) {
         case Model_Post::ESTADO_BORRADO:
             $_SESSION['flash_error'] = 'El post al que intentas acceder no existe.';
             Request::redirect('/');
             break;
         case Model_Post::ESTADO_PAPELERA:
             if ($model_post->usuario_id !== Usuario::$usuario_id && !Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_PAPELERA)) {
                 $_SESSION['flash_error'] = 'El post al que intentas acceder no se encuentra disponible.';
                 Request::redirect('/');
             }
             break;
         case Model_Post::ESTADO_BORRADOR:
             if ($model_post->usuario_id !== Usuario::$usuario_id && !Usuario::permiso(Model_Usuario_Rango::PERMISO_SITIO_ADMINISTRAR_CONTENIDO)) {
                 $_SESSION['flash_error'] = 'El post al que intentas acceder no se encuentra disponible.';
                 Request::redirect('/');
             }
             break;
         case Model_Post::ESTADO_PENDIENTE:
         case Model_Post::ESTADO_OCULTO:
         case Model_Post::ESTADO_RECHAZADO:
             if ($model_post->usuario_id !== Usuario::$usuario_id && !Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_DESAPROBADO)) {
                 $_SESSION['flash_error'] = 'El post al que intentas acceder no se encuentra disponible.';
                 Request::redirect('/');
             }
             break;
     }
     if ($model_post->as_object()->privado && !Usuario::is_login()) {
         // Asignamos el título.
         $this->template->assign('title', 'Post privado');
         $view = View::factory('post/privado');
         $view->assign('post', $model_post->as_array());
     } else {
         // Asignamos el título.
         $this->template->assign('title', $model_post->as_object()->titulo);
         // Cargamos la vista.
         $view = View::factory('post/index');
         // Verifico si debo contabilizar la visita.
         if (Usuario::$usuario_id != $model_post->as_object()->usuario_id) {
             $model_post->agregar_vista();
         }
         // Mi id.
         $view->assign('me', Usuario::$usuario_id);
         // Verifico si sigo al usuario.
         if ($model_post->usuario_id !== Usuario::$usuario_id) {
             $view->assign('sigue_usuario', $model_post->usuario()->es_seguidor(Usuario::$usuario_id));
         } else {
             $view->assign('sigue_usuario', TRUE);
         }
         // Información del usuario dueño del post.
         $u_data = $model_post->usuario()->as_array();
         $u_data['seguidores'] = $model_post->usuario()->cantidad_seguidores();
         $u_data['posts'] = $model_post->usuario()->cantidad_posts();
         $u_data['comentarios'] = $model_post->usuario()->cantidad_comentarios();
         $u_data['puntos'] = $model_post->usuario()->cantidad_puntos();
         $view->assign('usuario', $u_data);
         unset($u_data);
         // Información del post.
         $pst = $model_post->as_array();
         $pst['contenido_raw'] = $pst['contenido'];
         $pst['contenido'] = Decoda::procesar($pst['contenido']);
         $pst['seguidores'] = $model_post->cantidad_seguidores();
         $pst['puntos'] = $model_post->puntos();
         $pst['favoritos'] = $model_post->cantidad_favoritos();
         $view->assign('post', $pst);
         unset($pst);
         // Verifico las acciones extendidas.
         $view->assign('modificar_ocultar', Usuario::$usuario_id === $model_post->usuario_id || Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_OCULTAR));
         $view->assign('modificar_especiales', Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_FIJAR_PROMOVER));
         $view->assign('modificar_aprobar', Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_DESAPROBADO) || Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_DENUNCIAS));
         //TODO: ver si en todo momento es correcto permitir modificaciones.
         $view->assign('modificar_editar', Usuario::$usuario_id === $model_post->usuario_id || Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_EDITAR));
         $view->assign('modificar_borrar', Usuario::$usuario_id === $model_post->usuario_id || Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_ELIMINAR));
         // Verifico si el usuario puede comentar.
         $view->assign('podemos_comentar', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_COMENTAR_CERRADO) || $model_post->comentar && Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_COMENTAR));
         // Verifico si el usuario puede votar comentarios.
         $view->assign('podemos_votar_comentarios', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_VOTAR));
         // Verifico acciones generales.
         if ($model_post->as_object()->usuario_id == Usuario::$usuario_id) {
             $view->assign('es_favorito', TRUE);
             $view->assign('sigo_post', TRUE);
             $view->assign('puntuacion', FALSE);
         } else {
             $view->assign('es_favorito', $model_post->es_favorito(Usuario::$usuario_id));
             $view->assign('sigo_post', $model_post->es_seguidor(Usuario::$usuario_id));
             if (!Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_PUNTUAR) || $model_post->dio_puntos(Usuario::$usuario_id)) {
                 $view->assign('puntuacion', FALSE);
             } else {
                 // Obtenemos puntos disponibles.
                 $m_user = Usuario::usuario();
                 $p_d = $m_user->puntos_disponibles;
                 $p_arr = array();
                 for ($i = 1; $i <= $p_d; $i++) {
                     $p_arr[] = $i;
                 }
                 $view->assign('puntuacion', $p_arr);
                 unset($m_user, $p_d, $p_arr);
             }
         }
         // Categoria del post.
         $view->assign('categoria', $model_post->categoria()->as_array());
         // Etiquetas.
         $view->assign('etiquetas', $model_post->etiquetas());
         // Acciones posibles sobre comentarios.
         $view->assign('comentario_eliminar', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_ELIMINAR));
         $view->assign('comentario_ocultar', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_OCULTAR));
         $view->assign('comentario_editar', Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_EDITAR));
         // Comentarios del post.
         $cmts = $model_post->comentarios(NULL);
         $l_cmt = array();
         foreach ($cmts as $cmt) {
             // Verifico omito los no visibles si el usuario no puede verlos.
             if ($cmt->estado !== Model_Comentario::ESTADO_VISIBLE && !Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_VER_DESAPROBADO)) {
                 continue;
             }
             $cl_cmt = $cmt->as_array();
             $cl_cmt['contenido_raw'] = $cl_cmt['contenido'];
             $cl_cmt['contenido'] = Decoda::procesar($cl_cmt['contenido']);
             if ($cl_cmt['usuario_id'] == Usuario::$usuario_id) {
                 $cl_cmt['vote'] = TRUE;
             } else {
                 $cl_cmt['vote'] = $cmt->ya_voto(Usuario::$usuario_id);
             }
             $cl_cmt['votos'] = $cmt->cantidad_votos();
             $cl_cmt['usuario'] = $cmt->usuario()->as_array();
             $l_cmt[] = $cl_cmt;
         }
         $view->assign('comentarios', $l_cmt);
         unset($l_cmt, $cmts);
         $view->assign('comentario_content', isset($_POST['comentario']) ? $_POST['comentario'] : NULL);
         $view->assign('comentario_error', get_flash('post_comentario_error'));
         $view->assign('comentario_success', get_flash('post_comentario_success'));
     }
     // Menu.
     $this->template->assign('master_bar', parent::base_menu('posts'));
     $this->template->assign('top_bar', Controller_Home::submenu('index'));
     // Asignamos la vista.
     $this->template->assign('contenido', $view->parse());
 }
<?php

use Glial\Synapse\FactoryController;
use Glial\I18n\I18n;
FactoryController::addNode("Layout", "headerPma", $GLIALE_TITLE);
echo '<div id="page">';
echo "<div id=\"glial-title\">";
echo "<h2>" . $GLIALE_TITLE . "</h2>";
echo "<span class=\"ariane\"><a href=\"" . WWW_ROOT . "\">" . __("Home") . "</a> " . $GLIALE_ARIANE . "</span>";
echo "</div>";
echo "<div style=\"padding:0 10px 10px 10px\">";
get_flash();
echo $GLIALE_CONTENT;
echo "</div>";
echo '</div>';
FactoryController::addNode("Layout", "footerPma");