Subversion-Projekte lars-tiefland.em_wm

Revision

Revision 114 | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
132 lars 1
<?php
114 lars 2
    define( "IN_ADMIN", true );
3
    require ( "include/common.php" );
4
    $mode = ( $_POST["mode"] ) ? $_POST["mode"] : "new";
5
    $id = intval( isset($_POST["id"]) ? $_POST["id"] : 0 );
6
    $g_name = addslashes( isset($_POST["g_name"]) ? $_POST["g_name"] : "" );
7
    $g = Gruppe::listeGruppe( 0, 0 );
8
    $g_anz = $g->numRows();
9
    $g_max = $config->groups;
10
    switch ( $mode )
11
    {
12
        case "edit":
13
            $title = "Gruppe $id ändern";
14
            $new_mode = "update";
15
            break;
16
        case "new":
17
            $title = "neue Gruppe eingeben";
18
            $new_mode = "save";
19
            break;
20
        case "delete":
21
        case "ask":
22
            $title = "Gruppe $id löschen";
23
            $new_mode = "delete";
24
            break;
25
        case "save":
26
            $title = "neue Gruppe speichern";
27
            $new_mode = "save";
28
            break;
29
        case "update":
30
            $title = "Gruppe $id speichern";
31
            $new_mode = "update";
32
            break;
33
    }
34
    $smarty->assign( "title", $title );
35
    $smarty->assign( "mode", $mode );
36
    $smarty->assign( "id", $id );
37
    if ( $a->getAuth() )
38
    {
39
        if ( $u->u_type != 1 && $mode != "edit" )
40
        {
41
            $meld = "Ein Fehler ist aufgetreten!";
42
            $db_meld =
43
                "Nur Administratoren haben Zugriff auf diese Funktion!";
44
            $smarty->assign( "meld", $meld );
45
            $smarty->assign( "db_meld", $db_meld );
46
            $smarty->assign( "error", true );
47
            $smarty->display( "meld.tpl" );
48
            exit;
49
        }
50
        if ( $g_anz >= $g_max && $mode == "new" )
51
        {
52
            $smarty->assign( "meld", "Ein Fehler ist aufgetreten!" );
53
            $smarty->assign( "db_meld", "In dieser $config->type sind nur $g_max Gruppen zulässig!" );
54
            $smarty->assign( "error", true );
55
            $smarty->display( "meld.tpl" );
56
            exit;
57
        }
58
        $gruppe = new Gruppe( $id );
59
        if ( $mode == "save" || $mode == "update" )
60
        {
61
            $gruppe->update( $g_name );
62
        }
63
 
64
        function fill_form()
65
        {
66
            global $db, $smarty, $id, $new_mode, $title, $gruppe;
67
            $smarty->assign( "id", $id );
68
            $smarty->assign( "g_name", $gruppe->g_name );
69
            $smarty->assign( "mode", $new_mode );
70
            $smarty->display( "edit_groups.tpl" );
71
        }
72
 
73
        if ( $mode == "edit" or $mode == "new" )
74
        {
75
            fill_form();
76
        }
77
        else
78
        {
79
            switch ( $mode )
80
            {
81
                case "save":
82
                case "delete":
83
                case "update":
84
                    $res = $gruppe->save( $mode );
85
                    if ( true == DB::isError($res) )
86
                    {
87
                        $smarty->assign( "meld",
88
                            "Ein Fehler ist aufgetreten!" );
89
                        $smarty->assign( "db_meld", $res->getUserInfo() );
90
                        $smarty->assign( "error", true );
91
                    }
92
                    else
93
                    {
94
                        if ( $mode == "save" )
95
                        {
96
                            $akt = "hinzugefügt";
97
                        } elseif ( $mode == "update" )
98
                        {
99
                            $akt = "geändert";
100
                        }
101
                        else
102
                        {
103
                            $akt = "gelöscht";
104
                        }
105
                        $logger->info( "Gruppe $gruppe->g_name erfolgreich $akt" );
106
                        $smarty->assign( "meld", "Datensatz erfolgreich $akt!" );
107
                        $smarty->assign( "db_meld", "" );
108
                        $smarty->assign( "error", false );
109
                        $smarty->assign( "save", ($mode == "save") ? true : false );
110
                        $smarty->assign( "upd", ($mode != "save") ? true : false );
111
                        $smarty->assign( "weiter", ($mode == "save") ?
112
                            "eine weitere Gruppe eingeben" :
113
                            "eine weitere Gruppe ändern/löschen" );
114
                        $smarty->assign( "script", "liste_groups.php" );
115
                    }
116
                    $smarty->display( "meld.tpl" );
117
                    break;
118
                case "ask":
119
                    $smarty->assign( "title", $title );
120
                    $smarty->assign( "art", "Gruppe" );
121
                    $smarty->assign( "id", $id );
122
                    $smarty->assign( "name", $gruppe->g_name );
123
                    $smarty->display( "del.tpl" );
124
                    break;
125
                default:
126
                    $smarty->assign( "meld", "Ein Fehler ist aufgetreten!" );
127
                    $smarty->assign( "db_meld", "Ungültiger Modus!" );
128
                    $smarty->assign( "error", true );
129
                    $smarty->display( "meld.tpl" );
130
            }
131
        }
132
    }
47 lars 133
?>