Skip to content
Snippets Groups Projects
Commit 0b52bcbb authored by tbrehm's avatar tbrehm
Browse files

Optimized transports form.

parent 5bf366b4
No related branches found
No related tags found
No related merge requests found
<?php
$wb["server_id_txt"] = 'Server';
$wb["domain_txt"] = 'Domain';
$wb["transport_txt"] = 'Transport';
$wb["destination_txt"] = 'Destination';
$wb["type_txt"] = 'Type';
$wb["mx_txt"] = 'No MX lookup';
$wb["sort_order_txt"] = 'Sort by';
$wb["active_txt"] = 'Active';
$wb["btn_save_txt"] = 'Save';
......
<?php
/*
Copyright (c) 2005, Till Brehm, projektfarm Gmbh
Copyright (c) 2007, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
......@@ -42,7 +42,7 @@ require_once('../../lib/config.inc.php');
require_once('../../lib/app.inc.php');
// Checking module permissions
if(!stristr($_SESSION["s"]["user"]["modules"],$_SESSION["s"]["module"]["name"])) {
if(!stristr($_SESSION["s"]["user"]["modules"],'mail')) {
header("Location: ../index.php");
exit;
}
......@@ -64,7 +64,7 @@ class page_action extends tform_actions {
$client_group_id = $_SESSION["s"]["user"]["default_group"];
$client = $app->db->queryOneRecord("SELECT limit_mailrouting FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
// Check if the user may add another mailbox.
// Check if the user may add another transport.
if($client["limit_mailrouting"] >= 0) {
$tmp = $app->db->queryOneRecord("SELECT count(transport_id) as number FROM mail_transport WHERE sys_groupid = $client_group_id");
if($tmp["number"] >= $client["limit_mailrouting"]) {
......@@ -76,6 +76,39 @@ class page_action extends tform_actions {
parent::onShowNew();
}
function onShowEnd() {
global $app, $conf;
$tmp_parts = explode(":",$this->dataRecord["transport"]);
if(empty($this->id) && empty($tmp_parts[0])) {
$rec["type"] = 'smtp';
} else {
$rec["type"] = $tmp_parts[0];
}
if(@substr($tmp_parts[1],0,1) == '[') {
$rec["mx"] = 'checked="CHECKED"';
$rec["destination"] = @substr($tmp_parts[1],1,-1);
} else {
$rec["mx"] = '';
$rec["destination"] = @$tmp_parts[1];
}
$types = array('smtp' => 'smtp','uucp' => 'uucp','slow' => 'slow', 'error' => 'error', '' => 'null');
$type_select = '';
if(is_array($types)) {
foreach( $types as $key => $val) {
$selected = ($key == $rec["type"])?'SELECTED':'';
$type_select .= "<option value='$key' $selected>$val</option>\r\n";
}
}
$rec["type"] = $type_select;
$app->tpl->setVar($rec);
unset($type);
unset($types);
parent::onShowEnd();
}
function onSubmit() {
global $app, $conf;
......@@ -85,7 +118,7 @@ class page_action extends tform_actions {
$client_group_id = $_SESSION["s"]["user"]["default_group"];
$client = $app->db->queryOneRecord("SELECT limit_mailrouting FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
// Check if the user may add another mailbox.
// Check if the user may add another transport.
if($this->id == 0 && $client["limit_mailrouting"] >= 0) {
$tmp = $app->db->queryOneRecord("SELECT count(transport_id) as number FROM mail_transport WHERE sys_groupid = $client_group_id");
if($tmp["number"] >= $client["limit_mailrouting"]) {
......@@ -95,6 +128,17 @@ class page_action extends tform_actions {
}
} // end if user is not admin
//* Compose transport field
if($this->dataRecord["mx"] == 'y') {
$transport = '['.$this->dataRecord["destination"].']';
} else {
$transport = $this->dataRecord["destination"];
}
$this->dataRecord["transport"] = $this->dataRecord["type"].':'.$transport;
unset($this->dataRecord["type"]);
unset($this->dataRecord["mx"]);
unset($this->dataRecord["destination"]);
parent::onSubmit();
}
......
......@@ -12,8 +12,19 @@
<td class="frmText11"><input name="domain" type="text" class="text" value="{tmpl_var name='domain'}" size="30" maxlength="255"></td>
</tr>
<tr>
<td class="frmText11">{tmpl_var name='transport_txt'}:</td>
<td class="frmText11"><input name="transport" type="text" class="text" value="{tmpl_var name='transport'}" size="30" maxlength="255"></td>
<td class="frmText11">{tmpl_var name='type_txt'}:</td>
<td class="frmText11">
<select name="type" class="text">
{tmpl_var name='type'}
</select></td>
</tr>
<tr>
<td class="frmText11">{tmpl_var name='mx_txt'}:</td>
<td class="frmText11"><input name="mx" value="y" {tmpl_var name='mx'} type="checkbox"></td>
</tr>
<tr>
<td class="frmText11">{tmpl_var name='destination_txt'}:</td>
<td class="frmText11"><input name="destination" type="text" class="text" value="{tmpl_var name='destination'}" size="30" maxlength="255"></td>
</tr>
<tr>
<td class="frmText11">{tmpl_var name='sort_order_txt'}:</td>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment