private function FixTransferLonelyFlag(Domain $Domain, Changelist $Changes) { $added = $Changes->GetAdded(); $removed = $Changes->GetRemoved(); if (count($added) + count($removed) < 2 && in_array('clientTransferProhibited', array_merge($added, $removed))) { // Add flag that is presented in domain and not will be removed at this time $candidates = array_diff($Domain->GetFlagList(), $removed); if ($candidates) { $added[] = array_shift($candidates); } else { // Remove flag that not presented in domain and not will be added at this time $candidates = array_diff($this->epp_flags, $Domain->GetFlagList(), $added); if ($candidates) { $removed[] = array_shift($candidates); } } } return array($added, $removed); }
{ if ($post_enable_managed_dns == 1 && $Domain->IsManagedDNSEnabled == 0) { $list = $Domain->GetNameserverList(); $chlist = new Changelist($list); // Set new Nameserver $chlist->Add(new Nameserver(CONFIG::$NS1)); $chlist->Add(new Nameserver(CONFIG::$NS2)); $deletens = array(); foreach ($list as $ns) if ($ns->HostName != CONFIG::$NS1 && $ns->HostName != CONFIG::$NS2) $chlist->Remove($ns); if (!$chlist->GetAdded() && !$chlist->GetRemoved()) $upd = true; else { try { $upd = $Registry->UpdateDomainNameservers($Domain, $chlist); } catch(Exception $e) { $errmsg = $e->GetMessage(); } } if ($upd) {
$changeList = new Changelist($o_ns, $n_ns); if (count($changeList->GetAdded()) != 0 || count($changeList->GetRemoved()) != 0) { foreach ($changeList->GetAdded() as $added) $changes[] = sprintf("Added new nameserver %s", $added); foreach ($changeList->GetRemoved() as $rem) $changes[] = sprintf("Nameserver %s removed", $rem); } $oFlags = $oDomain->GetFlagList(); $nFlags = $nDomain->GetFlagList(); $changeList = new Changelist($oFlags, $nFlags); if (count($changeList->GetAdded()) != 0 || count($changeList->GetRemoved()) != 0) { foreach ($changeList->GetAdded() as $added) $changes[] = sprintf("Added new flag %s", $added); foreach ($changeList->GetRemoved() as $rem) $changes[] = sprintf("Flag %s removed", $rem); } break; } $display["changes"] = $changes; require("src/append.inc.php"); ?>