function domainbox_SaveNameservers($params) { $authParameters = getAuthParameters($params); $apiEndpoint = $params["TestMode"] ? "https://sandbox.domainbox.net/?WSDL" : "https://live.domainbox.net/?WSDL"; $wasLocked = queryDomainLock($params); if ($wasLocked) { modifyDomainLock($params, false); } $modifyDomainNameserversParameters = new ModifyDomainNameserversParameters(); $modifyDomainNameserversParameters->DomainName = $params["sld"] . '.' . $params["tld"]; $nameservers = new Nameservers(); $nameservers->NS1 = $params["ns1"]; $nameservers->NS2 = $params["ns2"]; $nameservers->NS3 = $params["ns3"]; $nameservers->NS4 = $params["ns4"]; $nameservers->NS5 = $params["ns5"]; $modifyDomainNameserversParameters->Nameservers = $nameservers; try { $parameters = array('AuthenticationParameters' => $authParameters, 'CommandParameters' => $modifyDomainNameserversParameters); $client = new SoapClient($apiEndpoint, array('soap_version' => SOAP_1_2)); $result = $client->ModifyDomainNameservers($parameters); $result = $result->ModifyDomainNameserversResult; if ($result->ResultCode != 100) { $values["error"] = $result->ResultMsg; } } catch (Exception $e) { $values["error"] = "There was an error communicating with Domainbox"; } if ($wasLocked) { modifyDomainLock($params, true); } return $values; }