Subversion-Projekte lars-tiefland.webhosting

Revision

Revision 25 | Revision 33 | Zur aktuellen Revision | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?
31 lars 2
	// $URL: file:///svn/repos/webhosting/trunk/order.php $ last modified in Revision $Rev: 31 $ by $Author: lars $ at $Date: 2007-04-08 21:51:28 +0200 (So, 08 Apr 2007) $
23 lars 3
	define(MAX_EMAIL,10);
4
 
1 lars 5
	require("functions.php");
14 lars 6
 
7
	//Smarty
1 lars 8
	require("libs/Smarty.class.php");
14 lars 9
	$smarty=new Smarty();
10
 
11
	//PEAR
12
	require ("Validate.php");
13
	$val=new Validate();
14
 
15
	//Variablen
1 lars 16
	$mode=isset($_POST["mode"])?$_POST["mode"]:"step1";
17
	$name=addslashes((isset($_POST["name"]))?$_POST["name"]:"");
18
	$vname=addslashes((isset($_POST["firstname"]))?$_POST["firstname"]:"");
19
	$email=addslashes((isset($_POST["email"]))?$_POST["email"]:"");
20
	$domain=addslashes((isset($_POST["domain"]))?$_POST["domain"]:"");
25 lars 21
	$email1=addslashes((isset($_POST["email1"]) && !empty($_POST["email1"]))?$_POST["email1"]:"");
22
	$email2=addslashes((isset($_POST["email2"]) && !empty($_POST["email2"]))?$_POST["email2"]:"");
23
	$email3=addslashes((isset($_POST["email3"]) && !empty($_POST["email3"]))?$_POST["email3"]:"");
24
	$email4=addslashes((isset($_POST["email4"]) && !empty($_POST["email4"]))?$_POST["email4"]:"");
25
	$email5=addslashes((isset($_POST["email5"]) && !empty($_POST["email5"]))?$_POST["email5"]:"");
26
	$email6=addslashes((isset($_POST["email6"]) && !empty($_POST["email6"]))?$_POST["email6"]:"");
27
	$email7=addslashes((isset($_POST["email7"]) && !empty($_POST["email7"]))?$_POST["email7"]:"");
28
	$email8=addslashes((isset($_POST["email8"]) && !empty($_POST["email8"]))?$_POST["email8"]:"");
29
	$email8=addslashes((isset($_POST["email9"]) && !empty($_POST["email9"]))?$_POST["email9"]:"");
30
	$email10=addslashes((isset($_POST["email10"]) && !empty($_POST["email10"]))?$_POST["email10"]:"");
1 lars 31
	$emails=addslashes((isset($_POST["emails"]))?$_POST["emails"]:"");
23 lars 32
	if ($emails=="")
33
	{
25 lars 34
		$emails.="$email1@$domain\n";
35
		$emails.=($email2)?"$email2@$domain\n":"";
36
		$emails.=($email3)?"$email3@$domain\n":"";
37
		$emails.=($email4)?"$email4@$domain\n":"";
31 lars 38
		$emails.=($email5)?"$email5@$domain\n":"";
39
		$emails.=($email6)?"$email6@$domain\n":"";
40
		$emails.=($email7)?"$email7@$domain\n":"";
41
		$emails.=($email8)?"$email8@$domain\n":"";
42
		$emails.=($email9)?"$email9@$domain\n":"";
43
		$emails.=($email10)?"$email10@$domain\n":"";
23 lars 44
	}
25 lars 45
	$emails=trim($emails);
18 lars 46
	$email_type=intval((isset($_POST["email_type"]))?$_POST["email_type"]:-1);
1 lars 47
	$targets=addslashes((isset($_POST["targets"]))?$_POST["targets"]:"");
48
	$space=intval((isset($_POST["space"]))?$_POST["space"]:0);
8 lars 49
	$traffic=intval((isset($_POST["traffic"]))?$_POST["traffic"]:100);
18 lars 50
	$db_anz=intval((isset($_POST["db_anz"]))?$_POST["db_anz"]:0);
19 lars 51
	$webmail=intval((isset($_POST["webmail"]))?$_POST["webmail"]:1);
