Subversion-Projekte lars-tiefland.webhosting

Revision

Revision 34 | Revision 37 | Zur aktuellen Revision | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?
33 lars 2
	// $URL: file:///svn/repos/webhosting/trunk/functions.php $ last modified in Revision $Rev: 36 $ by $Author: lars $ at $Date: 2007-05-28 14:03:08 +0200 (Mo, 28 Mai 2007) $
36 lars 3
	mysql_connect("127.0.0.1","ltiefland","voyager");
1 lars 4
	mysql_select_db("webhosting");
16 lars 5
 
6
	require('mime_mail.php');
7
 
8
	//function borrowed from
9
	/*
10
	Top-Side.de Php Domain Checker v1.1 pro - (C) 2005 by Top-Side.de
11
 
12
	Dieses Script darf frei verwendet werden, solange dieser Text bestehen bleibt.
13
	*/
14
 
15
	function get_whois_server($domain)
16
	{
17
		$whoisservers=array(
18
			array("de","whois.denic.de"),
19
			array("com","rs.internic.net"),
20
			array("net","rs.internic.net"),
21
			array("org","whois.pir.org"),
22
			array("info","whois.afilias.net"),
23
			array("biz","whois.biz"),
24
			array("at","whois.nic.at"),
25
			array("ch","whois.nic.ch"),
26
			array("li","whois.nic.ch"),
27
			array("co.uk","whois.nic.uk"),
28
			array("tv","whois.www.tv"),
29
			array("cc","whois.enic.cc"),
30
			array("dk","whois.dk-hostmaster.dk"),
31
			array("it","whois.nic.it"),
32
			array("ws","whois.worldsite.ws")
33
		);
34
		$whocnt = count($whoisservers);
35
		for ($x=0;$x<$whocnt;$x++)
36
		{
37
			$artld = $whoisservers[$x][0];
38
			$tldlen = intval(0 - strlen($artld));
39
			if (substr($domain, $tldlen) == $artld) $whosrv = $whoisservers[$x][1];
40
		}
41
		return $whosrv;
42
	}
43
 
44
	//function borrowed from
45
	/*
46
	Top-Side.de Php Domain Checker v1.1 pro - (C) 2005 by Top-Side.de
47
 
48
	Dieses Script darf frei verwendet werden, solange dieser Text bestehen bleibt.
49
	*/
50
 
51
	function lookup($dom)
52
	{
53
		$lusrv = get_whois_server($dom);
54
		if (!$lusrv) return "";
55
		$fp = fsockopen($lusrv,43);
56
		if($lusrv == "whois.denic.de")
57
		{
58
			fputs($fp, "-C ISO-8859-1 -T ace,dn $dom\r\n");
59
		}
60
		else
61
		{
62
			fputs($fp, "$dom\r\n");
63
		}
64
		$string="";
65
		while(!feof($fp))
66
		{
67
			$string.= fgets($fp,128);
68
		}
69
		fclose($fp);
70
		$reg = "/Whois Server: (.*?)\n/i";
71
		preg_match_all($reg, $string, $matches);
72
		$secondtry = $matches[1][0];
73
		if ($secondtry)
74
		{
75
			$fp = fsockopen($secondtry,43);
76
			fputs($fp, "$dom\r\n");
77
			$string="";
78
			while(!feof($fp))
79
			{
80
				$string.=fgets($fp,128);
81
			}
82
			fclose($fp);
83
		}
17 lars 84
		if(ereg("(No match|No entries found|NOT FOUND|Not found|not found in database|We do not have an entry in our database matching your query)",$string))
85
		{
86
			return true;
87
		}
88
		else
89
		{
90
			return $string;
91
		}
16 lars 92
	}
93
 
94
	function check_domain($domain, $vname, $nname)
95
	{
96
		$string=lookup($domain);
97
		if ($string===true)
98
		{
99
			return true;
100
		}
101
		else
102
		{
103
			if (strpos($string, $nname)!==false AND strpos($string, $vname)!==false)
104
			{
105
				return true;
106
			}
107
			else
108
			{
109
				return false;
110
			}
111
		}
112
	}
