mirror of
https://github.com/postfixadmin/postfixadmin.git
synced 2024-09-19 19:22:14 +02:00
Use list.tpl to display the alias list
list-virtual.php: - use list.tpl for aliases - move show_gen_status handling for aliases to AliasHandler AliasHandler: - initStruct(): - add 'status' column (hidden by default) - hide 'created' - move 'active' after 'modified' to match old list-virtual.php layout - initMsg: add list_header - webformConfig(): if $CONF[show_status], set display_in_list for 'status' column. Also set a (whitespace) label to make sure it's displayed - db_read_from_db_postprocess(): if 'status' column is requested, call gen_show_status() for each row list-virtual.tpl - remove alias table header and create alias button (which should have been in list-virtual_alias.tpl) list-virtual_alias.tpl: - replace code to generate the alias table with {include 'list.tpl'} (and some variable assignments) git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1777 a1433add-5e2c-0410-b055-b7f2511e0802
This commit is contained in:
parent
adc038e218
commit
37bba15625
@ -89,10 +89,11 @@ $_SESSION['list-virtual:limit'] = $fDisplay;
|
|||||||
|
|
||||||
if (Config::bool('alias_domain')) {
|
if (Config::bool('alias_domain')) {
|
||||||
$handler = new AliasdomainHandler(0, $admin_username);
|
$handler = new AliasdomainHandler(0, $admin_username);
|
||||||
|
$formconf = $handler->webformConfig(); # might change struct
|
||||||
$aliasdomain_data = array(
|
$aliasdomain_data = array(
|
||||||
'struct' => $handler->getStruct(),
|
'struct' => $handler->getStruct(),
|
||||||
'msg' => $handler->getMsg(),
|
'msg' => $handler->getMsg(),
|
||||||
'formconf' => $handler->webformConfig(),
|
'formconf' => $formconf,
|
||||||
);
|
);
|
||||||
$aliasdomain_data['msg']['show_simple_search'] = False; # hide search box
|
$aliasdomain_data['msg']['show_simple_search'] = False; # hide search box
|
||||||
|
|
||||||
@ -142,6 +143,16 @@ if (count($search) == 0 || !isset($search['_'])) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$handler = new AliasHandler(0, $admin_username);
|
$handler = new AliasHandler(0, $admin_username);
|
||||||
|
$formconf = $handler->webformConfig(); # might change struct
|
||||||
|
$alias_data = array(
|
||||||
|
'formconf' => $formconf,
|
||||||
|
'struct' => $handler->getStruct(),
|
||||||
|
'msg' => $handler->getMsg(),
|
||||||
|
);
|
||||||
|
$alias_data['struct']['goto_mailbox']['display_in_list'] = 0; # not useful/defined for non-mailbox aliases
|
||||||
|
$alias_data['struct']['on_vacation']['display_in_list'] = 0;
|
||||||
|
$alias_data['msg']['show_simple_search'] = False; # hide search box
|
||||||
|
|
||||||
$handler->getList($list_param, array(), $page_size, $fDisplay);
|
$handler->getList($list_param, array(), $page_size, $fDisplay);
|
||||||
$pagebrowser_alias = $handler->getPagebrowser($list_param, array());
|
$pagebrowser_alias = $handler->getPagebrowser($list_param, array());
|
||||||
$tAlias = $handler->result();
|
$tAlias = $handler->result();
|
||||||
@ -241,7 +252,7 @@ if ($result['rows'] > 0) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$tCanAddAlias = false;
|
$alias_data['msg']['can_create'] = false;
|
||||||
$tCanAddMailbox = false;
|
$tCanAddMailbox = false;
|
||||||
|
|
||||||
$tDisplay_back = "";
|
$tDisplay_back = "";
|
||||||
@ -268,11 +279,12 @@ if (isset ($limit)) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if($limit['aliases'] == 0) {
|
if($limit['aliases'] == 0) {
|
||||||
$tCanAddAlias = true;
|
$alias_data['msg']['can_create'] = true;
|
||||||
}
|
}
|
||||||
elseif($limit['alias_count'] < $limit['aliases']) {
|
elseif($limit['alias_count'] < $limit['aliases']) {
|
||||||
$tCanAddAlias = true;
|
$alias_data['msg']['can_create'] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($limit['mailboxes'] == 0) {
|
if($limit['mailboxes'] == 0) {
|
||||||
$tCanAddMailbox = true;
|
$tCanAddMailbox = true;
|
||||||
}
|
}
|
||||||
@ -287,14 +299,6 @@ if (isset ($limit)) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$gen_show_status = array ();
|
|
||||||
|
|
||||||
if ((is_array ($tAlias) and sizeof ($tAlias) > 0)) {
|
|
||||||
foreach (array_keys($tAlias) as $i) {
|
|
||||||
$gen_show_status [$i] = gen_show_status($tAlias[$i]['address']);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$gen_show_status_mailbox = array ();
|
$gen_show_status_mailbox = array ();
|
||||||
$divide_quota = array ('current' => array(), 'quota' => array());
|
$divide_quota = array ('current' => array(), 'quota' => array());
|
||||||
if ((is_array ($tMailbox) and sizeof ($tMailbox) > 0)) {
|
if ((is_array ($tMailbox) and sizeof ($tMailbox) > 0)) {
|
||||||
@ -450,8 +454,8 @@ $smarty->assign ('tAliasDomains', $tAliasDomains);
|
|||||||
$smarty->assign ('aliasdomain_data', $aliasdomain_data);
|
$smarty->assign ('aliasdomain_data', $aliasdomain_data);
|
||||||
|
|
||||||
$smarty->assign ('tAlias', $tAlias);
|
$smarty->assign ('tAlias', $tAlias);
|
||||||
$smarty->assign ('gen_show_status', $gen_show_status, false);
|
$smarty->assign ('alias_data', $alias_data);
|
||||||
$smarty->assign ('tCanAddAlias', $tCanAddAlias);
|
|
||||||
$smarty->assign ('tMailbox', $tMailbox);
|
$smarty->assign ('tMailbox', $tMailbox);
|
||||||
$smarty->assign ('gen_show_status_mailbox', $gen_show_status_mailbox, false);
|
$smarty->assign ('gen_show_status_mailbox', $gen_show_status_mailbox, false);
|
||||||
$smarty->assign ('boolconf_used_quotas', Config::bool('used_quotas'));
|
$smarty->assign ('boolconf_used_quotas', Config::bool('used_quotas'));
|
||||||
|
@ -27,6 +27,8 @@ class AliasHandler extends PFAHandler {
|
|||||||
$this->struct=array(
|
$this->struct=array(
|
||||||
# field name allow display in... type $PALANG label $PALANG description default / ...
|
# field name allow display in... type $PALANG label $PALANG description default / ...
|
||||||
# editing? form list
|
# editing? form list
|
||||||
|
'status' => pacol( 0, 0, 0, 'html', '' , '' , '', '',
|
||||||
|
array('not_in_db' => 1) ),
|
||||||
'address' => pacol( $this->new, 1, 1, 'mail', 'alias' , 'pCreate_alias_catchall_text' ),
|
'address' => pacol( $this->new, 1, 1, 'mail', 'alias' , 'pCreate_alias_catchall_text' ),
|
||||||
'localpart' => pacol( $this->new, 0, 0, 'text', 'alias' , 'pCreate_alias_catchall_text' , '',
|
'localpart' => pacol( $this->new, 0, 0, 'text', 'alias' , 'pCreate_alias_catchall_text' , '',
|
||||||
/*options*/ '',
|
/*options*/ '',
|
||||||
@ -53,9 +55,9 @@ class AliasHandler extends PFAHandler {
|
|||||||
'on_vacation' => pacol( 1, 0, 1, 'bool', 'pUsersMenu_vacation' , '' , 0 ,
|
'on_vacation' => pacol( 1, 0, 1, 'bool', 'pUsersMenu_vacation' , '' , 0 ,
|
||||||
/*options*/ '',
|
/*options*/ '',
|
||||||
/*not_in_db*/ 1 ), # read_from_db_postprocess() sets the value - TODO: read active flag from vacation table instead?
|
/*not_in_db*/ 1 ), # read_from_db_postprocess() sets the value - TODO: read active flag from vacation table instead?
|
||||||
'active' => pacol( 1, 1, 1, 'bool', 'active' , '' , 1 ),
|
'created' => pacol( 0, 0, 0, 'ts', 'created' , '' ),
|
||||||
'created' => pacol( 0, 0, 1, 'ts', 'created' , '' ),
|
|
||||||
'modified' => pacol( 0, 0, 1, 'ts', 'last_modified' , '' ),
|
'modified' => pacol( 0, 0, 1, 'ts', 'last_modified' , '' ),
|
||||||
|
'active' => pacol( 1, 1, 1, 'bool', 'active' , '' , 1 ),
|
||||||
'_can_edit' => pacol( 0, 0, 1, 'vnum', '' , '' , 0 , '',
|
'_can_edit' => pacol( 0, 0, 1, 'vnum', '' , '' , 0 , '',
|
||||||
array('select' => '1 as _can_edit') ),
|
array('select' => '1 as _can_edit') ),
|
||||||
'_can_delete' => pacol( 0, 0, 1, 'vnum', '' , '' , 0 , '',
|
'_can_delete' => pacol( 0, 0, 1, 'vnum', '' , '' , 0 , '',
|
||||||
@ -68,6 +70,7 @@ class AliasHandler extends PFAHandler {
|
|||||||
$this->msg['error_already_exists'] = 'email_address_already_exists';
|
$this->msg['error_already_exists'] = 'email_address_already_exists';
|
||||||
$this->msg['error_does_not_exist'] = 'alias_does_not_exist';
|
$this->msg['error_does_not_exist'] = 'alias_does_not_exist';
|
||||||
$this->msg['confirm_delete'] = 'confirm_delete_alias';
|
$this->msg['confirm_delete'] = 'confirm_delete_alias';
|
||||||
|
$this->msg['list_header'] = 'pOverview_alias_title';
|
||||||
|
|
||||||
if ($this->new) {
|
if ($this->new) {
|
||||||
$this->msg['logname'] = 'create_alias';
|
$this->msg['logname'] = 'create_alias';
|
||||||
@ -88,6 +91,11 @@ class AliasHandler extends PFAHandler {
|
|||||||
$this->struct['domain']['display_in_form'] = 1;
|
$this->struct['domain']['display_in_form'] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Config::bool('show_status')) {
|
||||||
|
$this->struct['status']['display_in_list'] = 1;
|
||||||
|
$this->struct['status']['label'] = ' ';
|
||||||
|
}
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
# $PALANG labels
|
# $PALANG labels
|
||||||
'formtitle_create' => 'pMain_create_alias',
|
'formtitle_create' => 'pMain_create_alias',
|
||||||
@ -286,6 +294,10 @@ class AliasHandler extends PFAHandler {
|
|||||||
$db_result[$key]['_can_edit'] = 0;
|
$db_result[$key]['_can_edit'] = 0;
|
||||||
$db_result[$key]['_can_delete'] = 0;
|
$db_result[$key]['_can_delete'] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($this->struct['status']['display_in_list'] && Config::Bool('show_status')) {
|
||||||
|
$db_result[$key]['status'] = gen_show_status($db_result[$key]['address']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $db_result;
|
return $db_result;
|
||||||
|
@ -35,18 +35,8 @@
|
|||||||
{*** Aliases ***}
|
{*** Aliases ***}
|
||||||
{if $tab=='alias' || $tab=='all'}
|
{if $tab=='alias' || $tab=='all'}
|
||||||
{$nav_bar_alias.top}
|
{$nav_bar_alias.top}
|
||||||
<table id="alias_table">
|
{include file="list-virtual_alias.tpl"}
|
||||||
<tr>
|
|
||||||
<th colspan="7">{$PALANG.pOverview_alias_title}</th>
|
|
||||||
</tr>
|
|
||||||
{if $tAlias}
|
|
||||||
{include file="list-virtual_alias.tpl"}
|
|
||||||
{/if}
|
|
||||||
</table>
|
|
||||||
{$nav_bar_alias.bottom}
|
{$nav_bar_alias.bottom}
|
||||||
{if $tCanAddAlias}
|
|
||||||
<br /><a href="{#url_create_alias#}&domain={$fDomain|escape:"url"}" class="button">{$PALANG.add_alias}</a><br />
|
|
||||||
{/if}
|
|
||||||
{/if}
|
{/if}
|
||||||
{if $tab=='all'}<br />{/if}
|
{if $tab=='all'}<br />{/if}
|
||||||
{if $tab=='mailbox' || $tab=='all'}
|
{if $tab=='mailbox' || $tab=='all'}
|
||||||
|
@ -1,58 +1,10 @@
|
|||||||
{if isset($search._)}
|
{assign var="table" value='alias'}
|
||||||
{assign var="search" value=$search._}
|
{assign var="struct" value=$alias_data.struct}
|
||||||
{else}
|
{assign var="msg" value=$alias_data.msg}
|
||||||
{assign var="search" value=''}
|
{assign var="id_field" value=$msg.id_field}
|
||||||
{/if}
|
{assign var="formconf" value=$alias_data.formconf}
|
||||||
|
{assign var="items" value=$tAlias}
|
||||||
|
{assign var="RAW_items" value=$RAW_tAlias}
|
||||||
|
|
||||||
{#tr_header#}
|
{include 'list.tpl'}
|
||||||
{if $CONF.show_status===YES}
|
|
||||||
<td></td>
|
|
||||||
{/if}
|
|
||||||
<td>{$PALANG.pOverview_alias_address}</td>
|
|
||||||
<td>{$PALANG.to}</td>
|
|
||||||
<td>{$PALANG.last_modified}</td>
|
|
||||||
<td>{$PALANG.active}</td>
|
|
||||||
<td colspan="2"> </td>
|
|
||||||
</tr>
|
|
||||||
{foreach from=$tAlias item=item key=i}
|
|
||||||
{#tr_hilightoff#}
|
|
||||||
{if $CONF.show_status===YES}
|
|
||||||
<td>{$gen_show_status[$i]}</td>
|
|
||||||
{/if}
|
|
||||||
<td>
|
|
||||||
{if $search eq ""}
|
|
||||||
{$item.address}
|
|
||||||
{else}
|
|
||||||
{$item.address|replace:$search:"<span class='searchresult'>$search</span>"}
|
|
||||||
{/if}
|
|
||||||
</td>
|
|
||||||
{if $CONF.alias_goto_limit>0}
|
|
||||||
<td><i>sorry, alias_goto_limit > 0 not handled</i></td>
|
|
||||||
{else}
|
|
||||||
<td>
|
|
||||||
{foreach key=key2 item=singlegoto from=$item.goto}
|
|
||||||
|
|
||||||
{if $search eq ""}
|
|
||||||
{$singlegoto}<br />
|
|
||||||
{else}
|
|
||||||
{$singlegoto|replace:$search:"<span class='searchresult'>$search</span>"}<br />
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
{/foreach}
|
|
||||||
</td>
|
|
||||||
{/if}
|
|
||||||
<td>{$item.modified}</td>
|
|
||||||
{if $item._can_edit}
|
|
||||||
<td><a href="{#url_editactive#}alias&id={$item.address|escape:"url"}&active={if ($item.active==0)}1{else}0{/if}&token={$smarty.session.PFA_token|escape:"url"}"
|
|
||||||
>{if $item.active==1}{$PALANG.YES}{else}{$PALANG.NO}{/if}</a></td>
|
|
||||||
<td><a href="{#url_create_alias#}&edit={$item.address|escape:"url"}">{$PALANG.edit}</a></td>
|
|
||||||
<td><a href="delete.php?table=alias&delete={$item.address|escape:"url"}&token={$smarty.session.PFA_token|escape:"url"}"
|
|
||||||
onclick="return confirm ('{$PALANG.confirm}{$PALANG.aliases}: {$item.address}');">{$PALANG.del}</a></td>
|
|
||||||
{else}
|
|
||||||
<td>{if $item.active==1}{$PALANG.YES}{else}{$PALANG.NO}{/if}</td>
|
|
||||||
<td> </td>
|
|
||||||
<td> </td>
|
|
||||||
{/if}
|
|
||||||
</tr>
|
|
||||||
{/foreach}
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user