#!/usr/local/bin/perl # list_aliases.cgi # Display users and aliases in a domain require './virtual-server-lib.pl'; &ReadParse(); $d = &get_domain($in{'dom'}); &can_edit_domain($d) && &can_edit_aliases() || &error($text{'aliases_ecannot'}); @aliases = &list_domain_aliases($d, 1); &ui_print_header(&domain_in($d), $text{'aliases_title'}, ""); # Create select / add links ($mleft, $mreason, $mmax, $mhide) = &count_feature("aliases"); @links = ( &select_all_link("d"), &select_invert_link("d") ); if ($mleft != 0) { push(@links, "". "$text{'aliases_add'}"); } push(@rlinks, "". "$text{'aliases_emass'}"); if (@aliases) { print &ui_form_start("delete_aliases.cgi"); print &ui_hidden("dom", $in{'dom'}),"\n"; print "
\n"; if ($mleft != 0 && $mleft != -1 && !$mhide) { print "",&text('aliases_canadd'.$mreason,$mleft),"

\n"; } elsif ($mleft == 0) { print "",&text('aliases_noadd'.$mreason, $mmax),"

\n"; } print &ui_links_row(\@links); print "

\n"; print &ui_links_row(\@rlinks); print "
\n"; if ($can_alias_comments) { ($anycmt) = grep { $_->{'cmt'} } @aliases; } print &ui_columns_start([ "", $text{'aliases_name'}, $text{'aliases_domain'}, $text{'aliases_dests'}, $anycmt ? ( $text{'aliases_cmt'} ) : ( ) ], 100, 0, [ "width=5" ]); foreach $a (sort { $a->{'from'} cmp $b->{'from'} } @aliases) { $name = $a->{'from'}; $name =~ s/\@\S+$//; $name = "$text{'alias_catchall'}" if ($name eq ""); $alines = ""; $simple = &get_simple_alias($d, $a); foreach $v (@{$a->{'to'}}) { ($anum, $astr) = &alias_type($v); if ($anum == 5 && $simple) { $msg = $simple->{'autotext'}; $msg = substr($msg, 0, 100)." ..." if (length($msg) > 100); $alines .= &text('aliases_reply', "".&html_escape($msg).""); } else { $alines .= &text("aliases_type$anum", "".&html_escape($astr)."")."
\n"; } } if (!@{$a->{'to'}}) { $alines = "$text{'aliases_dnone'}\n"; } print &ui_checked_columns_row([ "{'from'}'>$name", $d->{'dom'}, $alines, $anycmt ? ( $a->{'cmt'} ) : ( ) ], [ "width=5", "valign=top", "valign=top" ], "d", $a->{'from'}); } print &ui_columns_end(); } else { print "$text{'aliases_none'}

\n"; shift(@links); shift(@links); } print "
\n"; print &ui_links_row(\@links); print " \n"; print &ui_links_row(\@rlinks); print "
\n"; if (@aliases) { print &ui_form_end([ [ "delete", $text{'aliases_delete'} ] ]); } if ($single_domain_mode) { &ui_print_footer(&domain_footer_link($d), "", $text{'index_return2'}); } else { &ui_print_footer(&domain_footer_link($d), "", $text{'index_return'}); }