Subversion-Projekte lars-tiefland.em_wm

Revision

Revision 54 | Revision 123 | Zur aktuellen Revision | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

<?
        define("IN_ADMIN",true);
        require("include/common.php");
        $smarty->assign("title", "Gruppentabelle berechnen");
        $a=User_login(true);
        if($a->getAuth())
        {
        if($u->u_type!=1 && $mode!="edit")
        {
                $meld="Ein Fehler ist aufgetreten!";
                $db_meld="Nur Administratoren haben Zugriff auf diese Funktion!";
                $smarty->assign("meld", $meld);
                $smarty->assign("db_meld", $db_meld);
                $smarty->assign("error", true);
                $smarty->display("meld.tpl");
                exit;
        }
                $t_l=Team::listeTeam(0,0);
                $i=0;
                while($row_t=$t_l->fetchRow())
                {
                        $diff=0;
                        $g1=0;
                        $g2=0;
                        $p1=0;
                        $t_id=$row_t["t_id"];
                        $t=new Team($t_id);
                        $today=mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"));
                        $sql_g="SELECT * FROM games WHERE (g_m1=$t_id OR g_m2=$t_id) AND g_type=1 AND g_date<=$today";
                        $res_g=$db->query($sql_g);
                        while($row_g=$res_g->fetchRow())
                        {
                                if (($row_g["g_g1"]>$row_g["g_g2"] AND $row_g["g_m1"]==$t_id) OR ($row_g["g_g2"]>$row_g["g_g1"] AND $row_g["g_m2"]==$t_id))
                                {
                                                $p1+=3;
                                }
                                else
                                {
                                        if ($row_g["g_g1"]==$row_g["g_g2"])
                                        {
                                                $p1+=1;
                                        }
                                        else
                                        {
                                                $p1+=0;
                                        }
                                }
                                if ($row_g["g_m1"]==$t_id)
                                {
                                        $g1+=$row_g["g_g1"];
                                        $g2+=$row_g["g_g2"];
                                }
                                else
                                {
                                        $g2+=$row_g["g_g1"];
                                        $g1+=$row_g["g_g2"];
                                }
                        }
                        $diff=$g1 - $g2;
                        $erg[$i]["tore"]="$g1 : $g2";
                        $i++;
                        $sql_u="UPDATE teams SET t_diff=$diff, t_points=$p1, t_goals='$g1 : $g2' WHERE t_id=$t_id";
                        $res_u=$db->query($sql_u);
                        if (true == DB::isError($res_u))
                        {
                                $error="true";
                                $meld="Ein Fehler ist aufgetreten!";
                                $db_meld=$res_u->getUserInfo();
                                break;
                        }
                        else
                        {
                                $meld="Gruppentabelle erfolgreich erstellt!";
                                $error=false;
                        }
                }
                $g_l=Gruppe::listeGruppe(0,0);
                while ($row=$g_l->fetchRow())
                {
                        $t_pos=1;
                        $g_id=$row["g_id"];
                        $sql="SELECT * FROM teams WHERE t_group=$g_id ORDER BY t_points DESC, t_diff DESC";
                        $res=$db->query($sql);
                        while ($row_t=$res->fetchRow())
                        {
                                $t_id=$row_t["t_id"];
                                $t_aus=($t_pos > 2)?1:-1;
                                $sql_u="UPDATE teams SET t_pos=$t_pos, t_aus='$t_aus' WHERE t_id=$t_id";
                                $res_u=$db->query($sql_u);
                                if (true == DB::isError($res_u))
                                {
                                        $error="true";
                                        $meld="Ein Fehler ist aufgetreten!";
                                        $db_meld=$res_u->getUserInfo();
                                        break;
                                }
                                else
                                {
                                        $meld="Gruppentabelle erfolgreich erstellt!";
                                        $logger->info($meld);
                                        $error=false;
                                }
                                $t_pos++;
                        } 
                }
                $smarty->assign("error", $error);
                $smarty->assign("meld", $meld);
                $smarty->assign("db_meld", $db_meld);
                $smarty->display("meld.tpl");
        }
?>