8 lars 52
	$phpbb=intval((isset($_POST["phpbb"]))?$_POST["phpbb"]:1);
1 lars 53
	$copper=intval((isset($_POST["copper"]))?$_POST["copper"]:0);
54
	$svn=intval((isset($_POST["svn"]))?$_POST["svn"]:0);
55
	$admin_name=addslashes((isset($_POST["admin_name"]))?$_POST["admin_name"]:"");
56
	$admin_pw=addslashes((isset($_POST["admin_pw"]))?$_POST["admin_pw"]:"");
57
	$repo=addslashes((isset($_POST["repo"]))?$_POST["repo"]:"");
58
	$svn_user=addslashes((isset($_POST["svn_user"]))?$_POST["svn_user"]:"");
18 lars 59
 
1 lars 60
	$email_arr=explode("\n",$emails);
25 lars 61
	$email1=($email_arr[0])?substr($email_arr[0],0,strpos($email_arr[0],"@")):"";
62
	$email2=($email_arr[1])?substr($email_arr[1],0,strpos($email_arr[1],"@")):"";
63
	$email3=($email_arr[1])?substr($email_arr[2],0,strpos($email_arr[2],"@")):"";
64
	$email4=($email_arr[2])?substr($email_arr[3],0,strpos($email_arr[3],"@")):"";
65
	$email5=($email_arr[4])?substr($email_arr[4],0,strpos($email_arr[4],"@")):"";
66
	$email6=($email_arr[5])?substr($email_arr[5],0,strpos($email_arr[5],"@")):"";
67
	$email7=($email_arr[6])?substr($email_arr[6],0,strpos($email_arr[6],"@")):"";
68
	$email8=($email_arr[7])?substr($email_arr[7],0,strpos($email_arr[7],"@")):"";
69
	$email9=($email_arr[8])?substr($email_arr[8],0,strpos($email_arr[8],"@")):"";
70
	$email10=($email_arr[9])?substr($email_arr[9],0,strpos($email_arr[9],"@")):"";
1 lars 71
	$target_arr=explode("\n",$targets);
72
	$svn_user_arr=explode("\n",$svn_user);
73
	$e_anz=count($email_arr);
74
	$t_anz=count($target_arr);
6 lars 75
	if($t_anz < $e_anz && $email_type==0)
76
	{
77
		$smarty->assign("meld","Du hast $e_anz E-Mail Adressen angeben. Die Anzahl der Zieladressen beträgt aber nur $t_anz. Für die restlichen E-Mail Adressen wird \"${target_arr[$t_anz-1]}\" verwendet. Sollte dies nicht richtig sein, so gehe bitte zurück und gleiche die Anzahlen ab!");
78
		$smarty->assign("db_meld","");
79
		$smarty->assign("error",false);
80
	}
81
	if($t_anz > $e_anz && $email_type==0)
82
	{
83
		$smarty->assign("meld","Du hast $e_anz E-Mail Adressen angeben. Die Anzahl der Zieladressen beträgt dagegen $t_anz. Für die E-Mail Adresse \"${email_arr[$e_anz-1]}\" werden die übrigen Zieladressen verwendet. Sollte dies nicht richtig sein, so gehe bitte zurück und gleiche die Anzahlen ab!");
84
		$smarty->assign("db_meld","");
85
		$smarty->assign("error",false);
86
	}
21 lars 87
 
88
	if ($e_anz > MAX_EMAIL)
89
	{
90
		$smarty->assign("meld","Du hast mehr als ".MAX_EMAIL." E-Mail Adressen angegeben. Bitte verkleinere die Anzahl!");
91
		$smarty->assign("db_meld","");
92
		$error=true;
93
		$smarty->assign("error",$error);
94
	}
95
	if ($t_anz > MAX_EMAIL)
96
	{
97
		$smarty->assign("meld","Du hast mehr als ".MAX_EMAIL." Zieladressen angegeben. Bitte verkleinere die Anzahl!");
98
		$smarty->assign("db_meld","");
99
		$error=true;
100
		$smarty->assign("error",$error);
101
	}
6 lars 102
	$smarty->assign("y_n_out",array("ja","nein"));
103
	$smarty->assign("y_n_val",array("1","0"));
