
# Prüft ob alle Handles einer Domain entweder garnicht vorhanden
# oder korrekt beantragt sind

use utf8;
use warnings; no warnings "redefine";
use strict;
use Loader qw(domain_reg);
use Dbase::Help qw(DoFn);
use Dbase::Globals qw(find_descr);
use Fehler qw(problem);

sub check_handles($) {
	my($dom) = @_;
	my($nic,$owner,$adminc,$techc,$zonec,$billc);
	my %person;
	domain_reg($dom,undef,\$nic,\$person{Owner},\$person{'Admin-C'},\$person{'Tech-C'},\$person{'Zone-C'},\$person{'Bill-C'});
	return problem "kein NIC bekannt" unless $nic;
	if ( my @missing = grep !defined $person{$_}, keys %person ) {
		return problem join(' und ', @missing) . ' konnte' . ( @missing != 1 && 'n' ) . ' nicht ermittelt werden.';
	}

	while ( my($funktion, $pers) = each %person ) {
		my $hs = DoFn("select status from nic where person=$pers and nic=$nic");
		if($hs and $hs < find_descr("handlestatus","ok_nic")) {
			return problem "Domain #$dom, Person #$pers: $funktion-Handle unvollständig",$dom,$pers,$nic;
		}
	}
	1;
}
1;

