Exemplo n.º 1
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCrear($id, $tipo_pagina_id = 2)
 {
     if (!isset(Yii::app()->session['dirpa'])) {
         Yii::app()->session['dirpa'] = 'backgrounds/paginas/' . date('Y') . '/' . date('m') . '/';
     }
     $micrositio = $id ? Micrositio::model()->with('seccion')->findByPk($id)->id : 0;
     $model = new Pagina();
     $model->micrositio_id = $micrositio;
     $ppc = TipoPagina::model()->findByPk($tipo_pagina_id)->tabla;
     if (!$ppc) {
         throw new Exception(400, "tipo_pagina_id incorrecto");
     }
     $contenido = new $ppc();
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Pagina'])) {
         $model->attributes = $_POST['Pagina'];
         $m = Micrositio::model()->with('seccion')->findByPk($_POST['Pagina']['micrositio_id']);
         $model->tipo_pagina_id = $tipo_pagina_id;
         if (isset(Yii::app()->session['dirpa'])) {
             $dirpa = Yii::app()->session['dirpa'];
         }
         $model->background = $_POST['Pagina']['background'] != '' ? $dirpa . $_POST['Pagina']['background'] : NULL;
         $model->background_mobile = $_POST['Pagina']['background_mobile'] != '' ? $dirpa . $_POST['Pagina']['background_mobile'] : NULL;
         $model->miniatura = $_POST['Pagina']['miniatura'] ? $dirpa . $_POST['Pagina']['miniatura'] : NULL;
         if ($model->save()) {
             if (isset($_POST['PgGenericaSt'])) {
                 $contenido->texto = $_POST['PgGenericaSt']['texto'];
             }
             if (isset($_POST['PgArticuloBlog'])) {
                 $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->descripcion = $_POST['PgFiltro']['descripcion'];
             }
             if (isset($_POST['PgBloques'])) {
             }
             if (isset($_POST['PgEventos'])) {
                 $contenido->descripcion = $_POST['PgEventos']['descripcion'];
             }
             if (isset($_POST['PgBlog'])) {
                 $contenido->ver_fechas = $_POST['PgBlog']['ver_fechas'];
             }
             if (isset($_POST['PgFormularioJf'])) {
                 $contenido->formulario_id = $_POST['PgFormularioJf']['formulario_id'];
             }
             $contenido->estado = $_POST['Pagina']['estado'];
             $contenido->pagina_id = $model->getPrimaryKey();
             if ($contenido->save()) {
                 $this->redirect(array('view', 'id' => $model->id));
             } else {
                 $model->delete();
             }
         }
     }
     $this->render('crear', array('model' => $model, 'partial' => $ppc, 'contenido' => $contenido));
 }