19 lars 104
	$smarty->assign("webm_out",array("V-Webmail","Squirrelmail"));
105
	$smarty->assign("webm_val",array(1,2));
6 lars 106
	$values[]="-1";
107
	$out[]="----- Bitte wählen! -----";
108
	for ($i=1;$i<=10;$i++)
109
	{
110
		$values[]=$i*100;
111
		$out[]=$i*100;
112
	}
113
	for ($i=2;$i<=10;$i++)
114
	{
115
		$values[]=$i*1000;
116
		$out[]=$i*1000;
117
	}
118
	$db_values[]="-1";
119
	$db_out[]="----- Bitte wählen! -----";
120
	for ($i=1;$i<=10;$i++)
121
	{
122
		$db_values[]=$i;
123
		$db_out[]=$i;
124
	}
125
	$smarty->assign("out1",array("Weiterleitung","POP3/IMAP"));
126
	$smarty->assign("val1",array("0","1"));
127
	$smarty->assign("db_out", $db_out);
128
	$smarty->assign("db_val", $db_values);
129
	$smarty->assign("mb_out", $out);
130
	$smarty->assign("mb_val", $values);
1 lars 131
	switch($mode)
132
	{
6 lars 133
		case "change":
134
			$smarty->assign("title","Daten ändern");
8 lars 135
			$tpl_file="order.tpl";
6 lars 136
			break;
1 lars 137
		case "step2":
15 lars 138
			$email_opts["use_rfc822"]=true;
139
			$email_opts["check_domain"]=true;
140
			if (!$val->email($email, $email_opts))
141
			{
142
				$smarty->assign("meld","$email ist keine gültige E-Mail Adresse!");
143
				$email_opts["use_rfc822"]=true;
144
				$email_opts["check_domain"]=false;
145
				if (!$val->email($email, $email_opts))
146
				{
147
					$smarty->assign("db_meld","E-Mail Adresse nicht RFC822 konform!");
148
				}
149
				else
150
				{
151
					$email_opts["use_rfc822"]=false;
152
					$email_opts["check_domain"]=true;
153
					if (!$val->email($email, $email_opts))
154
					{
155
						$smarty->assign("db_meld","Domain existiert nicht!");
156
					}
157
				}
158
				$smarty->assign("error", true);
159
				$error=true;
160
			}
14 lars 161
			if (!$error)
162
			{
15 lars 163
				if (strpos($domain,".")===false || $domain[strlen($domain)-1]==".")
164
				{
165
					$smarty->assign("focus","domain");
166
					$smarty->assign("meld","$domain ist keine gültige Domain!");
167
					$error=true;
168
					$smarty->assign("title", "Ich möchte auf dem Server von Lars Tiefland gehostet werden");
169
					$tpl_file="order.tpl";
170
				}
171
				else
172
				{
16 lars 173
					if (!check_domain($domain, $vname, $name))
174
					{
175
						$smarty->assign("meld","Die Domain $domain gehört nicht $vname $name! Eine Benutzung dieser Domain ist daher nur mit einem KK-Antrag und Zustimmung des bisherigen Eigentümser möglich!");
176
					}
23 lars 177
					$smarty->assign("focus","email1");
15 lars 178
					$smarty->assign("title", "E-Mail Konfiguration");
179
					$tpl_file="order2.tpl";
180
				}
14 lars 181
			}
182
			else
183
			{
184
				$smarty->assign("title", "Ich möchte auf dem Server von Lars Tiefland gehostet werden");
185
				$tpl_file="order.tpl";
186
			}
1 lars 187
			break;
188
		case "step3":
189
			$smarty->assign("focus","space");
190
			$smarty->assign("title","Konfiguration von Webspace und Datenbanken");
191
			$tpl_file="order3.tpl";
192
			break;
193
		case "step4":
194
			$smarty->assign("title","Zu installierende Software");
195
			$tpl_file="order4.tpl";
196
			break;
197
		case "step5":
198
			if($svn && (!$phpbb || !$copper))
199
			{
200
				$smarty->assign("focus","repo");
201
			}
202
			if($phpbb || $copper)
203
			{
204
				$smarty->assign("focus","admin_name");
205
			}
206
			$smarty->assign("title","Installierte Software konfigurieren");
207
			$tpl_file="order5.tpl";
208
			break;
209
		case "step6":
210
			$smarty->assign("title","Bitte alle Daten noch einmal kotrollieren!");
211
			$tpl_file="order6.tpl";
212
			break;
213
		case "finish":
20 lars 214
			$save=speichern($name, $vname, $email, $domain, $email_arr, $email_type, $target_arr, $space, $traffic, $db_anz, $webmail, $phpbb, $copper, $svn, $admin_name, $admin_pw, $repo, $svn_user_arr);
1 lars 215
			if($save)
216
			{
217
				$sql="SELECT k_id FROM kunden where email='$email'";
218
				$res=mysql_query($sql);
219
				$row=mysql_fetch_assoc($res);
220
				$k_id=$row["k_id"];
221
				$pdf=generate_pdf($k_id);
222
				$mail=send_email($k_id);
223
				if($mail)
224
				{
225
					$meld="Deine Bewerbung wurde erfolgreich eingetragen! Ich werde mich möglichst schnell bei Dir melden! Du erhälst jetzt noch eine Auftragsbestätigung!";
226
					$db_meld="";
227
					$error=false;
228
				}
229
				else
230
				{
231
					$meld="Deine Bewerbung wurde erfolgreich eingetragen! Ich werde mich möglichst schnell bei Dir melden! Leider ist beim Versand der Auftragsbestätigung ein Fehler aufgetreten!";
232
					$db_meld="";
233
					$error=false;
234
				}
235
				mysql_query("COMMIT");
236
				send_order($k_id);
237
				$smarty->assign("weiter","PDF-Datei ansehen");
238
				$smarty->assign("upd",true);
239
				$smarty->assign("script","Kunde_$k_id.pdf");
240
			}
241
			else
242
			{
243
				$meld="Leider ist ein Fehler aufgetreten! Bitte versuche es später noch einmal!";
244
				$db_meld=mysql_error();
245
				mysql_query("ROLLBACK");
246
				$error=true;
247
			}
248
			$smarty->assign("meld",$meld);
249
			$smarty->assign("db_meld",$db_meld);
250
			$smarty->assign("error",$error);
251
			$smarty->assign("title", "Abschluß der Bestellung");
252
			$tpl_file="finish.tpl";
253
			break;
254
		default:
255
			$smarty->assign("focus","name");
256
			$smarty->assign("title", "Ich möchte auf dem Server von Lars Tiefland gehostet werden");
257
			$tpl_file="order.tpl";
258
			break;
259
	}
