Subversion-Projekte lars-tiefland.em_wm

Revision

Revision 64 | Revision 114 | Zur aktuellen Revision | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

<?
        define("IN_ADMIN", true);
        require("include/common.php");
        $mode=($_POST["mode"])?$_POST["mode"]:"new";
        $id=intval(isset($_POST["id"])?$_POST["id"]:0);
        $t_name=addslashes(isset($_POST["t_name"])?$_POST["t_name"]:"");
        $t_group=intval(isset($_POST["t_group"])?$_POST["t_group"]:0);
        switch ($mode)
        {
                case "edit":
                        $title="Mannschaft $id ändern";
                        $new_mode="update";
                        break;
                case "new":
                        $title="neue Mannschaft eingeben";
                        $new_mode="save";
                        break;
                case "delete":
                case "ask":
                        $title="Mannschaft $id löschen";
                        $new_mode="delete";
                        break;
                case "save":
                        $title="neuen Mannschaft speichern";
                        $new_mode="save";
                        break;
                case "update":
                        $title="Mannschaft $id speichern";
                        $new_mode="update";
                        break;
        }
        $smarty->assign("title", $title);
        $smarty->assign("mode", $mode);
        $smarty->assign("id", $id);
        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=Team::listeTeam(0,0);
                $t_anz=$t->numRows();
                $t_max=$config->groups*$config->teams_per_group;
                if ($t_anz>=$t_max && $mode=="new")
                {
                        $smarty->assign("meld","Ein Fehler ist aufgetreten!");
                        $smarty->assign("db_meld","In dieser $config->type sind nur $t_max Mannschaften zulässig!");
                        $smarty->assign("error",true);
                        $smarty->display("meld.tpl");
                        exit;
                }
                $team=new Team($id);
                if ($mode=="save" || $mode=="update")
                {
                                $team->update($t_name, $t_group);
                }
                
                function fill_form()
                {
                        global $db, $smarty, $id, $new_mode, $title, $team;
                        $g_l=Gruppe::listeGruppe(0,0);
                        $g_namen[]="Bitte wählen!";
                        $g_ids[]=-1;
                        while($row_g=$g_l->fetchRow())
                        {
                                $g_id=$row_g["g_id"];
                                $g_name=$row_g["g_name"];
                                $g_namen[]=$g_name;
                                $g_ids[]=$g_id;
                        }
                        $smarty->assign("groups", $g_namen);
                        $smarty->assign("g_ids", $g_ids);
                        $smarty->assign("id", $id);
                        $smarty->assign("t_name", $team->t_name);
                        $smarty->assign("akt_g_id", $team->t_group);
                        $smarty->assign("mode", $new_mode);
                        $smarty->display("edit_teams.tpl");
                }
        
                if ($mode=="edit" OR $mode=="new")
                {
                        fill_form();
                }
                else
                {
                        switch ($mode)
                        {
                                case "save":
                                case "delete":
                                case "update":
                                        $res=$team->save($mode);
                                        if (true == DB::isError($res))
                                        {
                                                $smarty->assign("meld", "Ein Fehler ist aufgetreten!");
                                                $smarty->assign("db_meld", $res->getUserInfo());
                                                $smarty->assign("error", true);
                                        }
                                        else
                                        {
                                                if ($mode=="save")
                                                {
                                                        $akt="hinzugefügt";
                                                }
                                                elseif ($mode=="update")
                                                {
                                                        $akt="geändert";
                                                }
                                                else
                                                {
                                                        $akt="gelöscht";
                                                }
                                                $logger->info("Mannschaft $team->t_name erfolgreich $akt");
                                                $smarty->assign("meld", "Datensatz erfolgreich $akt!");
                                                $smarty->assign("db_meld", "");
                                                $smarty->assign("error", false);
                                                $smarty->assign("save",($mode=="save")?true:false);
                                                $smarty->assign("upd",($mode!="save")?true:false);
                                                $smarty->assign("weiter",($mode=="save")?"eine weitere Mannschaft eingeben":"eine weitere Mannschaft ändern/löschen");
                                                $smarty->assign("script", "liste_teams.php");
                                        }
                                        $smarty->display("meld.tpl");
                                        break;
                                case "ask":
                                        $smarty->assign("title", $title);
                                        $smarty->assign("art", "Mannschaft");
                                        $smarty->assign("id", $id);
                                        $smarty->assign("name",$team->t_name);
                                        $smarty->display("del.tpl");
                                        break;
                                default:
                                        $smarty->assign("meld","Ein Fehler ist aufgetreten!");
                                        $smarty->assign("db_meld", "Ungültiger Modus!");
                                        $smarty->assign("error", true);
                                        $smarty->display("meld.tpl");
                        }
                }
        }
?>