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

use Cf qw($MAILDOM $WDESCR);
use Loader qw(get_mailadr ipnr_reg print_adresse);
use Fehler qw(problem);
use Dbase::Globals qw(find_descr get_handle content umlaut_e persfirma);
use Dbase::Help qw(DoFn isodate DoTime);
use Dbase::IP;

sub ipnr_record_ripe($) {
	my($idi) = @_;
	my($stat,$ipnr,$bits,$name,$id,$ende) = DoFn("select status,ip6,bits,name,kunde,ende from ipkunde where id = $idi");
	my $ip = Dbase::IP->new_db($ipnr,$bits);

	my($ret);
	my($reg1) = find_descr("nic","denic");
	my($reg2) = find_descr("nic","ripe");

	my($nic,$kundep,$adminp,$techp);
	my $x = "x";
	ipnr_reg($idi,$x,$kundep,$adminp,$techp);

	return problem "Kein Besitzer gefunden!\n" unless $kundep;

	$adminp = get_handle($adminp,"ripe") if $adminp;
	return problem "Keinen Handle für den Admin-C gefunden!\n" unless $adminp;

	$techp = get_handle($techp,"ripe") if $techp;
	return problem "Keinen Handle für den Tech-C gefunden!\n" unless $techp;

	return problem "kein Netzname eingetragen" unless content $name;
	return problem "Netzname '$name' geht nicht" if $name !~ /^[a-z][-a-z0-9]+$/i;


#inetnum:     62.128.16.184 - 62.128.16.191
#netname:     CHECKTS-NET
#descr:       Martin H. Sluka
#descr:       D-91207 Lauf
#country:     DE
#admin-c:     FANY-RIPE
#tech-c:      NNN-RIPE
#status:      ASSIGNED PA
#notify:      guardian@noris.net
#mnt-by:      NORIS-MNT
#changed:     fany@noris.net 20010215
#source:      RIPE
###bzw.
#inet6num: 2001:780:109::/48
#status:  ASSIGNED
	
	$ret .= ($ip->is_v4 ? <<_1 : <<_2) . <<_3;
inetnum: ${\ $ip->str(2) }
_1
inet6num: ${\ $ip->str() }
_2
netname: $name
_3
# remarks: $commi

	{
		my $temp;

#		$temp = DoFn("select zusatzinfo from person where id=$kundep");
#		$ret .= "descr:   $temp\n" if defined $temp;

		$temp = DoFn("select abt from person where id=$kundep");
		$ret .= "descr:   $temp\n" if defined $temp;

		$temp = DoFn("select adresse from person where id=$kundep");
		# $temp =~ s/\|(\d{5})\s+/|D-$1 /g;
		if(defined $temp) {
			$ret .= "descr:   " . persfirma($kundep) . "\n";
			$temp = print_adresse($temp);
			$temp =~ s/\n/\ndescr:   /g;
			$ret .= "descr:   $temp\n";
		}

		$ret .= "country: DE\n";
	}
	my($j,$m,$t) = isodate(DoTime);
	$ret .= <<_0 . ($ip->is_v4 ? <<_1 : <<_2) . <<_3;
admin-c: $adminp
tech-c:  $techp
_0
status:  ASSIGNED PA
_1
status:  ASSIGNED
_2
notify:  guardian\@$MAILDOM
mnt-by:  ${\ uc("$WDESCR") }-MNT
changed: ${\ sprintf "%s %04d%02d%02d",get_mailadr(),$j,$m,$t }
source:  RIPE
_3

	$ret = umlaut_e($ret);

	$ret;
}

1;
