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

use Loader qw(line_in list_fnbatch list_fnbatch_text delete_fnbatch
	set_fnbatch_mandant set_fnbatch_daten valid_fnbatch strip_kn
	warn_arbeit delete_fnbatch log_view);
use Fehler qw(report_fehler);

sub edit_fnbatch($;$) {
	my($id,$kn) = @_;

	return unless valid_fnbatch($id);

	$kn = strip_kn($kn)."Fnbatch_$id";
	my $work = warn_arbeit("fnbatch",$id,"*",$kn);

	domq: while(1) {
		my $act = line_in "$kn >",4; last if $act eq "";
		if($act eq "?") {
			print <<'END';
l   auflisten
p   Daten anzeigen
N   Verarbeitung wiederholen
    War der Job erfolgreich, _muss_ hierbei der Mandant gewechselt werden!

d   löschen, wenn Bearbeitung beendet

E   editieren (VORSICHT)
del löschen (VORSICHT)
END
			next;
		}
		if($act eq "l") { list_fnbatch($id,$kn); next; }
		if($act eq "p") { list_fnbatch_text($id,$kn); next; }
		if($act eq "del") { delete_fnbatch($id,$kn,1); return undef; }	
		if($act eq "d") { next if delete_fnbatch($id,$kn); return undef; }	
		if($act eq "N") { set_fnbatch_mandant($id,$kn); next; }
		if($act eq "H") { log_view($kn,"fnbatch","id",$id); next; }
		if($act eq "E") { set_fnbatch_daten($id,$kn); next; }
		if($act eq "!") { valid_fnbatch($id,4|8,$kn); next; }
		if($act eq "!!") { valid_fnbatch($id,2|4|8,$kn); next; }
		print "Aktion '$act' unbekannt.\n";
		next; fehler: report_fehler(4);
	}
}

1;
