use utf8;
use warnings; no warnings "redefine";
use strict;
use Dbase::Globals qw(get_descr);
use Dbase::Help qw(Do DoFn);
use Loader qw(select_descr log_update);

sub set_person_pppoe($;$) {
	my ( $idi, $kn ) = @_;

	defined(
		my $rt = select_descr
		  'pppoe' => 4 + 1024,
		'', 'PPPoe-Template', '!hide'
	  )
	  or return;
	$rt = undef if $rt eq '-';
	return $rt unless defined $idi;

	my ( $kunde, $ort ) =
	  DoFn "SELECT kunde,pppoe FROM person WHERE id=$idi";
	return
	  if !defined $rt && !defined $ort
	  || defined $ort && defined $rt && $ort == $rt;

	$rt = 'NULL' unless defined $rt;
	log_update person =>
	  id              => $idi,
	  undef, 'pppoe', undef, get_descr
	  'pppoe' => $ort,
	  1;
	Do "UPDATE person SET pppoe = $rt WHERE id=$idi";

	Do "UPDATE kunde SET geaendert=UNIX_TIMESTAMP(NOW()) WHERE id=$kunde"
	  if $kunde;
}

1;
