5a312ede689a3941c8f5ebe772516c9120a1d9d7
bernd webinterface => /webinterface

bernd authored 17 years ago

1) <?php
2) 
3) require_once('inc/db_connect.php');
4) require_once('session/checkuser.php');
5) 
6) function customer_has_email($customerno, $email)
7) {
8)   $customerno = (int) $customerno;
9)   $email = mysql_real_escape_string($email);
bernd Tabelle 'kundenkontakt' kom...

bernd authored 14 years ago

10)   $result = db_query("SELECT NULL FROM kundendaten.kunden WHERE id=".$customerno." AND (email='".$email."' OR email_extern='{$email}' OR email_rechnung='{$email'}');");
bernd webinterface => /webinterface

bernd authored 17 years ago

11)   return (mysql_num_rows($result) > 0);
12) }
13) 
14) 
15) function validate_token($customerno, $token)
16) {
17)   expire_tokens();
18)   $customerno = (int) $customerno;
19)   $token = mysql_real_escape_string($token);
bernd sql-abfragen abstrahiert

bernd authored 17 years ago

20)   $result = db_query("SELECT NULL FROM kundendaten.kunden WHERE id={$customerno} AND token='{$token}';");
bernd webinterface => /webinterface

bernd authored 17 years ago

21)   return (mysql_num_rows($result) > 0);
22) }
23) 
24) 
bernd one-time-URLs für systemuser

bernd authored 16 years ago

25) function validate_uid_token($uid, $token)
26) {
27)   expire_tokens();
28)   $uid = (int) $uid;
29)   $token = mysql_real_escape_string($token);
30)   $result = db_query("SELECT NULL FROM system.usertoken WHERE uid={$uid} AND token='{$token}';");
31)   return (mysql_num_rows($result) > 0);
32) }
33) 
34) 
bernd webinterface => /webinterface

bernd authored 17 years ago

35) function expire_tokens()
36) {
37)   $expire = "1 DAY";
bernd sql-abfragen abstrahiert

bernd authored 17 years ago

38)   db_query("UPDATE kundendaten.kunden SET token=NULL, token_create=NULL WHERE token_create < NOW() - INTERVAL {$expire};");
bernd one-time-URLs für systemuser

bernd authored 16 years ago

39)   db_query("DELETE FROM system.usertoken WHERE expire < NOW();");
bernd webinterface => /webinterface

bernd authored 17 years ago

40) }
41) 
42) function invalidate_customer_token($customerno)
43) {
44)   $customerno = (int) $customerno;
bernd sql-abfragen abstrahiert

bernd authored 17 years ago

45)   db_query("UPDATE kundendaten.kunden SET token=NULL, token_create=NULL WHERE id={$customerno} LIMIT 1;");
bernd webinterface => /webinterface

bernd authored 17 years ago

46) }
47)  
bernd one-time-URLs für systemuser

bernd authored 16 years ago

48) function invalidate_systemuser_token($uid)
49) {
50)   $uid = (int) $uid;
51)   db_query("DELETE FROM system.usertoken WHERE uid={$uid} LIMIT 1;");
52) }
53)  
bernd webinterface => /webinterface

bernd authored 17 years ago

54) function create_token($customerno)
55) {
56)   $customerno = (int) $customerno;
57)   expire_tokens();
bernd sql-abfragen abstrahiert

bernd authored 17 years ago

58)   $result = db_query("SELECT token_create FROM kundendaten.kunden WHERE id={$customerno} AND token_create IS NOT NULL;");
bernd webinterface => /webinterface

bernd authored 17 years ago

59)   if (mysql_num_rows($result) > 0)
60)   {
61)     $res = mysql_fetch_object($result)->token_create;
62)     input_error("Sie haben diese Funktion kürzlich erst benutzt, an Ihre E-Mail-Adresse wurde bereits am {$res} eine Nachricht verschickt. Sie können diese Funktion erst nach Ablauf von 24 Stunden erneut benutzen.");
63)     return false;
64)   }
65)   $token = random_string(10);
bernd sql-abfragen abstrahiert

bernd authored 17 years ago

66)   db_query("UPDATE kundendaten.kunden SET token='{$token}', token_create=now() WHERE id={$customerno} LIMIT 1;");
bernd webinterface => /webinterface

bernd authored 17 years ago

67)   return true;
68) }
69) 
70) 
71) function get_customer_token($customerno)
72) {
73)   $customerno = (int) $customerno;
74)   expire_tokens();
bernd sql-abfragen abstrahiert

bernd authored 17 years ago

75)   $result = db_query("SELECT token FROM kundendaten.kunden WHERE id={$customerno} AND token IS NOT NULL;");