예제 #1
0
 public static function getMenuServicos()
 {
     //Carrega o submenu de pesquisadores
     $servicos = Pagina::model()->findALL(array('order' => 'titulo', 'condition' => "tipo = 'serviço'"));
     $menuServicos = array();
     $itemServico = array();
     for ($i = 0; $i < count($servicos); $i++) {
         $itemServico["label"] = $servicos[$i]->titulo;
         $itemServico["url"] = array("/pagina/" . $servicos[$i]->cod_pagina);
         $menuServicos[] = $itemServico;
     }
     return $menuServicos;
 }
예제 #2
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCrear($id)
 {
     $horario = new Horario();
     if ($id) {
         $micrositio = Micrositio::model()->findByPk($id);
         $pagina = Pagina::model()->findByAttributes(array('micrositio_id' => $micrositio->id));
         $pgPrograma = PgPrograma::model()->findByAttributes(array('pagina_id' => $pagina->id));
         $horario->pg_programa_id = $pgPrograma->id;
     }
     if (isset($_POST['Horario'])) {
         $horario->attributes = $_POST['Horario'];
         $horario->hora_inicio = date('Gi', strtotime($horario->hora_inicio));
         $horario->hora_fin = date('Gi', strtotime($horario->hora_fin));
         if ($horario->save()) {
             Yii::app()->user->setFlash('success', Horarios::getDiaSemana($horario->dia_semana) . ' ' . Horarios::hora($horario->hora_inicio) . ' guardado con éxito');
             $this->redirect(array('programas/view', 'id' => $pgPrograma->pagina->micrositio_id));
         }
         //if($horario->save())
     }
     //if(isset($_POST['Horario']))
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     $this->render('crear', array('model' => $horario));
 }
예제 #3
0
 /**
  * Updates a particular model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id the ID of the model to be updated
  */
 public function actionUpdate($id)
 {
     $telemedellinForm = new TelemedellinForm();
     $telemedellinForm->id = $id;
     if (isset($_POST['TelemedellinForm'])) {
         $telemedellinForm->attributes = $_POST['TelemedellinForm'];
         if ($telemedellinForm->guardar()) {
             Yii::app()->user->setFlash('success', 'Micrositio ' . $telemedellinForm->nombre . ' guardado con éxito');
             $this->redirect(array('view', 'id' => $telemedellinForm->id));
         } else {
             Yii::app()->user->setFlash('warning', 'Micrositio ' . $telemedellinForm->nombre . ' no se pudo guardar');
         }
         //if($telemedellinForm->guardar())
     }
     //if(isset($_POST['TelemedellinForm']))
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     $micrositio = Micrositio::model()->with('url', 'pagina')->findByPk($id);
     $pagina = Pagina::model()->with('url', 'pgGenericaSts')->findByAttributes(array('micrositio_id' => $micrositio->id));
     //$pgGst = PgGenericaSt::model()->findByAttributes(array('pagina_id' => $pagina->id));
     $telemedellinForm->set_fields($micrositio, $pagina);
     $this->render('modificar', array('model' => $telemedellinForm));
 }
