function despublicar() { Doctrine_Manager::connection()->beginTransaction(); //Marco el maestro como publicado $this->publicado = 0; $this->publicado_at = NULL; $this->actualizable = 0; $this->save(); //Despublico las versiones; $versiones = $this->Versiones; foreach ($versiones as $v) { if ($v->publicado == 1) { $v->publicado = 0; $v->publicado_at = NULL; $v->save(); $versionactualizada = $v; } } //Lo escribo en el log $log = new Historial(); $log->descripcion = '<strong>Actualización de Estado de Publicación</strong><br />Versión despublicada'; $log->Ficha = $this; $log->FichaVersion = $versionactualizada; $log->UsuarioBackend = UsuarioBackendSesion::usuario(); $log->save(); Doctrine_Manager::connection()->commit(); }