public function delete()
{
global $g_ado_db;
Geo_MapLocation::CleanFound();
$queryStr_sel = 'SELECT id FROM MapLocations WHERE fk_map_id = ?';
$queryStr_del = 'DELETE FROM Maps WHERE id = ?';
$ml_ids = array();
try {
$sel_params = array();
$sel_params[] = $this->m_data['id'];
$rows = $g_ado_db->GetAll($queryStr_sel, $sel_params);
if (is_array($rows)) {
foreach ($rows as $row) {
$ml_ids[] = array('location_id' => $row['id']);
}
}
} catch (Exception $exc) {
return false;
}
Geo_Map::RemovePoints($this->m_data['id'], $ml_ids);
try {
$del_params = array();
$del_params[] = $this->m_data['id'];
$g_ado_db->Execute($queryStr_del, $del_params);
} catch (Exception $exc) {
return false;
}
return true;
}