use utf8;
use warnings; no warnings "redefine";
use strict;

use Cf qw($MUSTERTEXT_TABELLEN);
use Loader qw(line_in line_printer log_view edit_templates);
use Fehler qw(report_fehler);
use Dbase::Help qw(DoSelect qquote Do DoFn);
use Dbase::Globals qw(content);

my @mustertext_tabellen = split ' ', $MUSTERTEXT_TABELLEN;

sub edit_templateses(;$) {
	my($kn) = @_;

	while(1) {
		content ( my $kat = line_in "$kn Mustertext Kategorie >",4 )
			or return undef;
		if($kat eq '?') {
			print <<END;
l     Kategorien auflisten
##    Texte dieser Kategorie editieren
NAME  Texte dieser Kategorie editieren
END
			next;
		}
		if($kat eq "H") { log_view($kn,"template"); next; }
		if($kat eq "l") { 
			my $hdr;
			line_printer;

			for my $typ (@mustertext_tabellen) {
				print $Db::pr_fh <<END unless $hdr++;
Kategorie         Anzahl
END
				printf $Db::pr_fh "%-20s %3d\n",$typ,DoFn("select count(*) from $typ");
			}
			next;
		}

		if($kat eq "a") {
			warn "Das geht hier nicht (mehr). Du willst die Entwicklung fragen\n";
			next;
		}
		unless( grep lc $kat eq lc, @mustertext_tabellen ) {
			print STDERR "... '$kat' gibt es nicht.\n";
			next;
		}
		edit_templates(lc $kat,$kn);
		next; fehler: report_fehler(4);
	}
}
1;
