/** * Displays a particular model. * @param integer $id the ID of the model to be displayed */ public function actionView($id) { if (isset($_POST['asignar_menu'])) { $this->asignar_menu($id, $_POST['Micrositio']['menu_id']); } $model = Micrositio::model()->with('url', 'pagina', 'menu')->findByPk($id); $pagina = Pagina::model()->findByAttributes(array('micrositio_id' => $model->id, 'tipo_pagina_id' => 1)); $contenido = PgPrograma::model()->with('horario')->findByAttributes(array('pagina_id' => $model->pagina->id)); $videos = new CActiveDataProvider('AlbumVideo', array('criteria' => array('condition' => 'micrositio_id = ' . $id, 'with' => array('videos', 'url')))); $fotos = new CActiveDataProvider('AlbumFoto', array('criteria' => array('condition' => 'micrositio_id = ' . $id, 'with' => array('fotos', 'url')))); $horario = new CActiveDataProvider('Horario', array('criteria' => array('condition' => 'pg_programa_id = ' . $pagina->pgProgramas->id, 'with' => array('tipoEmision')), 'pagination' => array('pageSize' => 25))); $redes_sociales = new CActiveDataProvider('RedSocial', array('criteria' => array('condition' => 'micrositio_id = ' . $id, 'with' => array('tipoRedSocial', 'micrositio')))); $generos = new CActiveDataProvider('MicrositioXGenero', array('criteria' => array('condition' => 'micrositio_id = ' . $id, 'with' => array('genero')))); $relacionados = new CActiveDataProvider('MicrositioXRelacionado', array('criteria' => array('condition' => 'micrositio_id = ' . $id, 'order' => 'orden ASC', 'with' => array('micrositio')))); $paginas = new Pagina('search'); $paginas->micrositio_id = $id; //$paginas->tipo_pagina_id = 2; if (isset($_GET['Pagina'])) { $paginas->attributes = $_GET['Pagina']; } if ($model->menu) { $menu = new CActiveDataProvider('MenuItem', array('criteria' => array('condition' => 'menu_id=' . $model->menu->id, 'with' => array('urlx')))); } else { $menu = false; } $this->render('ver', array('model' => $model, 'contenido' => $pagina->pgProgramas, 'videos' => $videos, 'fotos' => $fotos, 'horario' => $horario, 'redes_sociales' => $redes_sociales, 'generos' => $generos, 'relacionados' => $relacionados, 'paginas' => $paginas, 'menu' => $menu)); }
/** * 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) { $horario = Horario::model()->findByPk($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'); $pgPrograma = PgPrograma::model()->with('pagina')->findByPk($horario->pg_programa_id); $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('modificar', array('model' => $horario)); }
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 = 2; //Programas $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 = 1; //Página programa } $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 $pgP = PgPrograma::model()->findByAttributes(array('pagina_id' => $pagina_id)); } else { if (!$micrositio->asignar_pagina($pagina)) { $transaccion->rollback(); } $pgP = new PgPrograma(); $pgP->pagina_id = $pagina_id; } $pgP->resena = $this->resena; $pgP->estado = $this->estado; if (!$pgP->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, 'pg_programa_id', array('class' => 'col-sm-2 control-label')); ?> <div class="col-sm-4"> <?php echo $form->dropDownList($model, 'pg_programa_id', CHtml::listData(PgPrograma::model()->with('pagina')->findAll(), 'id', 'pagina.nombre'), array('class' => 'form-control')); ?> </div> <?php echo $form->error($model, 'pg_programa_id'); ?> </div> <div class="form-group"> <?php echo $form->label($model, 'dia_semana', array('class' => 'col-sm-2 control-label')); ?> <div class="col-sm-2"> <?php echo $form->dropDownList($model, 'dia_semana', array('1' => 'Lunes', '2' => 'Martes', '3' => 'Miércoles', '4' => 'Jueves', '5' => 'Viernes', '6' => 'Sábado', '7' => 'Domingo'), array('class' => 'form-control')); ?> </div>