113
 
33 lars 114
	function speichern($name, $vname, $email, $domain, $emails, $email_type, $targets, $space, $traffic, $db_anz, $webmail, $forum, $copper, $svn, $admin_name, $admin_pw, $repo, $svn_users)
1 lars 115
	{
116
		$sql="";
117
		mysql_query("SET AUTOCOMMIT=0");
118
		mysql_query("START TRANSACTION");
119
		$sql="INSERT INTO kunden (nname, vname, email, domain, email_type, space, traffic, db_anz) VALUES ('$name', '$vname', '$email', '$domain', $email_type, $space, $traffic, $db_anz)";
120
		if(mysql_query($sql))
121
		{
122
			$k_id=sprintf("%011d",mysql_insert_id());
123
			$i=0;
33 lars 124
			$sql="INSERT INTO software (k_id, webmail, forum, copper, svn, admin_name, admin_pw, repo_name) VALUES ($k_id, $webmail, $forum, $copper, $svn, '$admin_name', '$admin_pw', '$repo')";
1 lars 125
			$res=mysql_query($sql);
126
			if ($res)
127
			{
128
				$sql="INSERT INTO emails (k_id, email, target) VALUES ";
129
				foreach ($emails as $email)
130
				{
131
					$target="";
132
					if ($email_type==0)
133
					{
134
						if ($i < count($targets))
135
						{
136
							$target=$targets[$i];
137
						}
138
						else
139
						{
140
							$target=$target[count($targets)];
141
						}
142
					}
143
					$sql.="($k_id, '$email', '$target')";
144
					$i++;
145
					if($i<count($emails))
146
					{
147
						$sql.=", ";
148
					}
149
				}
150
				//SVN Repository wurde gebucht
151
				if ($svn)
152
				{
153
					if ($e_sql=mysql_query($sql))
154
					{
155
						$i=0;
156
						$sql="INSERT INTO svn_users (k_id, u_name, u_pw) VALUES ";
157
						foreach ($svn_users as $svn_user)
158
						{
159
							$svn=explode("=",$svn_user);
160
							$user=trim($svn[0]);
161
							$pw=trim($svn[1]);
162
							$i++;
163
							$sql.="($k_id, '$user', '$pw')";
164
							if($i<count($svn_users))
165
							{
166
								$sql.=", ";
167
							}
168
						}
169
					}
170
					else
171
					{
172
						return false;
173
					}
174
 
175
				}
176
				if(mysql_query($sql))
177
				{
178
					return true;
179
				}
180
				else
181
				{
182
					return false;
183
				}
184
			}
185
			else
186
			{
187
				return false;
188
			}
189
		}
190
		else
191
		{
192
			return false;
193
		}
194
	}
195
 
196
	function generate_pdf($k_id)
