From 581ddd149132cccfe8d2a27aba89ea645caa797b Mon Sep 17 00:00:00 2001 From: "Kay Marquardt (Gnadelwartz)" Date: Thu, 25 May 2017 18:26:12 +0200 Subject: [PATCH] new design for edit list --- majordomo/delete_list.cgi | 15 +++--- majordomo/edit_list.cgi | 108 ++++++++++++++++++++++++++++++++------ majordomo/lang/de | 4 ++ majordomo/lang/de.UTF-8 | 4 +- majordomo/lang/en | 1 + 5 files changed, 105 insertions(+), 27 deletions(-) diff --git a/majordomo/delete_list.cgi b/majordomo/delete_list.cgi index 34988f0ac..1f610d460 100755 --- a/majordomo/delete_list.cgi +++ b/majordomo/delete_list.cgi @@ -1,4 +1,4 @@ -#!/usr/local/bin/perl +#!/usr/bin/perl # delete_list.cgi # Delete a mailing list, after asking the user if he is sure @@ -84,11 +84,8 @@ if ($in{'confirm'}) { } else { # ask the user if he is sure - &ui_print_header(undef, $text{'delete_title'}, ""); - print "
\n"; - print "\n"; - print "\n"; - print "",&text('delete_rusure', "".&html_escape($name).""), + &ui_print_header(undef, $text{'delete_title'}."
".&html_escape($name)."", ""); + print "",&text('delete_rusure', "".&html_escape($name).""), "
\n"; print "
    \n"; foreach $f (@files) { @@ -102,9 +99,9 @@ else { "
    \n"; } print "