예제 #4
0
 public function guardar()
 {
     $dir = $this->imageRoute;
     $image_base = Yii::getPathOfAlias('webroot') . '/images/';
     if ($this->validate()) {
         if (isset($this->id)) {
             //Actualizando
             $micrositio = Micrositio::model()->findByPk($this->id);
         } else {
             //Nuevo registro
             $micrositio = new Micrositio();
         }
         $transaccion = $micrositio->dbConnection->beginTransaction();
         $micrositio->seccion_id = 3;
         //Especiales
         $micrositio->nombre = $this->nombre;
         if ($this->imagen != $micrositio->background) {
             if (file_exists($image_base . $micrositio->background)) {
                 @unlink($image_base . $micrositio->background);
             }
             $micrositio->background = $dir . $this->imagen;
         }
         if ($this->imagen_mobile != $micrositio->background_mobile) {
             if (file_exists($image_base . $micrositio->background_mobile)) {
                 @unlink($image_base . $micrositio->background_mobile);
             }
             $micrositio->background_mobile = $dir . $this->imagen_mobile;
         }
         if ($this->miniatura != $micrositio->miniatura) {
             if (file_exists($image_base . $micrositio->miniatura)) {
                 @unlink($image_base . $micrositio->miniatura);
             }
             $micrositio->miniatura = $dir . $this->miniatura;
         }
         $micrositio->destacado = $this->destacado;
         $micrositio->estado = $this->estado;
         if (!$micrositio->save(false)) {
             $transaccion->rollback();
         }
         $micrositio_id = $micrositio->getPrimaryKey();
         if (isset($this->id)) {
             $pagina = Pagina::model()->findByAttributes(array('micrositio_id' => $micrositio_id));
         } else {
             $pagina = new Pagina();
             $pagina->micrositio_id = $micrositio_id;
             $pagina->tipo_pagina_id = 10;
             //Página bloques
         }
         $pagina->nombre = $this->nombre;
         $pagina->meta_descripcion = $this->meta_descripcion;
         $pagina->clase = NULL;
         $pagina->destacado = $this->destacado;
         $pagina->estado = $this->estado == 2 ? 1 : $this->estado;
         if (!$pagina->save(false)) {
             $transaccion->rollback();
         }
         $pagina_id = $pagina->getPrimaryKey();
         if (isset($this->id)) {
             //Actualizando
             $pgB = PgBloques::model()->findByAttributes(array('pagina_id' => $pagina_id));
         } else {
             if (!$micrositio->asignar_pagina($pagina)) {
                 $transaccion->rollback();
             }
             $pgB = new PgBloques();
             $pgB->pagina_id = $pagina_id;
         }
         $pgB->estado = $this->estado;
         if (!$pgB->save(false)) {
             $transaccion->rollback();
             return false;
         } else {
             $transaccion->commit();
             $this->id = $micrositio_id;
             return true;
         }
     } else {
         return false;
     }
 }
예제 #5
0
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer the ID of the model to be loaded
  */
 public function loadModel($id)
 {
     $model = Pagina::model()->findByPk((int) $id);
     if ($model === null) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     return $model;
 }
예제 #6
0
 /**
  * Action Página : DELETE
  */
 public function actionDeletarPagina()
 {
     $dadosPost = Yii::app()->request->rawBody;
     $parametros = CJSON::decode($dadosPost, true);
     $pagina = Pagina::model()->findByPk($parametros['id']);
     $response = array();
     if ($pagina->delete() === false) {
         $response['success'] = false;
         $response['errors'] = $pagina->errors;
     } else {
         $response['success'] = true;
         $response['pagina'] = $pagina;
     }
     header('Content-type: application/json; charset=utf-8');
     echo CJSON::encode($response);
     Yii::app()->end();
 }
예제 #7
0
<?php

$paginasMenu = Pagina::model()->findAll();
//echo "<pre>"; print_r($_SESSION['carro']); echo "</pre>";
?>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

        <link href="<?php 
echo Yii::app()->baseUrl;
?>
/css/reset.css" rel="stylesheet" type="text/css" />
        <link href="<?php 
echo Yii::app()->baseUrl;
?>
/css/960_24_col.css" rel="stylesheet" type="text/css" />
        <link href="<?php 
echo Yii::app()->baseUrl;
?>
/css/text.css" rel="stylesheet" type="text/css" />
        <link href="<?php 
echo Yii::app()->baseUrl;
?>
/css/sitio.principal.css" rel="stylesheet" type="text/css" />
        <link href="<?php 
echo Yii::app()->baseUrl;
?>
/js/jquery.fancybox/jquery.fancybox.css" rel="stylesheet" type="text/css" />
        <link href="<?php 
