public function delete()
{
$transaction = Yii::app()->db->getCurrentTransaction() === null ? Yii::app()->db->beginTransaction() : false;
try {
foreach ($this->risk_assignments as $riska) {
$riska->delete();
}
foreach ($this->answers as $answer) {
$answer->delete();
}
if (parent::delete()) {
if ($transaction) {
$transaction->commit();
}
} else {
throw new Exception('unable to delete');
}
} catch (Exception $e) {
if ($transaction) {
$transaction->rollback();
}
throw $e;
}
}