\n"; - print "
\n"; - print "\n"; + local $bcss=' style="padding: 10px; text-align: center;"'; + print "
", + &ui_submit($text{'delete_ok'})."
\n"; &ui_print_footer("edit_list.cgi?name=$name", $text{'edit_return'}); } diff --git a/majordomo/edit_list.cgi b/majordomo/edit_list.cgi index 6e33943e1..1da25bb0d 100755 --- a/majordomo/edit_list.cgi +++ b/majordomo/edit_list.cgi @@ -1,4 +1,4 @@ -#!/usr/local/bin/perl +#!/usr/bin/perl # edit_list.cgi # Edit an existing mailing list @@ -7,11 +7,14 @@ require './majordomo-lib.pl'; %access = &get_module_acl(); &can_edit_list(\%access, $in{'name'}) || &error($text{'edit_ecannot'}); -$desc = &text('edit_for', "".&html_escape($in{'name'}).""); -&ui_print_header($desc, $text{'edit_title'}, ""); +$list = &get_list($in{'name'}, &get_config()); +$conf = &get_list_config($list->{'config'}); +local $moderate= (&find_value('moderate', $conf) =~ /no/) ? "" : " (".$text{'index_moderated'}.")"; -@links = ( "edit_members.cgi", "edit_info.cgi", "edit_subs.cgi", - "edit_mesg.cgi", "edit_access.cgi", "edit_head.cgi", +&ui_print_header(undef, $text{'edit_title'}."
".&html_escape($in{'name'})."$moderate", ""); + +@links = ( "edit_subs.cgi", + "edit_mesg.cgi", "edit_access.cgi", "edit_misc.cgi" ); foreach $a (&foreign_call($aliases_module, "list_aliases", &get_aliases_file())) { @@ -23,19 +26,90 @@ foreach $a (&foreign_call($aliases_module, "list_aliases", if ($isdigest) { push(@links, "edit_digest.cgi"); } -map { s/edit_(\S+).cgi/images\/$1.gif/ } (@icons = @links); -map { s/edit_(\S+).cgi/$text{"$1_title"}/ } (@titles = @links); -@links = map { $_."?name=".&urlize($in{'name'}) } @links; -&icons_table(\@links, \@titles, \@icons); +# name to add to links +$name_link="?name=".&urlize($in{'name'}); +# other buttons +local $otherbut, $bcss=' style="display: box; float: left; padding: 10px;"'; +foreach (@links) +{ + $action = $_ .$name_link, ($submit=$_) =~ s/edit_(\S+).cgi/$1_title/; + $otherbut .= "
".&ui_submit($text{$submit})."
\n"; +} +print $otherbut; + +# css for table +local $tcss='style="width: 98%; margin: 1% !important;"'; +local $dcss='style="text-align: right; vertical-align: top; padding: 5px !important; min_heigth: 5em;"'; +local $vcss='style="width: 40%; border: 1px solid lightgrey; padding: 5px !important;"'; + +# title, descritpion, info +print "\n"; +print ""; +print "\n"; +print "
".$text{'info_title'}."
", + &ui_submit($text{'modify'}),"
\n
\n"; +print "\n"; +$desc = &find_value("description", $conf); +print "\n"; +print "\n"; +print "\n"; +print "\n"; +print "
".$text{'info_desc'}."$desc
",&text('info_info', $in{'name'}),""; + open(INFO, $list->{'info'}); + while() { + print if (!/^\[Last updated on:/); + } + close(INFO); +print "
".$text{'info_intro'}." \n"; + open(INTRO, $list->{'intro'}); + while() { + print if (!/^\[Last updated on:/); + } + close(INTRO); +print "
\n"; + +# header and footer +print "\n"; +print ""; +print "\n"; +print "
".$text{'head_title'}."
", + &ui_submit($text{'modify'}),"
\n
\n"; +print "\n"; +print "\n"; +print "\n"; +print "
".$text{'head_fronter'}." \n"; +print &find_value("message_fronter", $conf); +print "
".$text{'head_footer'}." \n"; +print &find_value("message_footer", $conf); +print "
".$text{'head_headers'}." \n"; +print &find_value("message_headers", $conf); +print "
\n"; + +# members +print "\n"; +print ""; +print "\n"; +print "
".$text{'members_title'}."
", + &ui_submit($text{'modify'}),"
\n
\n"; +local @cols, @tds, $count=0; +print &ui_columns_start(\@cols, $tcss, 0, \@tds); + open(MEMS, $list->{'members'}); + while() { + $count++; + push(@cols, $_); + if($count % 3 == 0) {print &ui_columns_row(\@cols, \@tds); @cols=();} + } + close(MEMS); +push(@cols,"","") if $count % 3 == 1; +push(@cols, "") if $count % 3 == 2; +print &ui_columns_row(\@cols, \@tds); +print "
\n"; + +#delete list +print "
", + &ui_submit($text{'edit_delete'})."
\n"; +print "
$text{'edit_deletemsg'}
\n"; -print &ui_hr(); -print "\n"; -print "\n"; -print "\n"; -print "\n"; -print "\n"; -print "\n"; -print "
$text{'edit_deletemsg'}
\n"; &ui_print_footer("", $text{'index_return'}); diff --git a/majordomo/lang/de b/majordomo/lang/de index 8156f13d2..17877a93a 100644 --- a/majordomo/lang/de +++ b/majordomo/lang/de @@ -218,3 +218,7 @@ access_adv0=Jedermann create_archive=Mailingliste archivieren? index_globaldesc=Bearbeiten der globalen Majordomo-Einstellungen, die auf alle Mailinglisten angewandt werden delete_title=Lösche die Liste +index_name=Name der Mailingliste +index_info=Kurzbescheibung +index_moderated=Modieriert +index_count=# der Teilnehmer diff --git a/majordomo/lang/de.UTF-8 b/majordomo/lang/de.UTF-8 index 29f14d6a2..f7abd7e0d 100644 --- a/majordomo/lang/de.UTF-8 +++ b/majordomo/lang/de.UTF-8 @@ -220,4 +220,6 @@ index_globaldesc=Bearbeiten der globalen Majordomo-Einstellungen, die auf alle M delete_title=Lösche die Liste index_name=Name der Mailingliste index_info=Kurzbescheibung -index_count=# der Teilnehmer \ No newline at end of file +index_moderated=Modieriert +index_count=# der Teilnehmer +list_title=Übersicht Mailingliste diff --git a/majordomo/lang/en b/majordomo/lang/en index 3c960362b..856f148ac 100644 --- a/majordomo/lang/en +++ b/majordomo/lang/en @@ -20,6 +20,7 @@ index_return=mailing lists index_version=Majordomo version $1 index_name=Name of list index_info=List info +index_moderated=Moderated index_count=# of users global_title=Global Options