예제 #8
0
 public function run($args)
 {
     $horarios = Horario::model()->with('pgPrograma')->findAll(array('order' => 'dia_semana ASC, hora_inicio ASC', 'condition' => 'pgPrograma.estado = 2'));
     foreach ($horarios as $horario) {
         $pagina = Pagina::model()->findByPk($horario->pgPrograma->pagina_id);
         $micrositio_id = $pagina->micrositio_id;
         $tipo_emision_id = $horario->tipo_emision_id;
         $dia_semana = $horario->dia_semana;
         $hora_inicio = $horario->hora_inicio;
         $hora_fin = $horario->hora_fin;
         $estado = 1;
         date_default_timezone_set('America/Bogota');
         setlocale(LC_ALL, 'es_ES.UTF-8');
         $sts = mktime(0, 0, 0, date('m'), date('d'), date('Y'));
         // set current date
         // parse about any English textual datetime description into a Unix timestamp
         $ts = $sts;
         // calculate the number of days since Monday
         $dow = date('w', $ts);
         $offset = $dow - 1;
         if ($offset < 0) {
             $offset = 6;
         }
         // calculate timestamp for the Monday
         $ts = $ts - $offset * 86400;
         $semana = array();
         // loop from Monday till Sunday
         for ($i = 0; $i < 7; $i++, $ts += 86400) {
             $semana[] = $ts;
         }
         $hora_inicio = $semana[$dia_semana - 1] + Horarios::hora_a_timestamp($hora_inicio);
         $hora_fin = $semana[$dia_semana - 1] + Horarios::hora_a_timestamp($hora_fin);
         /* PILAS AQUÍ, FESTIVO /**/
         $tts = mktime(0, 0, 0, date('m', $hora_inicio), date('d', $hora_inicio), date('Y', $hora_inicio));
         if ($tts == mktime(0, 0, 0, 3, 23, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 4, 2, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 4, 3, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 5, 1, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 5, 18, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 6, 8, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 6, 15, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 6, 29, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 7, 20, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 8, 7, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 8, 17, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 10, 12, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 11, 2, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 11, 16, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 12, 8, date('Y'))) {
             continue;
         }
         if ($tts == mktime(0, 0, 0, 12, 25, date('Y'))) {
             continue;
         }
         $p = new Programacion();
         if (!$p->exists(array('condition' => 'hora_inicio=' . $hora_inicio . ' AND hora_fin=' . $hora_fin . ' AND estado=1'))) {
             $p->micrositio_id = $micrositio_id;
             $p->hora_inicio = $hora_inicio;
             $p->hora_fin = $hora_fin;
             $p->tipo_emision_id = $tipo_emision_id;
             $p->estado = $estado;
             $p->save();
             if ($p) {
                 echo '+ Guardado ' . $pagina->nombre . ' ' . $hora_inicio . '<br />' . "\r\n";
             }
         } else {
             echo '- Existía ' . $pagina->nombre . '<br />' . "\r\n";
         }
     }
     return 0;
 }
예제 #9
0
 public function getNovedades()
 {
     return Pagina::model()->listarNovedades($this->max);
 }
예제 #10
0
파일: PgBlog.php 프로젝트: Telemedellin/tm
 protected function afterFind()
 {
     $this->articulos = Pagina::model()->findAllByAttributes(array('micrositio_id' => $this->pagina->micrositio_id, 'tipo_pagina_id' => 3, 'estado' => 2), array('order' => 'creado DESC'));
     return parent::afterFind();
 }
예제 #11
0
 protected function beforeDelete()
 {
     $this->transaccion = $this->dbConnection->getCurrentTransaction();
     if ($this->transaccion === null) {
         $this->transaccion = $this->dbConnection->beginTransaction();
     }
     try {
         $this->pagina_id = NULL;
         $this->save(NULL);
         foreach ($this->paginas as $pagina) {
             $p = Pagina::model()->findByPk($pagina->id);
             $p->delete();
         }
         foreach ($this->albumFotos as $albumFoto) {
             $af = AlbumFoto::model()->findByPk($albumFoto->id);
             $af->delete();
         }
         foreach ($this->albumVideos as $albumVideo) {
             $av = AlbumVideo::model()->findByPk($albumVideo->id);
             $av->delete();
         }
         foreach ($this->programacions as $programacion) {
             $pr = Programacion::model()->findByPk($programacion->id);
             $pr->delete();
         }
         foreach ($this->redSocials as $redSocial) {
             $r = RedSocial::model()->findByPk($redSocial->id);
             $r->delete();
         }
         return parent::beforeDelete();
     } catch (Exception $e) {
         $this->transaccion->rollback();
         return false;
     }
 }
