use utf8;
use warnings; no warnings "redefine";
use strict;
use Fehler qw(problem);
use Loader qw(select_date log_update);
use Dbase::Help qw(DoFn Do DoCopy DoTime);
use Dbase::Globals qw(timerange);

sub copy_ktarif($;$$) {
	my($tari,$kn,$datum) = @_;

	unless($datum) {
		$datum = select_date(256, "ab Zeitpunkt",undef,qw(= jetzt));
		return undef unless defined $datum;
		$datum = DoTime if $datum eq "=";
	}

	my($beginn,$ende,$notiz) = DoFn("select beginn,ende,notiz from tarifkunde where id = $tari");

	return problem "Datum nicht im Bereich ".timerange($beginn,$ende)." !\n"
		if $datum < $beginn or $datum > $ende and $ende > 0;

	log_update("tarifkunde","id",$tari,undef,"beginn","notiz",undef,
		DoFn("select beginn,notiz from tarifkunde where id=$tari"));
	Do("update tarifkunde set beginn = $datum, notiz = 0 where id = $tari");

	my $ntari = DoCopy("tarifkunde","id = $tari", id=>undef, beginn=>$beginn, ende=>$datum, notiz=>$notiz);

	print "Tarif umkopiert (alt: #$ntari)\n";
	$ntari;
}
1;
