public function actionUpdate($id) { $album_foto = AlbumFoto::model()->findByPk($id); $micrositio = Micrositio::model()->with('seccion')->findByPk($album_foto->micrositio_id); if (isset($_POST['AlbumFoto'])) { $nombre = $album_foto->nombre; $album_foto->attributes = $_POST['AlbumFoto']; if ($album_foto->save()) { Yii::app()->user->setFlash('success', $album_foto->nombre . ' guardado con éxito'); $this->redirect(array($this->slugger($micrositio->seccion->nombre) . '/view', 'id' => $album_foto->micrositio_id)); } //if($album_foto->save()) } //if(isset($_POST['AlbumFoto'])) // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); $this->render('modificar', array('model' => $album_foto)); }
/** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCrear($id) { $red_social = new RedSocial(); if (isset($_POST['RedSocial'])) { $red_social->attributes = $_POST['RedSocial']; $micrositio = Micrositio::model()->with('pagina')->findByPk($red_social->micrositio_id); if ($red_social->save()) { Yii::app()->user->setFlash('success', $red_social->tipoRedSocial->nombre . ' ' . $red_social->usuario . ' guardado con éxito'); $this->redirect(array('view', 'id' => $micrositio->id)); } //if($red_social->save()) } //if(isset($_POST['RedSocial'])) // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); $micrositio = $id ? Micrositio::model()->with('pagina')->findByPk($id) : 0; $red_social->micrositio_id = $micrositio; $this->render('crear', array('model' => $red_social)); }
private function get_defaults() { $d1 = new CDbCacheDependency("SELECT GREATEST(MAX(creado), MAX(modificado)) FROM micrositio WHERE id = " . $this->_micrositio_id . " AND estado <> 0"); $generos = Micrositio::model()->cache(21600, $d1)->with('micrositio_x_genero')->findByPk($this->_micrositio_id); $listado = array(); foreach ($generos->micrositio_x_genero as $genero) { $dependencia = new CDbCacheDependency("SELECT MAX(creado) FROM micrositio_x_genero WHERE genero_id = " . $genero->genero_id . " AND micrositio_id != " . $this->_micrositio_id . " AND estado <> 0"); $mxg = MicrositioXGenero::model()->cache(21600, $dependencia)->with('micrositio')->findAllByAttributes(array('genero_id' => $genero->genero_id), 'micrositio_id != ' . $this->_micrositio_id); foreach ($mxg as $m) { if ($m->micrositio->miniatura) { $listado[$m->micrositio_id] = $m->micrositio; } } } if (count($listado)) { shuffle($listado); } return $listado; }
/** * 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 Micrositio the loaded model * @throws CHttpException */ public function loadModel($id) { $model = Micrositio::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
protected function asignar_menu($id, $menu_id) { $m = Micrositio::model()->findByPk($id); $m->menu_id = $menu_id; if ($m->save()) { return true; } else { return false; } }
public function actionCrearitemajax($id) { if (!$id) { throw new CHttpException(404, 'Invalid request'); } $menuItem = new MenuItem(); $menu = Menu::model()->findByPk($id); $menuItem->menu_id = $menu->id; if (isset($_POST['MenuItem'])) { $menuItem->attributes = $_POST['MenuItem']; $menuItem->tipo_link_id = 2; $menuItem->url_id = NULL; $menuItem->clase = 'fancybox fancybox.ajax'; if ($menuItem->save()) { Yii::app()->user->setFlash('success', 'Item ' . $menuItem->label . ' guardado con éxito'); $this->redirect(array('view', 'id' => $menuItem->menu_id)); } //if($menuItem->save()) } //if(isset($_POST['MenuItem'])) $micrositios = Micrositio::model()->with('url')->findAllByAttributes(array('menu_id' => $id)); $u = $this->createAbsoluteUrl('/' . $micrositios[0]->url->slug); $paginas = array($u . '#imagenes' => 'Imágenes', $u . '#videos' => 'Videos'); $this->render('crearItemajax', array('model' => $menuItem, 'menu' => $menu, 'paginas' => $paginas)); }
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; } }
);', CClientScript::POS_READY); ?> <div class="form"> <?php $form = $this->beginWidget('CActiveForm', array('id' => 'url-form', 'enableAjaxValidation' => false, 'htmlOptions' => array('role' => 'form', 'class' => 'form-horizontal'))); ?> <?php echo $form->errorSummary($model); ?> <div class="form-group"> <?php echo $form->label($model, 'micrositio_id', array('class' => 'col-sm-2 control-label')); ?> <div class="col-sm-5"> <?php echo $form->dropDownList($model, 'micrositio_id', CHtml::listData(Micrositio::model()->findAll('seccion_id = 2 OR seccion_id = 3 OR seccion_id = 4'), 'id', 'nombre'), array('class' => 'form-control chosen')); ?> <?php /*$this->widget('zii.widgets.jui.CJuiAutoComplete',array( 'name'=>'micrositio', 'sourceUrl' => bu('api/micrositios'), 'value' => $model->micrositio->nombre, 'options'=>array( 'minLength'=>'2', 'delay'=>'0', 'select' => new CJavaScriptExpression('function( event, ui ) { $( "#Programacion_micrositio_id" ).val( ui.item.id ); }'), 'change' => new CJavaScriptExpression('function( event, ui ) { $( "#Programacion_micrositio_id" ).attr( "value", "" ); }'),
<div class="box-header"> <h3 class="box-title">Configuración</h3> </div> <div class="box-body"> <div class="form-group"> <?php echo $form->label($model, 'micrositio_id'); ?> <?php $opciones = array('class' => 'form-control chosen'); if (!$model->isNewRecord) { $opciones['disabled'] = true; } ?> <?php echo $form->dropDownList($model, 'micrositio_id', CHtml::listData(Micrositio::model()->findAll(), 'id', 'nombre'), $opciones); ?> <?php echo $form->error($model, 'micrositio_id'); ?> </div> <div class="form-group"> <?php echo $form->label($model, 'nombre'); ?> <?php echo $form->textField($model, 'nombre', array('class' => 'form-control', 'required' => true)); ?> <?php echo $form->error($model, 'nombre'); ?>
protected function afterSave() { if (!$this->isNewRecord) { if (isset($this->oldAttributes['nombre']) && $this->nombre != $this->oldAttributes['nombre']) { $micrositio = Micrositio::model()->findByPk($this->micrositio_id); $url = Url::model()->findByPk($this->url_id); if ($micrositio->seccion->nombre == 'sin-seccion') { $slug = $this->slugger($micrositio->nombre) . '/' . $this->slugger($this->nombre); } else { $slug = $this->slugger($micrositio->seccion->nombre) . '/' . $this->slugger($micrositio->nombre) . '/' . $this->slugger($this->nombre); } $slug = $this->verificarSlug($slug); $url->slug = $slug; $url->save(); } } parent::afterSave(); }
$form = $this->beginWidget('CActiveForm', array('id' => 'url-form', 'enableAjaxValidation' => false, 'htmlOptions' => array('role' => 'form'))); $this->renderPartial('//layouts/commons/_form_error_summary', array('form' => $form, 'model' => $model)); ?> <div class="row"> <div class="col-sm-8"> <div class="box box-primary"> <div class="box-header"> <h3 class="box-title">Contenido</h3> </div> <div class="box-body"> <div class="form-group"> <?php echo $form->label($model, 'micrositio_id'); ?> <?php echo $form->dropDownList($model, 'micrositio_id', CHtml::listData(Micrositio::model()->findAll(), 'id', 'nombre'), array('class' => 'form-control', 'required' => true)); ?> <?php echo $form->error($model, 'micrositio_id'); ?> </div> <div class="form-group"> <?php echo $form->label($model, 'tipo_red_social_id'); ?> <?php echo $form->dropDownList($model, 'tipo_red_social_id', CHtml::listData(TipoRedSocial::model()->findAll(), 'id', 'nombre'), array('class' => 'form-control', 'required' => true)); ?> <?php echo $form->error($model, 'tipo_red_social_id'); ?>
?> <div class="row"> <?php if (Yii::app()->user->checkAccess('asignar_relacionados')) { ?> <div class="col-sm-12"> <?php $form = $this->beginWidget('CActiveForm', array('id' => 'url-form', 'action' => $this->createUrl('relacionado/asignar'), 'enableAjaxValidation' => false, 'htmlOptions' => array('role' => 'form'))); $mxr = new MicrositioXRelacionado(); ?> <div class="nav navbar-right input-group col-sm-12"> <?php echo $form->hiddenField($mxr, 'micrositio_id', array('value' => $model->id)); ?> <?php echo $form->dropDownList($mxr, 'relacionado_id', CHtml::listData(Micrositio::model()->findAll(array('order' => 'nombre ASC')), 'id', 'nombre'), array('class' => 'form-control chosen', 'required' => true)); ?> <span class="input-group-btn"> <?php echo CHtml::submitButton('Asignar +', array('class' => 'btn btn-primary btn-block')); ?> </span> </div> <?php $this->endWidget(); ?> </div> <?php } ?> <?php
/** * 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) { if (!isset(Yii::app()->session['dirpa'])) { Yii::app()->session['dirpa'] = 'backgrounds/paginas/' . date('Y') . '/' . date('m') . '/'; } $datos = Pagina::model()->cargarPagina($id); // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); $contenido = $datos['contenido']; if (isset($_POST['Pagina'])) { $m = Micrositio::model()->with('seccion')->findByPk($datos['pagina']->micrositio_id); if (isset(Yii::app()->session['dirpa'])) { $dirpa = Yii::app()->session['dirpa']; } $datos['pagina']->nombre = $_POST['Pagina']['nombre']; $datos['pagina']->meta_descripcion = $_POST['Pagina']['meta_descripcion']; if ($_POST['Pagina']['background'] != $datos['pagina']->background) { @unlink(Yii::getPathOfAlias('webroot') . '/images/' . $datos['pagina']->background); $datos['pagina']->background = $_POST['Pagina']['background'] != '' ? $dirpa . $_POST['Pagina']['background'] : NULL; } if ($_POST['Pagina']['background_mobile'] != $datos['pagina']->background_mobile) { @unlink(Yii::getPathOfAlias('webroot') . '/images/' . $datos['pagina']->background_mobile); $datos['pagina']->background_mobile = $_POST['Pagina']['background_mobile'] != '' ? $dirpa . $_POST['Pagina']['background_mobile'] : NULL; } if ($_POST['Pagina']['miniatura'] != $datos['pagina']->miniatura) { @unlink(Yii::getPathOfAlias('webroot') . '/images/' . $datos['pagina']->miniatura); $datos['pagina']->miniatura = $_POST['Pagina']['miniatura'] != '' ? $dirpa . $_POST['Pagina']['miniatura'] : NULL; } $datos['pagina']->estado = $_POST['Pagina']['estado']; $datos['pagina']->destacado = $_POST['Pagina']['destacado']; //$datos['pagina']->attributes = $_POST['Pagina']; if ($datos['pagina']->save()) { if (isset(Yii::app()->session['dirpa'])) { $dirpa = Yii::app()->session['dirpa']; } if (isset($_POST['PgGenericaSt'])) { $contenido = PgGenericaSt::model()->findByPk($_POST['PgGenericaSt']['id']); $contenido->texto = $_POST['PgGenericaSt']['texto']; } if (isset($_POST['PgArticuloBlog'])) { $contenido = PgArticuloBlog::model()->findByPk($_POST['PgArticuloBlog']['id']); $contenido->posicion = $_POST['PgArticuloBlog']['posicion']; $contenido->entradilla = $_POST['PgArticuloBlog']['entradilla']; $contenido->texto = $_POST['PgArticuloBlog']['texto']; $contenido->enlace = $_POST['PgArticuloBlog']['enlace']; $contenido->comentarios = $_POST['PgArticuloBlog']['comentarios']; } if (isset($_POST['PgDocumental'])) { $contenido = PgDocumental::model()->findByPk($_POST['PgDocumental']['id']); $contenido->titulo = $_POST['PgDocumental']['titulo']; $contenido->duracion = $_POST['PgDocumental']['duracion']; $contenido->anio = $_POST['PgDocumental']['anio']; $contenido->sinopsis = $_POST['PgDocumental']['sinopsis']; } if (isset($_POST['PgFiltro'])) { $contenido = PgFiltro::model()->findByPk($_POST['PgFiltro']['id']); $contenido->descripcion = $_POST['PgFiltro']['descripcion']; } if (isset($_POST['PgBloques'])) { $contenido = PgBloques::model()->findByPk($_POST['PgBloques']['id']); } if (isset($_POST['PgEventos'])) { $contenido = PgEventos::model()->findByPk($_POST['PgEventos']['id']); $contenido->descripcion = $_POST['PgEventos']['descripcion']; } if (isset($_POST['PgBlog'])) { $contenido = PgBlog::model()->findByPk($_POST['PgBlog']['id']); $contenido->ver_fechas = $_POST['PgBlog']['ver_fechas']; } if (isset($_POST['PgFormularioJf'])) { $contenido = PgFormularioJf::model()->findByPk($_POST['PgFormularioJf']['id']); $contenido->formulario_id = $_POST['PgFormularioJf']['formulario_id']; } if (isset($_POST['PgFormulario'])) { $contenido = PgFormulario::model()->findByPk($_POST['PgFormulario']['id']); $contenido->texto = $_POST['PgFormulario']['texto']; } $contenido->estado = $_POST['Pagina']['estado']; if (isset($contenido) && $contenido->save()) { $this->redirect(array('view', 'id' => $datos['pagina']->getPrimaryKey())); } } } $this->render('update', array('model' => $datos['pagina'], 'partial' => $datos['partial'], 'contenido' => $contenido)); }
public function actionCargarProgramacion() { $url_id = $_GET['tm']->id; $micrositio = Micrositio::model()->cargarPorUrl($url_id); $pagina = new stdClass(); $pagina->id = NULL; $pagina->clase = 'programacion'; $pagina->tipoPagina = new stdClass(); $pagina->tipoPagina->tabla = 'programacion'; date_default_timezone_set('America/Bogota'); setlocale(LC_ALL, 'es_ES.UTF-8'); $sts = $tts = mktime(0, 0, 0, date('m'), date('d'), date('Y')); $dia = isset($_GET['dia']) ? $_GET['dia'] : date('d'); $mes = isset($_GET['mes']) ? $_GET['mes'] : date('m'); $anio = isset($_GET['anio']) ? $_GET['anio'] : date('Y'); // set current date if (checkdate($mes, $dia, $anio)) { $sts = mktime(0, 0, 0, $mes, $dia, $anio); } // 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; } $p = new Programacion(); $programas = $p->getDay($sts); $contenido = $this->renderPartial('_programacion', array('programas' => $programas, 'menu' => $semana), true); //Contenido relacionado $relacionados = new Relacionados($micrositio->id); $this->render('micrositio', array('seccion' => $micrositio->seccion, 'micrositio' => $micrositio, 'pagina' => $pagina, 'hoy' => $tts, 'formulario' => false, 'galeria' => false, 'video' => false, 'contenido' => $contenido, 'relacionados' => $relacionados)); }
/** * 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) { $album_video = AlbumVideo::model()->findByPk($id); $micrositio = Micrositio::model()->with('seccion')->findByPk($album_video->micrositio_id); if (isset($_POST['AlbumVideo'])) { $t = $album_video->thumb; $nombre = $album_video->nombre; $album_video->attributes = $_POST['AlbumVideo']; if ($_POST['AlbumVideo']['thumb'] != $t) { @unlink(Yii::getPathOfAlias('webroot') . '/images/' . $album_video->thumb); $album_video->thumb = 'videos/' . $_POST['AlbumVideo']['thumb']; } if ($album_video->save()) { Yii::app()->user->setFlash('success', $album_video->nombre . ' guardado con éxito'); $this->redirect(array(strtolower($micrositio->seccion->nombre) . '/view', 'id' => $album_video->micrositio_id)); } //if($album_video->save()) } //if(isset($_POST['AlbumVideo'])) // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); $this->render('modificar', array('model' => $album_video)); }
public function actionMicrositios($term = '') { $dependencia = new CDbCacheDependency("SELECT GREATEST(MAX(creado), MAX(modificado)) FROM micrositio WHERE (seccion_id = 2 OR seccion_id = 3 OR seccion_id = 4) AND estado <> 0"); $micrositios = Micrositio::model()->cache(86400, $dependencia)->with('seccion')->findAll('(seccion_id = 2 OR seccion_id = 3 OR seccion_id = 4) AND t.nombre LIKE ":term"', array(':term' => "%{$term}%")); $json = '['; foreach ($micrositios as $micrositio) { $json .= '{'; $json .= '"label":"' . CHtml::encode($micrositio->nombre) . '",'; $json .= '"value":"' . CHtml::encode($micrositio->nombre) . '",'; $json .= '"id":"' . $micrositio->id . '"'; $json .= '},'; } $json = substr($json, 0, -1); $json .= ']'; $this->_sendResponse(200, $json, 'application/json'); Yii::app()->end(); }