Файл: hostbiter.ru/Modules/mgr/mail.php
Строк: 127
<?
require ($_SERVER['DOCUMENT_ROOT'].'/Core/core.php');
$title = 'Создать почту';
require ($_SERVER['DOCUMENT_ROOT'].'/Core/myhead.php');
switch($_GET['list']){
default:
$max = 10;
$k_post = $db->prepare("SELECT * FROM `mails` WHERE `user` = ?");
$k_post->execute([$user['id']]);
$k_post = $k_post->rowCount();
$k_page = k_page($k_post,$max);
$page = page($k_page);
$start = $max*$page-$max;
$all = $db->prepare("SELECT * FROM `mails` WHERE `user` = ? LIMIT $start,$max");
$all -> execute([$user['id']]);
$all = $all -> fetchAll();
if($k_post > 0){
?>
Всего ящиков: <b><?=$k_post?></b><br />
<?
foreach($all as $row){
?>
<div class="border1">
<a href="/mgr/mail.php?list=dropmail&id=<?=$row['id']?>"><img src="/image/delete.png" alt="" title="Удалить" /></a>
Сервер: <b><?=$row['domain']?>:143</b><br/>
Логин: <b><?=$row['name']?><?=$row['domain']?></b><br/>
Пароль: <small><b> ваш пароль </b></small>
</div>
<?
}
if($k_page >1){
echo str('?',$k_page,$page);
}
}else{
echo '<center>
<div class="mess">
<img src="/image/EB03.png" alt="" /> Нет почтовых ящиков!
</div>
</center>';
}
echo '<img src="/image/cmail.png" alt="" /> <a href="/mgr/mail.php?list=crtmail">Создать почтовый ящик</a><br />
<img src="/image/cmail.png" alt="" /> <a href="/mgr/mail.php?list=dmail">Почтовые домены</a><br />
<img src="/image/reload.gif" alt="" /> <a href="/mgr/mail.php">Назад</a><br />';
break;
case 'dmail':
$max = 10;
$k_post = $db->prepare("SELECT * FROM `maildomains` WHERE `user` = ?");
$k_post->execute([$user['id']]);
$k_post = $k_post->rowCount();
$k_page = k_page($k_post,$max);
$page = page($k_page);
$start = $max*$page-$max;
$all = $db->prepare("SELECT * FROM `maildomains` WHERE `user` = ? LIMIT $start,$max");
$all -> execute([$user['id']]);
$all = $all -> fetchAll();
if($k_post > 0){
echo 'Всего ящиков: <b>'.$k_post.'</b><br />';
foreach($all as $row){
?>
<div class="border2">
<a href="/mgr/mail.php?list=dropdmail&id=<?=$row['id']?>"><img src="/image/delete.png" alt="" title="Удалить" /></a>
Сервер: <b>mail.<?=$row['domain']?></b><br />
</div>
<?
}
if($k_page >1){
echo str('?',$k_page,$page);
}
}else{
echo '<center>
<div class="mess">
<img src="/image/EB03.png" alt="" /> Нет почтовых доменов!
</div>
</center>';
}
echo '<img src="/image/cmail.png" alt="" /> <a href="/mgr/mail.php?list=crtdmail">Создать почтовый домен</a><br />
<img src="/image/reload.gif" alt="" /> <a href="/mgr/mail.php">Назад</a><br />';
break;
case 'crtmail':
$domains = $db->prepare("SELECT * FROM `domains` WHERE `user` = ?");
$domains->execute([$user['id']]);
$domains = $domains->fetchAll();
if(isset($_GET['create'])){
$name = htmlspecialchars(trim($_POST['name']));
$domain = htmlspecialchars(trim($_POST['dmn']));
$password = htmlspecialchars(trim($_POST['password']));
$email = $name.'@'.$domain;
$mds = $db->prepare("SELECT * FROM `mails` WHERE `name` = ?");
$mds->execute([$email]);
$mds = $mds->rowCount();
if($mds > 0) $err = 'Такой ящик уже существует!';
if(!$err){
$api = file_get_contents($config['PanelUrl']."/ispmgr?authinfo=".$user['login'].":".decode($user['password'])."&out=xml&func=email.edit&sok=ok&name=".$name."&domainname=".$domain."&passwd=".$password."&confirm=".$password."");
$sql4 = $db->prepare("INSERT INTO `mails` (`user`,`name`,`domain`,`password`) VALUES (?,?,?,?)");
$sql4->execute([$user['id'],$email,$domain,$password]);
$_SESSION['message'] = 'Почтовый ящик создан!';
header("Location: /mgr/mail.php");
exit;
}else{
$_SESSION['message'] = $err;
header("Location: /mgr/mail.php?list=crtmail");
exit;
}
}
?>
<form action="/mgr/mail.php?list=crtmail&create" method="post">
Имя ящика: <br />
<input name="name" type="text" required/> <br />
Домен:
<select name="dmn">
<?
foreach($domains as $row){
echo '<option value="'.$row['domain'].'">@'.$row['domain'].'</option>';
}
?>
</select>
<br /> Пароль:<br />
<input name="password" type="password" required/><br />
<div><input type="submit" class="gtab" name="create" value="Создать" /></div>
</form><img src="/image/reload.gif" alt="" /> <a href="/mgr/mail.php">Назад</a><br />
<?
break;
case 'crtdmail':
$domains = $db->prepare("SELECT * FROM `domains` WHERE `user` = ?");
$domains->execute([$user['id']]);
$domains = $domains->fetchAll();
if(isset($_GET['create'])){
$domain = htmlspecialchars(trim($_POST['dmn']));
$md = $db->prepare("SELECT * FROM `maildomains` WHERE `domain` = ?");
$md->execute([$domain]);
$md = $md->rowCount();
if($md > 0) $err = 'Такой домен уже существует!';
if(!$err){
$name = $domain;
$api = file_get_contents($config['PanelUrl']."/ispmgr?authinfo=".$user['login'].":".decode($user['password'])."&out=xml&func=emaildomain.edit&sok=ok&name=".$name."");
$sql1 = $db->prepare("INSERT INTO `maildomains` (`user`,`domain`) VALUES (?,?)");
$sql1->execute([$user['id'],$name]);
$_SESSION['message'] = 'Почтовый домен создан!';
header("Location: /mgr/mail.php?list=dmail");
exit;
}else{
$_SESSION['message'] = $err;
header("Location: /mgr/mail.php?list=crtdmail");
exit;
}
}
?>
<div class="style"><form action="/mgr/mail.php?list=crtdmail&create" method="post">
Домен: <br />
<select name="dmn">
<?
foreach($domains as $row){
echo '<option value="'.$row['domain'].'">@'.$row['domain'].'</option>';
}
?>
</select>
<input type="submit" class="gtab" value="Создать" name="create"/><div></div>
</form><img src="/image/reload.gif" alt="" /> <a href="/mgr/mail.php">Назад</a><br />
<?
break;
case 'dropdmail':
$id = abs(intval($_GET['id']));
$sql2 = $db->prepare("SELECT * FROM `maildomains` WHERE `id` = ?");
$sql2->execute([$id]);
$sql2 = $sql2->fetch();
$api = file_get_contents($config['PanelUrl']."/ispmgr?authinfo=".$user['login'].":".decode($user['password'])."&out=xml&func=emaildomain.delete&elid=".$sql2['domain']."");
$sql3 = $db->prepare("DELETE FROM `maildomains` WHERE `id` = ?");
$sql3->execute([$id]);
$_SESSION['message'] = 'Почтовый домен удалён!';
header("Location: /mgr/mail.php?list=dmail");
exit;
break;
case 'dropmail':
$id = abs(intval($_GET['id']));
$sql2 = $db->prepare("SELECT * FROM `mails` WHERE `id` = ?");
$sql2->execute([$id]);
$sql2 = $sql2->fetch();
$api = file_get_contents($config['PanelUrl']."/ispmgr?authinfo=".$user['login'].":".decode($user['password'])."&out=xml&func=email.delete&elid=".$sql2['name']."");
$sql3 = $db->prepare("DELETE FROM `mails` WHERE `id` = ?");
$sql3->execute([$id]);
$_SESSION['message'] = 'Почтовый домен удалён!';
header("Location: /mgr/mail.php");
exit;
break;
}
require ($_SERVER['DOCUMENT_ROOT'].'/Core/myfoot.php');
?>