예제 #12
0
 public function guardar()
 {
     $dir = $this->imageRoute;
     $image_base = Yii::getPathOfAlias('webroot') . '/images/';
     if ($this->validate()) {
         if (isset($this->id)) {
             //Actualizando
             $pagina = Pagina::model()->findByPk($this->id);
         } else {
             //Nuevo registro
             $pagina = new Pagina();
         }
         $transaccion = $pagina->dbConnection->beginTransaction();
         $pagina->micrositio_id = 2;
         //Novedades
         $pagina->tipo_pagina_id = 3;
         //Novedad
         $pagina->nombre = $this->nombre;
         $pagina->clase = NULL;
         $pagina->estado = $this->estado;
         $pagina->destacado = $this->destacado;
         if ($this->imagen != $pagina->background) {
             if (file_exists($image_base . $pagina->background)) {
                 @unlink($image_base . $pagina->background);
             }
             $pagina->background = $dir . $this->imagen;
         }
         if ($this->imagen_mobile != $pagina->background_mobile) {
             if (file_exists($image_base . $pagina->background_mobile)) {
                 @unlink($image_base . $pagina->background_mobile);
             }
             $pagina->background_mobile = $dir . $this->imagen_mobile;
         }
         if ($this->miniatura != $pagina->miniatura) {
             if (file_exists($image_base . $pagina->miniatura)) {
                 @unlink($image_base . $pagina->miniatura);
             }
             $pagina->miniatura = $dir . $this->miniatura;
         }
         if (!$pagina->save(false)) {
             $transaccion->rollback();
         }
         $pagina_id = $pagina->getPrimaryKey();
         if (isset($this->id)) {
             //Actualizando
             $pgAB = PgArticuloBlog::model()->findByAttributes(array('pagina_id' => $pagina_id));
         } else {
             //Nuevo registro
             $pgAB = new PgArticuloBlog();
         }
         $pgAB->pagina_id = $pagina_id;
         $pgAB->entradilla = $this->entradilla;
         $pgAB->texto = $this->texto;
         $pgAB->enlace = $this->enlace;
         $pgAB->comentarios = $this->comentarios;
         $pgAB->posicion = $this->posicion;
         $pgAB->estado = $this->estado ? 1 : 0;
         if (!$pgAB->save(false)) {
             $transaccion->rollback();
             return false;
         } else {
             $transaccion->commit();
             $this->id = $pagina_id;
             return true;
         }
     } else {
         return false;
     }
 }
예제 #13
0
 public function actionPagina()
 {
     if (!$_GET['id']) {
         throw new CHttpException(404, 'No se encontró la página solicitada');
     }
     $pagina_id = $_GET['id'];
     $pagina = Pagina::model()->findByPk($pagina_id, array('condition' => 't.estado <> 0', 'order' => 'nombre ASC'));
     $json = '{';
     $json .= '"id":"' . CHtml::encode($pagina->id) . '",';
     $json .= '"nombre":"' . CHtml::encode($pagina->nombre) . '"';
     $json .= '}';
     $this->_sendResponse(200, $json, 'application/json');
     Yii::app()->end();
 }
예제 #14
0
 public function actionPagina($id)
 {
     $this->layout = 'sitio';
     $pagina = Pagina::model()->findByPk($id);
     $this->render('pagina', array('pagina' => $pagina));
 }
예제 #15
0
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer $id the ID of the model to be loaded
  * @return Url the loaded model
  * @throws CHttpException
  */
 public function loadModel($id)
 {
     $model = Pagina::model()->with('url', 'pgArticuloBlogs')->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     return $model;
 }