197
	{
198
		$k_id=sprintf("%011d",$k_id);
199
		$sql="SELECT * FROM kunden WHERE k_id=$k_id";
200
		$res=mysql_query($sql);
201
		$row=mysql_fetch_assoc($res);
202
		$sql_e="SELECT * FROM emails WHERE k_id=$k_id";
203
		$sql_s="SELECT * FROM svn_users WHERE k_id=$k_id";
204
		$res_e=mysql_query($sql_e);
205
		$res_s=mysql_query($sql_s);
4 lars 206
		$sql_w="SELECT * FROM software where k_id=$k_id";
1 lars 207
		$res_w=mysql_query($sql_w);
208
		$row_w=mysql_fetch_assoc($res_w);
209
		while ($row_e=mysql_fetch_assoc($res_e))
210
		{
211
			$email_arr[]=$row_e["email"];
212
			$target_arr[]=$row_e["email"];
213
		}
214
		$email_anz=count($email_arr);
215
		while ($row_s=mysql_fetch_assoc($res_s))
216
		{
217
			$svn_user_arr[]=$row_s["u_name"]." = ".$row_s["u_pw"];
218
		}
219
		$k_name=$row["vname"]." ".$row["nname"];
220
		$pdf=PDF_new();
221
		if(!$pdf) return false;
33 lars 222
		if(!PDF_begin_document($pdf, "pdf/Kunde_$k_id.pdf","")) return false;
1 lars 223
		if(!PDF_begin_page_ext($pdf, 595, 842, "")) return false;
224
 
225
		$font = PDF_load_font($pdf, "Helvetica-Bold", "winansi", "");
226
 
227
		PDF_setfont($pdf, $font, 10);
228
		$y=770;
229
		PDF_set_text_pos($pdf, 70, $y);
230
		PDF_show($pdf, "Deine Bestellung auf http://webhosting.lars-tiefland.de");
231
		$y-=10;
232
		PDF_set_text_pos($pdf, 70, $y);
233
		PDF_show($pdf, "=======================================================");
234
		$y-=30;
235
		PDF_set_text_pos($pdf, 70, $y);
236
		PDF_show($pdf, "Hallo $k_name,");
237
		$y-=10;
238
		PDF_set_text_pos($pdf, 70, $y);
239
		PDF_show($pdf, "dies sind die Daten, die Du bei Deiner Bestllung eingegeben hast.");
240
		$y-=10;
241
		PDF_set_text_pos($pdf, 70, $y);
242
		PDF_show($pdf, "Sollten Fehler enthalten sein, oder solltest Du weitere Angaben machen wollen, ");
243
		$y-=10;
244
		PDF_set_text_pos($pdf, 70, $y);
245
		PDF_show($pdf, "so schreibe bitte an order@lars-tiefland.de");
246
		$y-=30;
247
		PDF_set_text_pos($pdf, 70, $y);
248
		PDF_show($pdf, "Kundennummer: ");
249
		PDF_set_text_pos($pdf, 200, $y);
250
		PDF_show($pdf, $k_id);
251
		$y-=10;
252
		PDF_set_text_pos($pdf, 70, $y);
253
		PDF_show($pdf, "Name: ");
254
		PDF_set_text_pos($pdf, 200, $y);
255
		PDF_show($pdf, $row["nname"]);
256
		$y-=10;
257
		PDF_set_text_pos($pdf, 70, $y);
258
		PDF_show($pdf, "Vorname: ");
259
		PDF_set_text_pos($pdf, 200, $y);
260
		PDF_show($pdf, $row["vname"]);
261
		$y-=10;
262
		PDF_set_text_pos($pdf, 70, $y);
263
		PDF_show($pdf, "E-Mail: ");
264
		PDF_set_text_pos($pdf, 200, $y);
265
		PDF_show($pdf, $row["email"]);
266
		$y-=10;
267
		PDF_set_text_pos($pdf, 70, $y);
268
		PDF_show($pdf, "Domain: ");
269
		PDF_set_text_pos($pdf, 200, $y);
270
		PDF_show($pdf, $row["domain"]);
271
		$y-=10;
272
		PDF_set_text_pos($pdf, 70, $y);
273
		PDF_show($pdf, "Anzahl E-Mail Adressen: ");
274
		PDF_set_text_pos($pdf, 200, $y);
275
		$y-=10;
276
		PDF_show($pdf, $email_anz);
277
		PDF_set_text_pos($pdf, 70, $y);
278
		PDF_show($pdf, "E-Mail Adressen: ");
279
		foreach($email_arr as $email)
280
		{
281
			PDF_set_text_pos($pdf, 200, $y);
282
			PDF_Show($pdf, $email);
283
			$y-=10;
284
		}
285
		PDF_set_text_pos($pdf, 70, $y);
286
		PDF_show($pdf, "E-Mail Typ: ");
287
		PDF_set_text_pos($pdf, 200, $y);
288
		PDF_show($pdf, ($row["email_type"]==0)?"Weiterleitung":"POP3/IMAP Postfach");
289
		$y-=10;
290
		PDF_set_text_pos($pdf, 70, $y);
291
		PDF_show($pdf, "Ziel Adressen: ");
292
		if ($row["email_type"]==0)
293
		{
294
			foreach($target_arr as $target)
295
			{
296
				PDF_set_text_pos($pdf, 200, $y);
297
				PDF_Show($pdf, $target);
298
				$y-=10;
299
			}
300
		}
301
		else
302
		{
303
			PDF_set_text_pos($pdf, 200, $y);
304
			PDF_Show($pdf, "Nicht nötig");
305
			$y-=10;
306
		}
307
		PDF_set_text_pos($pdf, 70, $y);
308
		PDF_show($pdf, "Webspace: ");
309
		PDF_set_text_pos($pdf, 200, $y);
310
		PDF_show($pdf, number_format($row["space"],0,",",".")." MB");
311
		$y-=10;
312
		PDF_set_text_pos($pdf, 70, $y);
313
		PDF_show($pdf, "Traffic / Monat: ");
314
		PDF_set_text_pos($pdf, 200, $y);
315
		PDF_show($pdf, number_format($row["traffic"],0,",",".")." GB");
316
		$y-=10;
317
		PDF_set_text_pos($pdf, 70, $y);
318
		PDF_show($pdf, "Anzahl Datenbanken: ");
319
		PDF_set_text_pos($pdf, 200, $y);
320
		PDF_show($pdf, $row["db_anz"]);
321
		$y-=10;
322
		PDF_set_text_pos($pdf, 70, $y);
20 lars 323
		PDF_show($pdf, "Webmail Interface:");
19 lars 324
		PDF_set_text_pos($pdf, 200, $y);
33 lars 325
		switch($row_w["webmail"])
326
		{
327
			case 1:
328
				$webmail_text="VWebmail";
329
				break;
330
			case 2:
331
				$webmail_text="Squirrelmail";
332
				break;
333
			case 0:
334
				$webmail_text="Keines";
335
				break;
336
		}
337
		PDF_show($pdf, $webmail_text);
19 lars 338
		$y-=10;
339
		PDF_set_text_pos($pdf, 70, $y);
33 lars 340
		PDF_show($pdf, "Forum: ");
1 lars 341
		PDF_set_text_pos($pdf, 200, $y);
33 lars 342
		switch($row_w["forum"])
343
		{
344
			case 1:
345
				$f_text="phpBB";
346
				break;
347
			case 2:
348
				$f_text="SMF";
349
				break;
350
			case 0:
351
				$f_text="Keines";
352
				break;
353
		}
354
		PDF_show($pdf, "$f_text");
1 lars 355
		$y-=10;
356
		PDF_set_text_pos($pdf, 70, $y);
357
		PDF_show($pdf, "coppermine Galerie: ");
358
		PDF_set_text_pos($pdf, 200, $y);
359
		PDF_show($pdf, ($row_w["copper"])?"Ja":"Nein");
360
		$y-=10;
361
		PDF_set_text_pos($pdf, 70, $y);
362
		PDF_show($pdf, "Subversion Repository: ");
363
		PDF_set_text_pos($pdf, 200, $y);
364
		PDF_show($pdf, ($row_w["svn"])?"Ja":"Nein");
365
		$y-=10;
366
		PDF_set_text_pos($pdf, 70, $y);
367
		PDF_show($pdf, "Admin Name: ");
368
		PDF_set_text_pos($pdf, 200, $y);
369
		PDF_show($pdf, $row_w["admin_name"]);
370
		$y-=10;
371
		PDF_set_text_pos($pdf, 70, $y);
372
		PDF_show($pdf, "Admin Passwort: ");
373
		PDF_set_text_pos($pdf, 200, $y);
374
		PDF_show($pdf, $row_w["admin_pw"]);
375
		$y-=10;
33 lars 376
		if($row_w["repo_name"])
1 lars 377
		{
33 lars 378
			PDF_set_text_pos($pdf, 70, $y);
379
			PDF_show($pdf, "Repository Name: ");
1 lars 380
			PDF_set_text_pos($pdf, 200, $y);
33 lars 381
			PDF_show($pdf, $row_w["repo_name"]);
1 lars 382
			$y-=10;
33 lars 383
			PDF_set_text_pos($pdf, 70, $y);
384
			PDF_show($pdf, "SVN Benutzer: ");
385
			foreach($svn_user_arr as $svn_user)
386
			{
387
				PDF_set_text_pos($pdf, 200, $y);
388
				PDF_Show($pdf, $svn_user);
389
				$y-=10;
390
			}
1 lars 391
		}
392
		if(!PDF_end_page_ext($pdf,"")) return false;
393
		if(!PDF_end_document($pdf,"")) return false;
394
		return true;
395
	}
