Arreglado error al borrar idioma de candidato
git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_PROFIND_Web/trunk@68 3fe1ab16-cfe0-e34b-8c9f-7d8c168d430d
This commit is contained in:
parent
e81ded2173
commit
bdf9c1c41b
@ -117,11 +117,14 @@ class CandidatoController extends Controller {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Guardar los datos
|
// Guardar los datos
|
||||||
|
$errores = array();
|
||||||
$transaccion = Yii::app()->db->beginTransaction();
|
$transaccion = Yii::app()->db->beginTransaction();
|
||||||
try {
|
try {
|
||||||
Yii::trace('Guardando el candidato', 'application.controllers.CandidatoController');
|
Yii::trace('Guardando el candidato', 'application.controllers.CandidatoController');
|
||||||
if (!$candidato->save())
|
if (!$candidato->save()) {
|
||||||
|
$errores = array_merge($errores, $candidato->getErrors());
|
||||||
throw new CException('Error al guardar el candidato');
|
throw new CException('Error al guardar el candidato');
|
||||||
|
}
|
||||||
|
|
||||||
if (($quitarFotografia == '1') && ($candidato->fotografia->tieneFotografia())) {
|
if (($quitarFotografia == '1') && ($candidato->fotografia->tieneFotografia())) {
|
||||||
Yii::trace('Eliminando la fotografía del candidato', 'application.controllers.CandidatoController');
|
Yii::trace('Eliminando la fotografía del candidato', 'application.controllers.CandidatoController');
|
||||||
@ -136,16 +139,21 @@ class CandidatoController extends Controller {
|
|||||||
// Titulaciones
|
// Titulaciones
|
||||||
if (!empty($listaTitulacionesBorrar)) {
|
if (!empty($listaTitulacionesBorrar)) {
|
||||||
Yii::trace('Eliminando titulaciones marcadas para borrar', 'application.controllers.CandidatoController');
|
Yii::trace('Eliminando titulaciones marcadas para borrar', 'application.controllers.CandidatoController');
|
||||||
foreach ($listaIdiomasBorrar as $candidatoTitulacion) {
|
foreach ($listaTitulacionesBorrar as $candidatoTitulacion) {
|
||||||
if (!$candidatoTitulacion->delete())
|
if (!$candidatoTitulacion->delete()) {
|
||||||
|
$errores = array_merge($errores, $candidatoTitulacion->getErrors());
|
||||||
throw new CException('Error al eliminar una titulación del candidato');
|
throw new CException('Error al eliminar una titulación del candidato');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
$listaTitulacionesBorrar = NULL;
|
||||||
}
|
}
|
||||||
if (!empty($candidato->titulaciones)) {
|
if (!empty($candidato->titulaciones)) {
|
||||||
Yii::trace('Guardando la lista de titulaciones', 'application.controllers.CandidatoController');
|
Yii::trace('Guardando la lista de titulaciones', 'application.controllers.CandidatoController');
|
||||||
foreach ($candidato->titulaciones as $candidatoTitulacion) {
|
foreach ($candidato->titulaciones as $candidatoTitulacion) {
|
||||||
if (!$candidatoTitulacion->save())
|
if (!$candidatoTitulacion->save()) {
|
||||||
|
$errores = array_merge($errores, $candidatoTitulacion->getErrors());
|
||||||
throw new CException('Error al guardar una titulación del candidato');
|
throw new CException('Error al guardar una titulación del candidato');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -153,15 +161,22 @@ class CandidatoController extends Controller {
|
|||||||
if (!empty($listaIdiomasBorrar)) {
|
if (!empty($listaIdiomasBorrar)) {
|
||||||
Yii::trace('Eliminando idiomas marcados para borrar', 'application.controllers.CandidatoController');
|
Yii::trace('Eliminando idiomas marcados para borrar', 'application.controllers.CandidatoController');
|
||||||
foreach ($listaIdiomasBorrar as $candidatoIdioma) {
|
foreach ($listaIdiomasBorrar as $candidatoIdioma) {
|
||||||
if (!$candidatoIdioma->delete())
|
Yii::trace('Eliminando idioma... ', 'application.controllers.CandidatoController');
|
||||||
|
Yii::trace(CVarDumper::dumpAsString($candidatoIdioma->attributes), 'application.controllers.CandidatoController');
|
||||||
|
if (!$candidatoIdioma->delete()) {
|
||||||
|
$errores = array_merge($errores, $candidatoIdioma->getErrors());
|
||||||
throw new CException('Error al eliminar un idioma del candidato');
|
throw new CException('Error al eliminar un idioma del candidato');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
$listaIdiomasBorrar = NULL;
|
||||||
}
|
}
|
||||||
if (!empty($candidato->idiomas)) {
|
if (!empty($candidato->idiomas)) {
|
||||||
Yii::trace('Guardando la lista de idiomas', 'application.controllers.CandidatoController');
|
Yii::trace('Guardando la lista de idiomas', 'application.controllers.CandidatoController');
|
||||||
foreach ($candidato->idiomas as $candidatoIdioma) {
|
foreach ($candidato->idiomas as $candidatoIdioma) {
|
||||||
if (!$candidatoIdioma->save())
|
if (!$candidatoIdioma->save()) {
|
||||||
|
$errores = array_merge($errores, $candidatoIdioma->getErrors());
|
||||||
throw new CException('Error al guardar un idioma del candidato');
|
throw new CException('Error al guardar un idioma del candidato');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -177,12 +192,6 @@ class CandidatoController extends Controller {
|
|||||||
Yii::app()->user->setFlash('error', Yii::t('profind', 'Se ha producido un error al actualizar el candidato'));
|
Yii::app()->user->setFlash('error', Yii::t('profind', 'Se ha producido un error al actualizar el candidato'));
|
||||||
|
|
||||||
if (YII_DEBUG) {
|
if (YII_DEBUG) {
|
||||||
$errores = $candidato->getErrors();
|
|
||||||
if (isset($candidatoTitulacion))
|
|
||||||
$errores = array_merge($errores, $candidatoTitulacion->getErrors());
|
|
||||||
if (isset($candidatoIdioma))
|
|
||||||
$errores = array_merge($errores, $candidatoIdioma->getErrors());
|
|
||||||
|
|
||||||
$resultado = array();
|
$resultado = array();
|
||||||
foreach ($errores as $campo => $mensaje)
|
foreach ($errores as $campo => $mensaje)
|
||||||
$resultado[$campo] = $mensaje;
|
$resultado[$campo] = $mensaje;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user