package ISPMan::DNSMan::NSrecords;
use strict;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK $Config);
require Exporter;
@ISA = qw(Exporter AutoLoader);
@EXPORT = qw(
editnsrecords
addnsrecord
modifynsrecords
getns
);
$VERSION = '0.01';
use ISPMan::Config;
$Config=ISPMan::Config->new();
sub editnsrecords {
my $self=shift;
my $r=shift;
my $dn=$r->param("dn");
my ($entry)=$self->{'ldap'}->getEntry($dn);
print $r->param('domain'), "::NS Records
";
print qq|
Origion
|
Name Server
|
|;
my @records=$entry->get_value("record");
if (@records) {
print qq|
";
}
sub modifynsrecords {
my $self=shift;
my $r=shift;
my $dn=$r->param("dn");
my (@hosts, @origions);
for ($r->param("host")) {
push @hosts, $_ if $_;
}
for ($r->param("origion")) {
push @origions, $_ if $_;
}
my @records=map{"$origions[$_], $hosts[$_]"}0..$#hosts;
if (@records) {
$r->param("record", \@records);
$self->{'ldap'}->updateEntry($r);
}
$self->editnsrecords($r);
}
sub addnsrecord {
my $self=shift;
my $r=shift;
if ($r->param("host")){
my $record=join ',', ($r->param("origion"), $r->param("host"));
$r->param("record", $record);
$self->{'ldap'}->addEntry($r);
}
$self->editnsrecords($r);
}
1;
__END__