summaryrefslogtreecommitdiff
path: root/web/remsaint.php
blob: 91f3468d7f8b7a814595132cccc4875eb933186f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?
/* RemSaint
 *
 * (c) 2002 Peter Palfrader <pp@3node.com>
 */

/**
 * RemSaint
 *
 * @author	Peter Palfrader/3node
 * @version	$Id$
 */

require_once("../include/Namespace.inc");
require_once("../include/Tools.inc");
require_once("../include/Template.inc");

$namespace = new Namespace(
	array( have_database => 1, 
	       have_session => 1,
	       have_user => 1 )
) or
	die("Nobody loves me. I don't even have space for a name.");

$rules = Array();
$rules['list']['manage'] = array(type => 'integer', optional => 1);
$rules['list']['sort'] = array(type => 'string', optional => 1);
$arguments = param_check($GLOBALS, $rules, array(params_required=>false));

$user = false;
$userref = false;
$manage = $arguments['manage'] ? 1 : 0;

if (! $namespace->user->check_login())
	$manage = 0;
else {
	$user = $namespace->session->data['user']['username'];
	$userref = $namespace->session->data['user']['ref'];
}

$orderby='nick';
$sort='nick';
if ($arguments['sort'] == 'type1') {
	$orderby='-reliability_type1';
	$sort='reliability_type1';
};
if ($arguments['sort'] == 'type2') {
	$orderby='-reliability_type2';
	$sort='reliability_type2';
};
if ($arguments['sort'] == 'status') {
	$orderby='in_critical, in_warning';
	$sort = 'status';
};


$data = array();
# YYYY-MM-DD HH24:MI TZ
if ($manage)
	$data['remailers'] = $namespace->database->query_all("SELECT subscription.ref, remailer.ref, remailer.in_warning, remailer.in_critical, remailer.nick, remailer.reliability_type1, remailer.reliability_type2, to_char(remailer.last_update, 'YYYY-MM-DD') AS last_update, listed1, listed2, subscription.notify_warning, subscription.notify_critical, subscription.notify_recovery, true AS t, false AS f FROM remailer LEFT OUTER JOIN (SELECT * FROM subscription WHERE subscription.account_ref=?) as subscription ON remailer.ref=subscription.remailer_ref ORDER BY $orderby", array($userref));
else
	$data['remailers'] = $namespace->database->query_all("SELECT ref, in_warning, in_critical, nick, reliability_type1, reliability_type2, to_char(last_update, 'YYYY-MM-DD') AS last_update, listed1, listed2, true AS t, false AS f FROM remailer ORDER BY $orderby");
$data['manage'] = $manage;
$data['sort'] = $sort;
$data['user'] = $user;
$data['this'] = $PHP_SELF;

$template = new Template('remsaint-status.html', $namespace->config->template_path);
$template->parse($data);
print $template->output();

$namespace->stop();

# vim:set ts=4:
# vim:set shiftwidth=4:
?>