396
 
397
	function send_email($k_id)
398
	{
399
		$email=new mime_mail();
400
		$sql="SELECT k_id, vname, nname, email FROM kunden WHERE k_id=$k_id";
401
		$res=mysql_query($sql);
402
		$row=mysql_fetch_assoc($res);
403
		$k_id=$row["k_id"];
33 lars 404
		$filename="pdf/Kunde_$k_id.pdf";
1 lars 405
		$k_name=$row["vname"]." ". $row["nname"];
406
		$k_email=$row["email"];
407
		$email->to="$k_name<$k_email>";
33 lars 408
		$email->from="Bestellbestätigung<order@lars-tiefland.de>";
1 lars 409
		if (file_exists($filename))
410
		{
411
			$fd = fopen($filename, "rb");
412
			$data = fread($fd, filesize($filename));
413
			fclose($fd);
414
			$email->body="Hallo $k_name, \r\n\r\n vielen Dank für Deine Bestellung auf http://webhosting.lars-tiefland.de!\r\n\r\n";
415
			$email->body.="Im Anhang findest Du Deine eingegeben Daten als PDF Datei!\r\n\r\nLive Long And Prosper,\r\n\r\nLars Tiefland\r\r\n";
416
			$email->subject="Deine Bestellung ist eingegangen";
33 lars 417
			$email->add_attachment($data, basename($filename));
1 lars 418
			$send=$email->send();
419
		}
420
		else
421
		{
422
			$send=false;
423
		}
424
		return $send;
425
	}
