public function actionModificarElemento($id) { $filtro_item = FiltroItem::model()->findByPk($id); if (isset($_POST['FiltroItem'])) { $old_padre = $filtro_item->padre; $filtro_item->attributes = $_POST['FiltroItem']; if ($filtro_item->padre != '') { FiltroItem::model()->updateByPk($filtro_item->padre, array('hijos' => 1)); } else { $filtro_item->padre = 0; } if ($filtro_item->padre != $old_padre) { $el_padre = FiltroItem::model()->findAllByAttributes(array('padre' => $old_padre)); if (!$el_padre) { FiltroItem::model()->updateByPk($old_padre, array('hijos' => 0)); } } $pgFiltro = PgFiltro::model()->with('pagina')->findByPk($filtro_item->pg_filtro_id); if ($filtro_item->save()) { Yii::app()->user->setFlash('success', $filtro_item->elemento . ' guardado con éxito'); $this->redirect(array('pagina/view', 'id' => $pgFiltro->pagina->id)); } //if($filtro_item->save()) } //if(isset($_POST['FiltroItem'])) // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); $this->render('modificar-elemento', array('model' => $filtro_item)); }
/** * 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)); }
<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_filtro_id', array('class' => 'col-sm-2 control-label')); ?> <div class="col-sm-6"> <?php echo $form->dropDownList($model, 'pg_filtro_id', CHtml::listData(PgFiltro::model()->findAll(), 'id', 'pagina.nombre'), array('class' => 'form-control')); ?> </div> <?php echo $form->error($model, 'pg_filtro_id'); ?> </div> <div class="form-group"> <?php echo $form->label($model, 'padre', array('class' => 'col-sm-2 control-label')); ?> <div class="col-sm-6"> <?php echo $form->dropDownList($model, 'padre', CHtml::listData(FiltroItem::model()->findAllByAttributes(array('pg_filtro_id' => $model->pg_filtro_id)), 'id', 'elemento'), array('class' => 'form-control chosen', 'empty' => 'Sin padre')); ?> </div> <?php echo $form->error($model, 'padre');