Subversion-Projekte lars-tiefland.em_wm

Revision

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

Revision Autor Zeilennr. Zeile
16 lars 1
<?
2
	define("IN_ADMIN", true);
3
	require("include/common.php");
54 lars 4
	$mode=($_POST["mode"])?$_POST["mode"]:"new";
66 lars 5
	$id=intval(isset($_POST["id"])?$_POST["id"]:0);
6
	$g_m1=intval(isset($_POST["g_m1"])?$_POST["g_m1"]:0);
7
	$g_m2=intval(isset($_POST["g_m2"])?$_POST["g_m2"]:0);
8
	$g_g1=intval(isset($_POST["g_g1"])?$_POST["g_g1"]:0);
9
	$g_g2=intval(isset($_POST["g_g2"])?$_POST["g_g2"]:0);
10
	$g_location=intval(isset($_POST["g_location"])?$_POST["g_location"]:0);
11
	$g_type=intval(isset($_POST["g_typ"])?$_POST["g_typ"]:-1);
12
	$g_name=addslashes(isset($_POST["g_name"])?$_POST["g_name"]:"");
13
	$month=intval(isset($_POST["Month"])?$_POST["Month"]:-1);
14
	$day=intval(isset($_POST["Day"])?$_POST["Day"]:-1);
15
	$hour=intval(isset($_POST["Hour"])?$_POST["Hour"]:-1);
92 lars 16
	$min=intval(isset($_POST["Minute"])?$_POST["Minute"]:-1);
47 lars 17
	$g=Spiele::listSpiele(0,0);
18
	$g_anz=$g->numRows();
19
	$g_max=2*$config->groups*$config->teams_per_group;
92 lars 20
	if ($hour >=0 AND $day > 0 AND $month > 0 && $min > -1)
54 lars 21
	{
92 lars 22
		$g_date=mktime($hour, $min, 0, $month, $day, $config->year);
54 lars 23
	}
47 lars 24
	if ($g_anz>=$g_max && $mode=="new")
25
	{
26
		$smarty->assign("meld","Ein Fehler ist aufgetreten!");
27
		$smarty->assign("db_meld","In dieser $config->type sind nur $g_max Spiele zulässig!");
28
		$smarty->assign("error",true);
29
		$smarty->display("meld.tpl");
30
		exit;
31
	}
44 lars 32
	$smarty->assign("mode", $mode);
33
	$smarty->assign("id", $id);
45 lars 34
	if ($a->getAuth())
