d73051da9b31a70a6349868ef3c83400b3f1ae47
bernd webinterface => /webinterface

bernd authored 17 years ago

1) <?php
2) 
bernd XSS/CSRF-Bugs behoben

bernd authored 17 years ago

3) require_once("inc/security.php");
4) 
bernd webinterface => /webinterface

bernd authored 17 years ago

5) function system_failure($reason)
6) {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

7) 	input_error($reason);
8) 	show_page();
bernd webinterface => /webinterface

bernd authored 17 years ago

9)         die();
10) }
11) 
12) 
13) function input_error($reason)
14) {
15)   global $input_error;
16)   if (!isset($input_error))
17)     $input_error = array();
18)   array_push($input_error, $reason);
19) }
20) 
21) function warning($msg)
22) {
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

23)   if (!isset($_SESSION['warning']))
24)     $_SESSION['warning'] = array();
25)   array_push($_SESSION['warning'], $msg);
bernd webinterface => /webinterface

bernd authored 17 years ago

26) }
27) 
28) function success_msg($msg)
29) {
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

30)   if (!isset($_SESSION['success_msg']))
31)     $_SESSION['success_msg'] = array();
32)   array_push($_SESSION['success_msg'], $msg);
bernd webinterface => /webinterface

bernd authored 17 years ago

33) }
34) 
35) 
bernd Erste Version des vmail-Modul

bernd authored 17 years ago

36) function we_have_an_error()
37) {
38)   global $input_error;
39) 
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

40)   return ((count($input_error) + count($_SESSION['warning'])) > 0);
bernd Erste Version des vmail-Modul

bernd authored 17 years ago

41) 
42) }
43) 
44) 
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

45) function get_messages()
bernd webinterface => /webinterface

bernd authored 17 years ago

46) {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

47)   $messages = '';
bernd webinterface => /webinterface

bernd authored 17 years ago

48)   global $input_error;
49)   if (isset($input_error))
50)   {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

51)     $messages .= '<div class="error">
bernd webinterface => /webinterface

bernd authored 17 years ago

52)     <h3>Fehler</h3>
53)     <p>Folgende Fehler wurden festgestellt: </p>
54)     <ul>
55)     ';
56)     foreach ($input_error as $error)
57)     {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

58)       $messages .= '<li>'.nl2br(filter_input_general($error))."</li>\n";
bernd webinterface => /webinterface

bernd authored 17 years ago

59)     }
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

60)     $messages .= '</ul>
bernd webinterface => /webinterface

bernd authored 17 years ago

61)     </div>';
62)   }
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

63)   if (isset($_SESSION['warning']))
bernd webinterface => /webinterface

bernd authored 17 years ago

64)   {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

65)     $messages .= '<div class="error">
bernd webinterface => /webinterface

bernd authored 17 years ago

66)     <ul>
67)     ';
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

68)     foreach ($_SESSION['warning'] as $msg)
bernd webinterface => /webinterface

bernd authored 17 years ago

69)     {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

70)       $messages .= '<li>'.nl2br(filter_input_general($msg))."</li>\n";
bernd webinterface => /webinterface

bernd authored 17 years ago

71)     }
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

72)     $messages .= '</ul>
bernd webinterface => /webinterface

bernd authored 17 years ago

73)     </div>';
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

74)     unset($_SESSION['warning']);
bernd webinterface => /webinterface

bernd authored 17 years ago

75)   }
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

76)   if (isset($_SESSION['success_msg']))
bernd webinterface => /webinterface

bernd authored 17 years ago

77)   {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

78)     $messages .= '<div class="success">
bernd webinterface => /webinterface

bernd authored 17 years ago

79)     <ul>
80)     ';
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

81)     foreach ($_SESSION['success_msg'] as $msg)
bernd webinterface => /webinterface

bernd authored 17 years ago

82)     {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

83)       $messages .= '<li>'.nl2br(filter_input_general($msg))."</li>\n";
bernd webinterface => /webinterface

bernd authored 17 years ago

84)     }
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

85)     $messages .= '</ul>
bernd webinterface => /webinterface

bernd authored 17 years ago

86)     </div>';
bernd Warnings und Success-Meldun...

bernd authored 14 years ago

87)     unset($_SESSION['success_msg']);
bernd webinterface => /webinterface

bernd authored 17 years ago

88)   }
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

89)   return $messages;
bernd webinterface => /webinterface

bernd authored 17 years ago

90) }
91) 
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

92) function show_messages() 
93) {
94)   echo get_messages();
95) }
bernd webinterface => /webinterface

bernd authored 17 years ago

96) 
97) function require_role($roles)
98) {
99)   if (! is_array($roles))
100)     $roles = array($roles);
101)   $allow = false;
102)   foreach ($roles as $role)
bernd Nachtrag zum vorigen

bernd authored 17 years ago

103)     if ($role & $_SESSION['role'])
bernd webinterface => /webinterface

bernd authored 17 years ago

104)       $allow = true;
105)   if (! $allow)
bernd Nachtrag zum vorigen

bernd authored 17 years ago

106)     if ($_SESSION['role'] == ROLE_ANONYMOUS)
107)       login_screen("Diese Seite können Sie erst benutzen, wenn Sie sich mit Ihren Zugangsdaten anmelden.");
108)     else
109)       login_screen("Diese Seite können Sie mit Ihren aktuellen Zugriffsrechten nicht benutzen, bitte melden Sie sich mit den benötigten Zugriffsrechten an!");
bernd webinterface => /webinterface

bernd authored 17 years ago

110) }
111) 
112) 
113) function login_screen($why)
114) {
bernd Umstellung auf Theme-Suppor...

bernd authored 14 years ago

115)   require_once('inc/theme.php');
116)   if ($why) {
117)     warning($why);
118)   }
119)   show_page('login');
120)   die();