311 lines
12 KiB
PHP
Executable File
311 lines
12 KiB
PHP
Executable File
<?php
|
|
/*
|
|
----------------------------------------------------------------------
|
|
LICENSE
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License (GPL)
|
|
as published by the Free Software Foundation; either version 2
|
|
of the License, or (at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
To read the license please visit http://www.gnu.org/copyleft/gpl.html
|
|
----------------------------------------------------------------------
|
|
*/
|
|
|
|
/**
|
|
* List the email account of a domain
|
|
*
|
|
* @copyright AlternC-Team 2000-2017 https://alternc.com/
|
|
*/
|
|
|
|
require_once("../class/config.php");
|
|
include_once("head.php");
|
|
|
|
$fields = array (
|
|
"mail_arg" => array ("request", "integer", ""), // from mail_add.php in case of error
|
|
"domain_id" => array ("request", "integer", ""),
|
|
"show_systemmails" => array ("request", "integer", ""),
|
|
"search" => array ("request", "string", ""),
|
|
"offset" => array ("request", "integer", 0),
|
|
"count" => array ("request", "integer", 50),
|
|
);
|
|
|
|
$champs=getFields($fields);
|
|
|
|
$counts=array("10" => "10", "20" => "20", "30" => "30", "50" => "50", "100" => "100", "200" => "200", "500" => "500", "1000" => "1000");
|
|
|
|
if(!$domain_id ) {
|
|
include("main.php");
|
|
exit();
|
|
}
|
|
|
|
if ($domain=$dom->get_domain_byid($domain_id)) {
|
|
$mails_list = $mail->enum_domain_mails($domain_id,$search,$offset,$count,$show_systemmails);
|
|
$allmails_list = $mail->enum_domain_mails($domain_id,$search,$offset,$count,'true');
|
|
}
|
|
?>
|
|
|
|
<table>
|
|
<tr>
|
|
<td colspan=2>
|
|
<?php if ($quota->cancreate("mail")) {
|
|
echo '<h3>'._("Create a new mail account")."</h3>";
|
|
} else {
|
|
echo '<h3>'._("Manage Catch-all")."</h3>";
|
|
}
|
|
|
|
echo $msg->msg_html_all(true, true);
|
|
?>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<?php if ($quota->cancreate("mail")) { ?>
|
|
<form method="post" action="mail_doadd.php" id="main" name="mail_create">
|
|
<?php csrf_get(); ?>
|
|
<input type="text" class="int intleft" style="text-align: right" name="mail_arg" value="<?php ehe($mail_arg); ?>" size="24" id="mail_arg" maxlength="255" /><span id="emaildom" class="int intright"><?php echo "@".$domain; ?></span>
|
|
<input type="hidden" name="domain_id" value="<?php ehe($domain_id); ?>" />
|
|
<input type="submit" name="submit" class="inb add" value="<?php __("Create this email address"); ?>" onClick="return false_if_empty('mail_arg', '<?php echo addslashes(_("Can't have empty mail."));?>');" />
|
|
</form>
|
|
<?php } // $quota->cancreate("mail") ?>
|
|
</td>
|
|
<td>
|
|
<span class="inb settings" valign='bottom'><a href="mail_manage_catchall.php?domain_id=<?php echo $domain_id?>"><?php __("Manage Catch-all for this domain");?></a></span>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br />
|
|
<hr id="topbar"/>
|
|
<h3><?php printf(_("Email addresses of the domain %s"),$domain); ?> : </h3>
|
|
<?php
|
|
if (empty($allmails_list) && empty($search)) {
|
|
$msg->raise("ERROR", 'mail', _("No mails for this domain."));
|
|
echo $msg->msg_html_all();
|
|
} else {
|
|
|
|
?>
|
|
|
|
<table class="searchtable"><tr><td>
|
|
<form method="get" name="formlist1" id="formlist1" action="mail_list.php">
|
|
<input type="hidden" name="domain_id" value="<?php ehe($domain_id); ?>" />
|
|
<input type="hidden" name="offset" value="0" />
|
|
<span class="int intleft"><img alt="<?php __("Search"); ?>" title="<?php __("Search"); ?>" src="/images/search.png" style="vertical-align: middle"/> </span><input type="text" name="search" value="<?php ehe($search); ?>" size="20" maxlength="64" class="int intright" />
|
|
</td><td>
|
|
<?php pager($offset,$count,$mail->total,"mail_list.php?domain_id=".$domain_id."&count=".$count."&search=".urlencode($search)."&offset=%%offset%%"); ?>
|
|
</td>
|
|
<td style="text-align:center">
|
|
<input type="checkbox" id="show_systemmails" name="show_systemmails" <?php if($show_systemmails) { echo "checked"; } ?> value="1" onclick="document.getElementById('formlist1').submit();" /><label for="show_systemmails" ><?php __("Show system emails");?></label>
|
|
</td>
|
|
</form>
|
|
<td style="text-align:right">
|
|
<form method="get" name="formlist2" id="formlist2" action="mail_list.php">
|
|
<input type="hidden" name="domain_id" value="<?php ehe($domain_id); ?>" />
|
|
<input type="hidden" name="offset" value="0" />
|
|
<?php __("Items per page:"); ?> <select name="count" class="inl" onchange="submit()"><?php eoption($counts,$count); ?></select>
|
|
</form>
|
|
</td></tr></table>
|
|
|
|
<form method="post" action="mail_del.php">
|
|
<?php csrf_get(); ?>
|
|
<input type="hidden" name="domain_id" value="<?php ehe($domain_id); ?>" />
|
|
<table class="tlist">
|
|
<tr><th></th><th></th><th><?php __("Enabled");?></th><th style="text-align:right"><?php __("Address"); ?></th><th><?php __("Pop/Imap"); ?></th><th><?php __("Other recipients"); ?></th><th><?php __("Last login time"); ?></th></tr>
|
|
<?php
|
|
|
|
$i=0;
|
|
//listing of every mail of the current domain.
|
|
if(!empty($mails_list)) {
|
|
while (list($key,$val)=each($mails_list)) {
|
|
$grey="";
|
|
?>
|
|
<tr class="lst">
|
|
<?php if ($val["mail_action"]=="DELETING") { $grey="grey"; ?>
|
|
<td colspan="3"><?php __("Deleting..."); ?></td>
|
|
<?php } else if ($val["mail_action"]=="DELETE") { $grey="grey"; ?>
|
|
<td></td>
|
|
<td>
|
|
<?php if ($val['type'] =='') { ?>
|
|
<div class="ina"><a href="mail_undelete.php?search=<?php ehe($search); ?>&offset=<?php ehe($offset); ?>&count=<?php ehe($count); ?>&domain_id=<?php ehe($domain_id); ?>&mail_id=<?php echo $val["id"] ?>" title="<?php __("This email will be deleted soon. You may still be able to undelete it by clicking here"); ?>"><img src="images/undelete.png" alt="<?php __("Undelete"); ?>" /><?php __("Undelete"); ?></a></div>
|
|
<?php } // if val[type] ?>
|
|
</td>
|
|
<td><img src="images/check_no.png" alt="<?php __("Disabled"); ?>" /></td>
|
|
<?php } else if (!$val["type"]) { ?>
|
|
<td align="center">
|
|
<input class="inc" type="checkbox" id="del_<?php ehe($i); ?>" name="d[]" value="<?php ehe($val["id"]); ?>" />
|
|
</td>
|
|
<td class="<?php echo $grey; ?>">
|
|
<div class="ina edit"><a href="mail_edit.php?mail_id=<?php echo $val["id"] ?>"><?php __("Edit"); ?></a></div></td>
|
|
<td class="<?php echo $grey; ?>"><?php if ($val["enabled"] ) { ?>
|
|
<img src="images/check_ok.png" alt="<?php __("Enabled"); ?>" />
|
|
<?php } else { ?>
|
|
<img src="images/check_no.png" alt="<?php __("Disabled"); ?>" />
|
|
<?php } // if enabled ?>
|
|
</td>
|
|
<?php } else { ?>
|
|
<td colspan="3"></td>
|
|
<?php } ?>
|
|
<td class="<?php echo $grey; ?>" style="text-align:right"><?php echo $val["address"]."@".$domain ?></td>
|
|
<?php if ($val["type"]) { ?>
|
|
<td colspan="3"><?php echo $val["typedata"]; ?></td>
|
|
<?php } else { ?>
|
|
<td class="<?php echo $grey; ?>"><?php if ($val["islocal"]) echo format_size($val["used"]).( ($val["quotabytes"]==0)?'':"/".format_size($val["quotabytes"])) ; else __("No"); ?></td>
|
|
<td class="<?php echo $grey; ?>"><?php echo $val["recipients"]; /* TODO : if >60chars, use "..." + js close/open */ ?></td>
|
|
<td class="<?php echo $grey; ?>"><?php if ($val["islocal"]) {
|
|
if (date("Y-m-d")==substr($val["lastlogin"],0,10)) echo substr($val["lastlogin"],11,5); else if (substr($val["lastlogin"],0,10)=="0000-00-00") __("Never"); else echo format_date(_('%3$d-%2$d-%1$d'),$val["lastlogin"]);
|
|
} ?></td>
|
|
<?php } ?>
|
|
</tr>
|
|
<?php
|
|
$i++;
|
|
}
|
|
}
|
|
?>
|
|
|
|
</table>
|
|
<p><input type="submit" class="inb delete" name="submit" value="<?php __("Delete the checked email addresses"); ?>" /></p>
|
|
</form>
|
|
|
|
<?php
|
|
} // end if no mail for this domain
|
|
?>
|
|
<hr/>
|
|
|
|
<h3><?php __("Mails configuration information");?></h3>
|
|
|
|
<?php __("Here are some configuration information you will need to configure your mail application.");?>
|
|
<br/>
|
|
<br/>
|
|
|
|
<div id="tabs-mailhelp">
|
|
|
|
<ul>
|
|
<li class="help"><a href="#tabs-mailhelp-out"><?php __("Outgoing mail (SMTP)"); ?></a></li>
|
|
<li class="help"><a href="#tabs-mailhelp-in"><?php __("Incoming mail"); ?></a></li>
|
|
</ul>
|
|
|
|
<div id="tabs-mailhelp-out">
|
|
|
|
<?php __("Which protocol shall you use?"); ?>
|
|
<div id="accordion-mailout">
|
|
<?php if ($mail->srv_postfix) { ?>
|
|
<h4><?php __("Submission");?></h4>
|
|
<div>
|
|
<ul>
|
|
<li><b><?php __("Server name: ");?></b> <?php __($mail->srv_postfix); ?></li>
|
|
<li><b><?php __("Username: ");?></b> <?php __("The mail address you want to access <i>(example : myuser@example.tld)</i>");?></li>
|
|
<li><b><?php __("Port: ");?></b> 587</li>
|
|
<li><b><?php __("Authentication: ");?></b><?php __("Yes")?></li>
|
|
<li><b><?php __("Authentication method: ");?></b><?php __("Normal password")?></li>
|
|
<li><b><?php __("Connection security:");?></b> STARTTLS</li>
|
|
</ul>
|
|
</div>
|
|
<?php } ?>
|
|
<?php if ($mail->srv_postfix) { ?>
|
|
<h4><?php __("SMTP");?></h4>
|
|
<div>
|
|
<ul>
|
|
<li><b><?php __("Server name: ");?></b> <?php __($mail->srv_postfix); ?></li>
|
|
<li><b><?php __("Username: ");?></b> <?php __("The mail address you want to access <i>(example : myuser@example.tld)</i>");?></li>
|
|
<li><b><?php __("Port: ");?></b> 25</li>
|
|
<li><b><?php __("Authentication: ");?></b><?php __("Yes")?></li>
|
|
<li><b><?php __("Authentication method: ");?></b><?php __("Normal Password")?></li>
|
|
<li><b><?php __("Connection security:");?></b> STARTTLS</li>
|
|
</ul>
|
|
</div>
|
|
<?php } ?>
|
|
<?php if ($mail->srv_postfix) { ?>
|
|
<h4><?php __("SMTPS");?></h4>
|
|
<div>
|
|
<ul>
|
|
<li><b><?php __("Server name: ");?></b> <?php __($mail->srv_postfix); ?></li>
|
|
<li><b><?php __("Username: ");?></b> <?php __("The mail address you want to access <i>(example : myuser@example.tld)</i>");?></li>
|
|
<li><b><?php __("Port: ");?></b> 465</li>
|
|
<li><b><?php __("Authentication: ");?></b><?php __("Yes")?></li>
|
|
<li><b><?php __("Authentication method: ");?></b><?php __("Normal Password")?></li>
|
|
<li><b><?php __("Connection security:");?></b> SSL</li>
|
|
</ul>
|
|
</div>
|
|
<?php } ?>
|
|
</div><!-- accordion-mailout -->
|
|
|
|
</div><!-- tabs-mailhelp-out -->
|
|
|
|
<div id="tabs-mailhelp-in">
|
|
|
|
<?php __("Which protocol shall you use?"); ?>
|
|
<div id="accordion-mailin">
|
|
<h4><?php __("IMAP");?></h4>
|
|
<div>
|
|
<ul>
|
|
<li><b><?php __("Server name: ");?></b> <?php __($mail->srv_dovecot); ?></li>
|
|
<li><b><?php __("Port: ");?></b> 143</li>
|
|
<li><b><?php __("Authentication: ");?></b><?php __("Yes")?></li>
|
|
<li><b><?php __("Authentication method: ");?></b><?php __("Normal password")?></li>
|
|
<li><b><?php __("Connection security:");?></b> STARTTLS</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<h4><?php __("IMAPS");?></h4>
|
|
<div>
|
|
<ul>
|
|
<li><b><?php __("Server name: ");?></b> <?php __($mail->srv_dovecot); ?></li>
|
|
<li><b><?php __("Port: ");?></b> 993</li>
|
|
<li><b><?php __("Authentication: ");?></b><?php __("Yes")?></li>
|
|
<li><b><?php __("Authentication method: ")?></b><?php __("Normal password")?></li>
|
|
<li><b><?php __("Connection security:");?></b> SSL</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<h4><?php __("POP3");?></h4>
|
|
<div>
|
|
<ul>
|
|
<li><b><?php __("Server name: ");?></b> <?php __($mail->srv_dovecot); ?></li>
|
|
<li><b><?php __("Port: ");?></b> 110</li>
|
|
<li><b><?php __("Authentication: ");?></b><?php __("Yes")?></li>
|
|
<li><b><?php __("Authentication method: ");?></b><?php __("Normal password")?></li>
|
|
<li><b><?php __("Connection security:");?></b> STARTTLS</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<h4><?php __("POP3S");?></h4>
|
|
<div>
|
|
<ul>
|
|
<li><b><?php __("Server name: ");?></b> <?php __($mail->srv_dovecot); ?></li>
|
|
<li><b><?php __("Port: ");?></b> 995</li>
|
|
<li><b><?php __("Authentication: ");?></b><?php __("Yes")?></li>
|
|
<li><b><?php __("Authentication method: ");?></b><?php __("Normal password")?></li>
|
|
<li><b><?php __("Connection security:");?></b> SSL</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div><!-- tabs-mailhelp-in -->
|
|
</div><!-- tabs-mailhelp -->
|
|
|
|
<script type="text/javascript">
|
|
|
|
$(function() {
|
|
$( "#accordion-mailout" ).accordion({
|
|
collapsible: true, active: false, header: "h4", heightStyle: "content"
|
|
});
|
|
});
|
|
|
|
$(function() {
|
|
$( "#accordion-mailin" ).accordion({
|
|
collapsible: true, active: false, header: "h4", heightStyle: "content"
|
|
});
|
|
});
|
|
|
|
|
|
$(function() {$( "#tabs-mailhelp" ).tabs();});
|
|
|
|
</script>
|
|
|
|
|
|
<?php include_once("foot.php"); ?>
|