32 lars 35
	{
54 lars 36
		if($u->u_type!=1 && $mode!="edit")
37
		{
38
			$meld="Ein Fehler ist aufgetreten!";
39
			$db_meld="Nur Administratoren haben Zugriff auf diese Funktion!";
40
			$smarty->assign("meld", $meld);
41
			$smarty->assign("db_meld", $db_meld);
42
			$smarty->assign("error", true);
43
			$smarty->display("meld.tpl");
44
			exit;
45
		}
44 lars 46
		$game=new Spiele($id);
47
		$t=new Typ($g_type);
48
		$sql_t="SELECT count(*) AS anzahl FROM games WHERE g_type=$g_type";
49
		$res_t=$db->query($sql_t);
52 lars 50
		$row_t=$res_t->fetchRow();
44 lars 51
		$anz=$row_t["anzahl"];
52
		if ($mode=="save" || $mode=="update")
53
		{
54
			$game->update($g_name, $g_m1, $g_m2, $g_g1, $g_g2, $g_location, $g_date, $g_type);
55
		}
56
 
57
		function fill_form()
58
		{
59
			global $db, $smarty, $id, $new_mode, $g_date, $title, $game;
111 lars 60
			$teams[-1]="Bitte wählen!";
44 lars 61
			$typ_namen[]="Bitte wählen!";
62
			$typ_ids[]=-1;
63
			$l_namen[]="Bitte wählen!";
64
			$l_ids[]=-1;
65
			$g_l=Gruppe::listeGruppe(0,0);
52 lars 66
			while($row_g=$g_l->fetchRow())
16 lars 67
			{
44 lars 68
				$g_id=$row_g["g_id"];
69
				$g_name=$row_g["g_name"];
111 lars 70
//				$t_namen[]="---------- Gruppe $g_name ----------";
71
//				$t_ids[]=-1;
44 lars 72
				$sql_t="SELECT * FROM teams WHERE t_group=$g_id";
73
				$t_l=$db->query($sql_t);
52 lars 74
				while ($row_t=$t_l->fetchRow())
44 lars 75
				{
76
					$t_name=$row_t["t_name"];
54 lars 77
					$t_aus=$row_t["t_aus"];
44 lars 78
					$t_id=$row_t["t_id"];
111 lars 79
//					$t_namen[]=$t_name;
80
//					$t_ids[]=$t_id;
81
					$teams["Gruppe $g_name"][$t_id]=$t_name;
44 lars 82
				}
19 lars 83
			}
44 lars 84
			$l_l=Ort::listeOrt(0,0);
52 lars 85
			while ($row_l=$l_l->fetchRow())
44 lars 86
			{
87
				$l_name=$row_l["l_name"];
91 lars 88
				$l_name2=$row_l["l_name2"];
44 lars 89
				$l_id=$row_l["l_id"];
91 lars 90
				$l_namen[]="$l_name - $l_name2";
44 lars 91
				$l_ids[]=$l_id;
92
			}
93
			$typ_l=Typ::listeTyp(0,0);
52 lars 94
			while ($row_typ=$typ_l->fetchRow())
44 lars 95
			{
96
				$typ_name=$row_typ["t_name"];
97
				$typ_id=$row_typ["t_id"];
98
				$typ_namen[]=$typ_name;
99
				$typ_ids[]=$typ_id;
100
			}
101
			$smarty->assign("id", $id);
54 lars 102
			$smarty->assign("g_date", (!($g_date))?$game->g_date:$g_date);
44 lars 103
			$smarty->assign("g_name", ($game->g_name));
104
			$smarty->assign("akt_typ_id", $game->g_type);
105
			$smarty->assign("akt_m1_id", $game->g_m1);
106
			$smarty->assign("akt_m2_id", $game->g_m2);
107
			$smarty->assign("akt_l_id", $game->g_location);
108
			$smarty->assign("g_g1", $game->g_g1);
109
			$smarty->assign("g_g2", $game->g_g2);
111 lars 110
//			$smarty->assign("t_namen", $t_namen);
111
			$smarty->assign("teams", $teams);
112
//			$smarty->assign("t_ids", $t_ids);
44 lars 113
			$smarty->assign("typ_namen", $typ_namen);
114
			$smarty->assign("typ_ids", $typ_ids);
115
			$smarty->assign("l_ids", $l_ids);
116
			$smarty->assign("l_namen", $l_namen);
117
			$smarty->assign("mode", $new_mode);
118
			$smarty->assign("title", $title);
119
			$smarty->assign("extra", ($new_mode=="save")?"disabled=\"disabled\"":"");
120
			$smarty->display("edit_games.tpl");
16 lars 121
		}
44 lars 122
 
123
		switch ($mode)
16 lars 124
		{
44 lars 125
			case "edit":
126
				$title="Spiel $id ändern";
127
				$new_mode="update";
128
				break;
129
			case "new":
130
				$title="neues Spiel eingeben";
131
				$new_mode="save";
132
				break;
133
			case "delete":
134
			case "ask":
135
				$title="Spiel $id löschen";
136
				$new_mode="delete";
137
				break;
138
			case "save":
139
				$title="neues Spiel speichern";
140
				$new_mode="save";
111 lars 141
				$smarty->assign("save",true);
142
				$smarty->assign("weiter","ein weiteres Spiel eingeben");
44 lars 143
				break;
144
			case "update":
145
				$title="Spiel $id speichern";
146
				$new_mode="update";
147
				break;
19 lars 148
		}
44 lars 149
		if ($mode=="edit" OR $mode=="new")
18 lars 150
		{
44 lars 151
			fill_form();
18 lars 152
		}
44 lars 153
		else
18 lars 154
		{
44 lars 155
			switch ($mode)
156
			{
157
				case "save":
158
				case "delete":
159
				case "update":
160
					if (!checkdate($month, $day, $config->year))
30 lars 161
					{
35 lars 162
						$meld="Ein Fehler ist aufgetreten!";
44 lars 163
						$db_meld="$day.$month.$config->year ist kein gültiges Datum!";
35 lars 164
						$error=true;
165
						$smarty->assign("db_meld", $db_meld);
166
						$smarty->assign("error", $error);
167
						$smarty->assign("meld", $meld);
168
						fill_form();
30 lars 169
					}
170
					else
171
					{
44 lars 172
						if (($mode=="save" && $anz >=$t->t_max) || ($mode=="update" && $anz>$t->t_max))
31 lars 173
						{
44 lars 174
								$meld="Ein Fehler ist aufgetreten!";
175
								$db_meld="Es kann nur $t->t_max Spiele vom Typ \"$t->t_name\" geben! Bitte den Typ oder ein vorhandenes Spiel ändern!";
176
							$error=true;
177
							$smarty->assign("db_meld", $db_meld);
178
							$smarty->assign("error", $error);
179
							$smarty->assign("meld", $meld);
180
							fill_form();
31 lars 181
						}
182
						else
183
						{
44 lars 184
							$res=$game->save($mode);
185
							if (true == DB::isError($res))
35 lars 186
							{
44 lars 187
								$smarty->assign("meld", "Ein Fehler ist aufgetreten!");
188
								$smarty->assign("db_meld", $res->getUserInfo());
189
								$smarty->assign("error", true);
35 lars 190
							}
191
							else
192
							{
44 lars 193
								if ($mode=="save")
194
								{
195
									$akt="hinzugefügt";
196
								}
197
								elseif ($mode=="update")
198
								{
199
									$akt="geändert";
200
								}
201
								else
202
								{
203
									$akt="gelöscht";
204
								}
205
								$smarty->assign("title", $title);
206
								$smarty->assign("meld", "Datensatz erfolgreich $akt!");
207
								$smarty->assign("db_meld", "");
64 lars 208
								$logger->info("Spiel $game->g_name erfolgreich $akt!");
44 lars 209
								$smarty->assign("error", false);
54 lars 210
								if ($mode=="update")
211
								{
58 lars 212
									if ($game->g_type!=4)
54 lars 213
									{
65 lars 214
										if ($game->g_type <4)
58 lars 215
										{
65 lars 216
											if($game->g_g1 < $game->g_g2)
217
											{
218
												$m_id=$game->g_m1;
219
											}
220
											else
221
											{
222
												$m_id=$game->g_m2;
223
											}
224
 
58 lars 225
										}
226
										else
227
										{
65 lars 228
											$m_id="$game->g_m1 OR t_id=$game->g_m2";
58 lars 229
										}
59 lars 230
										$sql="UPDATE teams SET t_aus='$game->g_type' WHERE t_id=$m_id";
231
										$res=$db->query($sql);
232
										if(DB::isError($res))
233
										{
234
											$smarty->assign("meld", "Ein Fehler ist aufgetreten!");
235
											$smarty->assign("db_meld", $db->getUserInfo);
236
											$smarty->assign("error", true);
237
										}
54 lars 238
									}
239
								}
35 lars 240
							}
44 lars 241
							$smarty->display("meld.tpl");
31 lars 242
						}
30 lars 243
					}
44 lars 244
					break;
245
				case "ask":
246
					$smarty->assign("title", $title);
247
					$smarty->assign("art", "Spiel");
248
					$smarty->assign("id", $id);
249
					$smarty->assign("name",$game->g_name);
250
					$smarty->display("del.tpl");
251
					break;
252
				default:
253
					$smarty->assign("title", $title);
254
					$smarty->assign("meld","Ein Fehler ist aufgetreten!");
255
					$smarty->assign("db_meld", "Ungültiger Modsu!");
256
					$smarty->assign("error", true);
257
					$smarty->display("meld.tpl");
258
			}
18 lars 259
		}
260
	}
16 lars 261
?>