#!/usr/bin/perl
#Скрипт обрабатывает события
#Функция: domain.edit
#Функция: domain.delete
#
#
#
#Да, при создании зоны в DNSmanager запускается функция domain.edit с параметрами:.
#
#clicked_button=ok&dtype=master&email=<E-mail>&func=domain.edit&ip=<IP адрес>&masterip=&na
#
#
use CGI;
#Функции
#
sub l
{
my $filename = $0.'.log';
open(my $fh, '>>', $filename) or die "Не могу открыть '$filename' $!";
print $fh "$_[0]\n";
close $fh;
}
# Тело скрипта
my $Q = new CGI;
$func = $Q->param("func");
$elid = $Q->param("elid");
l('Вызов скрипта. СТАРТ.');
l(`date`);
l('func:'.$func);
l('elid:'.$elid);
l('clicked_button='.$Q->param('clicked_button'));
l('dtype='.$Q->param('dtype'));
l('email='.$Q->param('email'));
l('func='.$Q->param('func'));
l('ip='.$Q->param('ip'));
l('masterip='.$Q->param('masterip'));
l('name='.$Q->param('name'));
l('progressid='.$Q->param('progressid'));
l('sfrom='.$Q->param('sfrom'));
l('sok='.$Q->param('sok'));
#
#Отличить в плагине создание домена от редактирования можно по параметру elid, он пустой п
#
if ( $func eq "domain.edit" )
{
#редактирвоание домена
unless ( $elid )
{
# /*
# Параметр elid пустой. Домен создается.
# Нужно разобрать входные параметры функции
# clicked_button=ok
# dtype=master
# email=<E-mail>
# func=domain.edit
# ip=<IP адрес>
# masterip=
# name=<Домен>
# progressid=false
# sfrom=ajax
# sok=ok.
# Это доступно из.
# $Q->param("ПАРАМЕТР")
#У скрипта на ISPManager входные параметры:
#zone - текстовый параметр, имя зоны
#ipmaster - IP адрес мастера зоны
#del - любое значение, признак удаления зоны.
#*/
l('elid пустой');
$zone = $Q->param('name');
#ipmaster - передается в скрипт на ISPManager IP адрес мастера зоны
$ipmaster = $Q->param('ip');
l("$zone master $ipmaster");
}
else
{
#/*
# Параметр elid не пустой. Зона уже существует. Ни чего делать не надо.
# Или надо проверить существование зоны на вторичном и "передернуть" его?
#TO-DO - удаление зоны!!!!
#*/
l("$elid существует");
unless ( $Q->param('name') )
{
$zone=$elid;
}...
else
{
$zone = $Q->param('name');
}
l("создание домена $zone на $ipmaster");
}
}
if ( $func eq "domain.delete")
{
# Удаление домена
l("Удаление домена $zone");
}
l("end");
print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<doc/>\n";