ratisp

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 51abb44f2202d13348d5c190ef61eb6d2b7115fd
Author: dankert <devnull@localhost>
Date:   Sat, 21 Mar 2015 00:35:28 +0100

Erste Version von RATISP, dem einfachen ISP-Konfigurations-Panel.

Diffstat:
footer.php | 2++
header.php | 31+++++++++++++++++++++++++++++++
index.php | 31+++++++++++++++++++++++++++++++
login.php | 36++++++++++++++++++++++++++++++++++++
logout.php | 13+++++++++++++
menu.php | 44++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 157 insertions(+), 0 deletions(-)

diff --git a/footer.php b/footer.php @@ -0,0 +1,2 @@ +</body> +</html> diff --git a/header.php b/header.php @@ -0,0 +1,30 @@ +<html> +<body> +<h3></h3> +<?php +if ( @$_SESSION['user'] ) +{ + echo $_SESSION['user']; + ?><a href="logout.php">Logout</a><?php +} else { +?><a href="login.php">Not logged in</a><?php +} +?> + +<?php + +$config = parse_ini_file('config.ini.php',true); + +define('HTTP_POST',$_SERVER['REQUEST_METHOD']=='POST'); +define('HTTP_GET' ,!HTTP_POST ); + +define('LANG_DNS_RECORD','DNS Record'); +define('LANG_MAILBOX','Mailbox'); + +$dbConfig = $config['database']; +$db = new mysqli($dbConfig['host'], $dbConfig['user'],$dbConfig['password'], $dbConfig['database']); + +if ( $db->connect_errno ) + die("Failed to connect to MySQL: (" . $db->connect_errno . ") " . $db->connect_error); + +?>+ \ No newline at end of file diff --git a/index.php b/index.php @@ -0,0 +1,30 @@ +<?php +define('OK', true); + +define('USER_TYPE_ADMIN',1); +define('USER_TYPE_DOMAIN_ADMIN',2); +define('USER_TYPE_MAIL_ACCOUNT',3); + +session_name('ratisp'); +session_start(); + +if ( !@$_SESSION['user'] ) + require('login.php'); +else + switch( $_SESSION['user_type'] ) + { + case USER_TYPE_ADMIN: + require('domain_list.php'); + break; + case USER_TYPE_DOMAIN_ADMIN: + require('domain.php'); + break; + case USER_TYPE_MAIL_ACCOUNT: + require('mailbox.php'); + break; + default: + exit(); + } + + +?>+ \ No newline at end of file diff --git a/login.php b/login.php @@ -0,0 +1,35 @@ +<?php + +require( 'header.php' ); + +//if ( !OK ) die(':-O'); + +if ( HTTP_POST ) +{ + $stmt = $db->prepare("SELECT local_part,domain_name FROM mailbox WHERE local_part = ? AND password=MD5(?)"); + $stmt->bind_param('ss',$_POST['username'], $_POST['password'] ); + $stmt->execute(); + $stmt->bind_result($localPart,$domain); + if ( $stmt->fetch() ) + { + echo "Login"; + print_r($localPart); + $_SESSION['user' ] = $localPart; + $_SESSION['domain'] = $domain; + $_SESSION['user_type'] = USER_TYPE_ADMIN; + } + else + { + ?><div class="message">Login failed</div><?php + } + //require('index.php'); + exit(); +} +require( 'menu.php' ); + +?> +<form method="post"> +<input type="text" name="username" /> +<input type="password" name="password" /> +<input type="submit"> +</form>+ \ No newline at end of file diff --git a/logout.php b/logout.php @@ -0,0 +1,13 @@ +<?php + +require( 'header.php' ); + +if ( !OK ) die(':-O'); + +unset($_SESSION['user' ]); +unset($_SESSION['domain']); +unset($_SESSION['user_type']); + + +include('login.php'); +?> diff --git a/menu.php b/menu.php @@ -0,0 +1,43 @@ +Menu +<ul> +<?php + +// if ( !OK ) die(':-O'); + +$stmt = $db->prepare("SELECT name FROM domain"); +$stmtRecords = $db->prepare("SELECT record_name FROM domain_record WHERE domain_name = ?"); +$stmtMailbox = $db->prepare("SELECT local_part, domain_name FROM mailbox WHERE domain_name = ?"); + +$stmt->bind_result($domainName); +$stmtRecords->bind_param('s',$domain); +$stmtMailbox->bind_param('s',$domain); +$stmt->execute(); +while( $stmt->fetch() ) +{ + echo '<li>'.$domainName; + + echo '<ul><li>'.LANG_DNS_RECORD.'<ul>'; + $stmtRecords->execute(); + $stmtRecords->bind_result($record); + while( $stmt->fetch() ) + { + echo '<li>'.$record; + echo '</li>'; + } + echo '</ul></li></ul>'; + + echo '<ul><li>'.LANG_MAILBOX.'<ul>'; + $stmtMailbox->bind_result($mailboxLocal,$mailboxDomain); + $stmtMailbox->execute(); + while( $stmt->fetch() ) + { + echo '<li>'.$mailboxLocal.'@'.$mailboxDomain; + echo '</li>'; + } + echo '</ul></li></ul>'; + + echo '</li>'; +} + +?> +</ul>+ \ No newline at end of file