use utf8;
use warnings; no warnings "redefine";
use strict;
use Loader qw(line_in line_printer strip_kn valid_registrar log_view 
	list_registrar set_registrar_pgp set_registrar_flags
	set_registrar_email delete_registrar);
use Fehler qw(report_fehler);
use Dbase::Help qw(DoFn);
use Dbase::Globals qw(get_descr);

sub edit_registrar($;$) {
	my($id,$kn) = @_;
	return unless valid_registrar($id);

	my $nic = get_descr("nic",DoFn("select nic from registrar where id=$id"));
	$kn = strip_kn($kn)."Registrar_$id:$nic";

	while(1) {
		my $act = line_in "$kn >",4; last if $act eq "";
		if($act eq '?') {
			print <<'END';
l    ausgeben
k    Key-ID setzen              f   Flags setzen
m    Email-Adresse setzen

del  Datensatz löschen
END
			next;
		}
		if($act eq "H") { log_view($kn,"registrar","nic",$id); next; }
		if($act eq 'l') { list_registrar($id,$kn); next; }
		if($act eq 'k') { set_registrar_pgp($id,$kn); next; }
		if($act eq 'f') { set_registrar_flags($id,$kn); next; }
		if($act eq 'm') { set_registrar_email($id,$kn); next; }
		if($act eq 'del') { return unless delete_registrar($id,$kn); next; }

		print "Aktion '$act' kenne ich nicht. Liste mit '?'.\n";
		next; fehler: report_fehler(4);
	}
}
1;