426
 
427
	function send_order($k_id)
428
	{
429
		$email=new mime_mail();
430
		$sql="SELECT k_id, vname, nname, email FROM kunden WHERE k_id=$k_id";
431
		$res=mysql_query($sql);
432
		$row=mysql_fetch_assoc($res);
433
		$k_id=$row["k_id"];
33 lars 434
		$filename="pdf/Kunde_$k_id.pdf";
1 lars 435
		$k_name=$row["vname"]." ". $row["nname"];
436
		$k_email=$row["email"];
437
		$email->to="Lars Tiefland<order@lars-tiefland.de>";
438
		$email->from="order@lars-tiefland.de";
439
		if (file_exists($filename))
440
		{
441
			$fd = fopen($filename, "rb");
442
			$data = fread($fd, filesize($filename));
443
			fclose($fd);
4 lars 444
			$email->body="Hallo Lars Tiefland, \r\n\r\n $k_name hat auf http://webhosting.lars-tiefland.de eine Bestellung aufgeben!\r\n\r\n";
1 lars 445
			$email->body.="Im Anhang findest Du die vom Kunden eingegeben Daten als PDF Datei!\r\n\r\nLive Long And Prosper,\r\n\r\nLars Tiefland\r\r\n";
446
			$email->subject="Eine neue Bestellung ist eingegangen";
33 lars 447
			$email->add_attachment($data, basename($filename));
1 lars 448
			$send=$email->send();
449
		}
450
		else
451
		{
452
			$send=false;
453
		}
454
		return $send;
455
	}
456
?>