Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?php
2
 
3
require_once "Auth.php";
4
require_once 'Log.php';
5
require_once 'Log/observer.php';
6
 
7
// Callback function to display login form
8
function loginFunction($username = null, $status = null, &$auth = null)
9
{
10
	/*
11
	 * Change the HTML output so that it fits to your
12
	 * application.
13
	 */
14
	echo "<form method=\"post\" action=\"".$_SERVER['PHP_SELF']."\">";
15
	echo "Username: <input type=\"text\" name=\"username\"><br/>";
16
	echo "Password: <input type=\"password\" name=\"password\"><br/>";
17
	echo "<input type=\"submit\">";
18
	echo "</form>";
19
}
20
 
21
class Auth_Log_Observer extends Log_observer {
22
 
23
	var $messages = array();
24
 
25
	function notify($event) {
26
 
27
		$this->messages[] = $event;
28
 
29
	}
30
 
31
}
32
 
33
$options = array(
34
		'enableLogging' => true,
35
		'cryptType' => 'md5',
36
		'users' => array(
37
			'guest' => md5('password'),
38
			),
39
		);
40
$a = new Auth("Array", $options, "loginFunction");
41
 
42
$infoObserver = new Auth_Log_Observer(AUTH_LOG_INFO);
43
 
44
$a->attachLogObserver($infoObserver);
45
 
46
$debugObserver = new Auth_Log_Observer(AUTH_LOG_DEBUG);
47
 
48
$a->attachLogObserver($debugObserver);
49
 
50
$a->start();
51
 
52
if ($a->checkAuth()) {
53
	/*
54
	 * The output of your site goes here.
55
	 */
56
	print "Authentication Successful.<br/>";
57
}
58
 
59
print '<h3>Logging Output:</h3>'
60
	.'<b>AUTH_LOG_INFO level messages:</b><br/>';
61
 
62
foreach ($infoObserver->messages as $event) {
63
	print $event['priority'].': '.$event['message'].'<br/>';
64
}
65
 
66
print '<br/>'
67
	.'<b>AUTH_LOG_DEBUG level messages:</b><br/>';
68
 
69
foreach ($debugObserver->messages as $event) {
70
	print $event['priority'].': '.$event['message'].'<br/>';
71
}
72
 
73
print '<br/>';
74
 
75
?>