260
	$smarty->assign("name",$name);
261
	$smarty->assign("vname",$vname);
262
	$smarty->assign("email",$email);
24 lars 263
	$smarty->assign("email1",$email1);
264
	$smarty->assign("email2",$email2);
265
	$smarty->assign("email3",$email3);
266
	$smarty->assign("email4",$email4);
267
	$smarty->assign("email5",$email5);
268
	$smarty->assign("email6",$email6);
269
	$smarty->assign("email7",$email7);
270
	$smarty->assign("email8",$email8);
271
	$smarty->assign("email9",$email9);
272
	$smarty->assign("email10",$email10);
1 lars 273
	$smarty->assign("domain",$domain);
274
	$smarty->assign("emails",$emails);
18 lars 275
	$smarty->assign("email_type",$email_type);
1 lars 276
	$smarty->assign("targets",$targets);
277
	$smarty->assign("space",$space);
278
	$smarty->assign("traffic",$traffic);
18 lars 279
	$smarty->assign("db_anz",$db_anz);
19 lars 280
	$smarty->assign("webmail",$webmail);
18 lars 281
	$smarty->assign("phpbb",$phpbb);
282
	$smarty->assign("copper",$copper);
283
	$smarty->assign("svn",$svn);
284
	$smarty->assign("admin_name",$admin_name);
285
	$smarty->assign("admin_pw",$admin_pw);
1 lars 286
	$smarty->assign("repo",$repo);
287
	$smarty->assign("svn_user",$svn_user);
288
	$smarty->display("header.tpl");
289
	$smarty->display("$tpl_file");
290
	$smarty->display("footer.tpl");
291
?>