Blame


1 386bf42a 2022-08-18 mischa <?php
2 386bf42a 2022-08-18 mischa //
3 386bf42a 2022-08-18 mischa // OpenSMTPD Admin
4 386bf42a 2022-08-18 mischa // by Mischa Peters <mischa at high5 dot nl>
5 386bf42a 2022-08-18 mischa // Copyright (c) 2022 High5!
6 386bf42a 2022-08-18 mischa // License Info: LICENSE.TXT
7 386bf42a 2022-08-18 mischa //
8 386bf42a 2022-08-18 mischa // File: viewlog.php
9 386bf42a 2022-08-18 mischa //
10 386bf42a 2022-08-18 mischa // Template File: viewlog.tpl
11 386bf42a 2022-08-18 mischa //
12 386bf42a 2022-08-18 mischa // Template Variables:
13 386bf42a 2022-08-18 mischa //
14 e0b946dd 2022-09-04 mischa // log
15 386bf42a 2022-08-18 mischa //
16 ff6266ff 2022-09-05 mischa // POST / GET Variables:
17 386bf42a 2022-08-18 mischa //
18 e0b946dd 2022-09-04 mischa // domain
19 386bf42a 2022-08-18 mischa //
20 e0b946dd 2022-09-04 mischa require_once './functions.inc.php';
21 e0b946dd 2022-09-04 mischa include './languages/' . check_language() . '.lang';
22 386bf42a 2022-08-18 mischa
23 386bf42a 2022-08-18 mischa $SESSID_USERNAME = check_session();
24 1575a178 2022-09-06 mischa $ROLE = check_role($SESSID_USERNAME);
25 386bf42a 2022-08-18 mischa
26 080e0cc0 2022-09-05 mischa if ($ROLE == ADMIN_ROLE) {
27 ff6266ff 2022-09-05 mischa $list_domains = list_domains();
28 ff6266ff 2022-09-05 mischa } else {
29 ff6266ff 2022-09-05 mischa $list_domains = list_domains($SESSID_USERNAME);
30 ff6266ff 2022-09-05 mischa }
31 ff6266ff 2022-09-05 mischa
32 386bf42a 2022-08-18 mischa if ($_SERVER['REQUEST_METHOD'] == "GET") {
33 aa2ebed3 2022-09-06 mischa $domain = filter_input(INPUT_GET, 'domain', FILTER_VALIDATE_DOMAIN);
34 c4d12e43 2022-09-06 mischa $limit = LOG_SIZE;
35 826796d1 2022-09-04 mischa
36 aa2ebed3 2022-09-06 mischa if (empty($domain) && count($list_domains) > 0) {
37 aa2ebed3 2022-09-06 mischa $domain = $list_domains[0]['domain'];
38 aa2ebed3 2022-09-06 mischa }
39 aa2ebed3 2022-09-06 mischa
40 aa2ebed3 2022-09-06 mischa if (in_array($domain, array_column($list_domains, 'domain'))) {
41 aa2ebed3 2022-09-06 mischa $domain_key = array_search($domain, array_column($list_domains, 'domain'));
42 759223e7 2022-09-04 mischa $dbh = pdo_connect();
43 c4d12e43 2022-09-06 mischa $sth = $dbh->prepare("SELECT * FROM log WHERE domain=? ORDER BY timestamp DESC LIMIT ?");
44 826796d1 2022-09-04 mischa $sth->bindParam(1, $domain, PDO::PARAM_STR);
45 c4d12e43 2022-09-06 mischa $sth->bindParam(2, $limit, PDO::PARAM_INT);
46 826796d1 2022-09-04 mischa $sth->execute();
47 826796d1 2022-09-04 mischa $log = $sth->fetchAll();
48 826796d1 2022-09-04 mischa }
49 386bf42a 2022-08-18 mischa }
50 e0b946dd 2022-09-04 mischa include './templates/header.tpl';
51 e0b946dd 2022-09-04 mischa include './templates/menu.tpl';
52 e0b946dd 2022-09-04 mischa include './templates/viewlog.tpl';
53 e0b946dd 2022-09-04 mischa include './templates/footer.tpl';
54 386bf42a 2022-08-18 mischa ?>