Intentaré explicarme lo mejor posible.
Por un lado tengo AlumnosController que cuando se hace un create envía un email con todos los datos del nuevo alumno (Lo que hace realmente es que hace es un render de la vista Alumnos/view con un layot vacio, lo guarda en la variable $html y lo envía por email)
AlumnosController.php Este me funciona OK
public function actionCreate() {
$model = new Alumnos;
if (isset($_POST['Alumnos'])) {
$model->setAttributes($_POST['Alumnos']);
$model->FechaInscripcion =date("Y-m-d h:i:s",time() );
if ($model->save()) {
if (Yii::app()->getRequest()->getIsAjaxRequest())
Yii::app()->end();
else
{
$criteria = new CDbCriteria;
$criteria->addCondition('IdPerfil=1 or IdPerfil=3');
$listaCorreo = Usuariosaplicacion::model()->findAll($criteria);
foreach($listaCorreo as $indice=>$valor){
$listaCorreo2[]=$valor['email'];
}
$this->layout = 'vacio';
$html=$this->render('view', array(
'model' => $this->loadModel($model->primaryKey, 'Alumnos'),
),true);
//use 'contact' view from views/mail
$mail = new YiiMailer('contact', array('message' => $html, 'name' => '', 'description' => '') );
$mail->setFrom(Yii::app()->params['adminEmail'], 'Curso');
$mail->setSubject("Nuevo alumno dado de alta");
$mail->setTo($listaCorreo2);
$mail->send();
$this->redirect(array('update', 'id' => $model->primaryKey));
}
}
}
$this->render('create', array( 'model' => $model));
}
Por otro lado lo que quiero hacer es que cuando se llame a actionCreate del controlador AvisosController este haga un render de la vista alumnos/view para guardarla en la variable $html y enviarla por email, el problema lo tengo en que no se como hacer un render de alumno/view si estoy en el controlador AvisosController, como se ve en el código de arriba dicho render lo hago sin problema desde la el controlador AlumnosController
AvisisController.php Este es que no me funciona
public function actionCreate()
{
$model = new Avisos;
if (isset($_POST['Avisos']))
{
//$model->setAttributes($_POST['Avisos']);
$model->setAttributes($_POST['Avisos']);
$model->IdUsuario=Yii::app()->user->id;
$model->IdAlumno=Yii::app()->getSession()->get('IdAlumno');
$model->Fecha=date("Y-m-d h:i:s",time());
if ($model->save())
{
if (Yii::app()->getRequest()->getIsAjaxRequest())
{
Yii::app()->end();
}else
{
//Inicio email
$criteria = new CDbCriteria;
$criteria->addCondition('Id='.(int)$model->IdUsuarioDestino.' or IdPerfil=3');
$listaCorreo = Usuariosaplicacion::model()->findAll($criteria);
foreach($listaCorreo as $indice=>$valor){
$listaCorreo2[]=$valor['email'];
}
$this->layout = 'vacio';
echo "IdAlumno=".$_SESSION['IdAlumno'];
$modelAlumnos=new Alumnos();
$html=$this->render('view', array(
'model' => $this->loadModel($modelAlumnos->primaryKey, 'Alumnos'),
),true);
//use 'contact' view from views/mail
$mail = new YiiMailer('contact', array('message' => $html, 'name' => '', 'description' => '') );
//set properties
$mail->setFrom(Yii::app()->params['adminEmail'], 'Cursodel');
$mail->setSubject("Nuevo Aviso");
$mail->setTo($listaCorreo2);
$mail->send();
//Fin email
$this->redirect(array('alumnos/update', 'id' => Yii::app()->getSession()->get('IdAlumno')));
}
}
}
$this->render('create', array( 'model' => $model));
}
Uff menudo rollo espero haberme explicado bien.
Sugerencias???
Saludos