2007-03-24 08:27:00 +01:00
< ? php
2007-09-30 17:53:54 +02:00
/**
* Postfix Admin
*
* LICENSE
* This source file is subject to the GPL license that is bundled with
* this package in the file LICENSE . TXT .
*
* Further details on the project are available at :
* http :// www . postfixadmin . com or http :// postfixadmin . sf . net
*
* @ version $Id $
* @ license GNU GPL v2 or later .
*
* File : viewlog . php
* Shows entries from the log table to users .
*
2007-12-02 14:59:33 +01:00
* Template File : viewlog . php
2007-09-30 17:53:54 +02:00
*
* Template Variables :
*
* tMessage
* tLog
*
* Form POST \ GET Variables :
*
* fDomain
*/
2007-08-22 01:00:17 +02:00
2007-09-22 12:59:41 +02:00
require_once ( 'common.php' );
2007-03-24 08:27:00 +01:00
2007-09-22 12:59:41 +02:00
authentication_require_role ( 'admin' );
$SESSID_USERNAME = authentication_get_username ();
if ( authentication_has_role ( 'global-admin' )) {
2007-03-24 08:27:00 +01:00
$list_domains = list_domains ();
}
2007-09-22 12:59:41 +02:00
else {
$list_domains = list_domains_for_admin ( $SESSID_USERNAME );
}
2007-03-24 08:27:00 +01:00
if ( $_SERVER [ 'REQUEST_METHOD' ] == " GET " )
{
if (( is_array ( $list_domains ) and sizeof ( $list_domains ) > 0 )) $fDomain = $list_domains [ 0 ];
} elseif ( $_SERVER [ 'REQUEST_METHOD' ] == " POST " ) {
if ( isset ( $_POST [ 'fDomain' ])) $fDomain = escape_string ( $_POST [ 'fDomain' ]);
} else {
die ( 'Unknown request method' );
}
2007-09-22 12:59:41 +02:00
if ( ! ( check_owner ( $SESSID_USERNAME , $fDomain ) || authentication_has_role ( 'global-admin' )))
2007-03-24 08:27:00 +01:00
{
$error = 1 ;
$tMessage = $PALANG [ 'pViewlog_result_error' ];
}
if ( $error != 1 )
{
2007-09-15 02:10:48 +02:00
$query = " SELECT timestamp,username,domain,action,data FROM $table_log WHERE domain=' $fDomain ' ORDER BY timestamp DESC LIMIT 10 " ;
2007-03-24 08:27:00 +01:00
if ( 'pgsql' == $CONF [ 'database_type' ])
{
2007-09-15 02:10:48 +02:00
$query = " SELECT extract(epoch from timestamp) as timestamp,username,domain,action,data FROM $table_log WHERE domain=' $fDomain ' ORDER BY timestamp DESC LIMIT 10 " ;
2007-03-24 08:27:00 +01:00
}
$result = db_query ( $query );
if ( $result [ 'rows' ] > 0 )
{
while ( $row = db_array ( $result [ 'result' ]))
{
if ( 'pgsql' == $CONF [ 'database_type' ])
{
$row [ 'timestamp' ] = gmstrftime ( '%c %Z' , $row [ 'timestamp' ]);
}
$tLog [] = $row ;
}
}
}
2007-12-02 14:59:33 +01:00
include ( " templates/header.php " );
include ( " templates/menu.php " );
include ( " templates/viewlog.php " );
include ( " templates/footer.php " );
2007-03-24 08:27:00 +01:00
/* vim: set expandtab softtabstop=3 tabstop=3 shiftwidth=3: */
?>