Esempio n. 1
0
 function delete($id)
 {
     $this->myLogger->enter();
     $jornada = $this->jornadaID;
     if ($id < 0) {
         return $this->error("Equipos::delete():Invalid Equipo ID:{$id} provided");
     }
     // fase 1: buscamos datos del equipo a borrar
     $team = $this->__getArray("Equipos", $id);
     if (!is_array($team)) {
         return $this->error("Equipos::delete(): No encuentro el equipo {$id} en la lista de equipos de esta jornada");
     }
     // fase 2: comprobamos que no sea el equipo por defecto
     if (intval($team['DefaultTeam']) != 0) {
         return $this->error("Equipos::delete():Cannot delete default team for this Contest");
     }
     // fase 3: reasignamos los perros al equipo por defecto
     $dteam = $this->getDefaultTeam()['ID'];
     $res = $this->query("UPDATE Resultados SET Equipo={$dteam} WHERE (Equipo={$id})");
     if (!$res) {
         return $this->error($this->conn->error);
     }
     // fase 4: borramos el equipo del orden de salida de equipos de la manga
     $mng = $this->__select("*", "Mangas", "(Jornada={$jornada})", "", "");
     // list of mangas for this jornada
     foreach ($mng['rows'] as $manga) {
         $this->myLogger->trace("Eliminando el equipo:{$id} de Orden_Equipos jornada:{$jornada} manga:{$manga['ID']}");
         $osobj = new OrdenSalida("Equipos::remove", $manga['ID']);
         // add team to Orden_Equipos in every related mangas
         $osobj->removeFromTeamList($id);
     }
     // fase 5: finalmente borramos el equipo antiguo de la base de datos
     $res = $this->query("DELETE FROM Equipos WHERE (ID={$id})");
     if (!$res) {
         return $this->error($this->conn->error);
     }
     $this->myLogger->leave();
     return "";
 }