<?php // do not create function or classes here and use include_once $_LANG['idnCode'] = 'IDN Code Country'; $_LANG['idnCodeDescription'] = 'Code of Internationalized Domain Name'; include_once dirname(__FILE__) . "/namecheapapi.php"; $showIdnCodeSelection = false; if (!empty($_POST['domain'])) { list($sld, $tld) = explode(".", $_POST['domain'], 2); $oIDNA = new NamecheapRegistrarIDNA($sld, $tld); $showIdnCodeSelection = $oIDNA->sldWasEncoded(); } else { if (isset($_SESSION['cart']['domains']) && sizeof($_SESSION['cart']['domains'])) { foreach ($_SESSION['cart']['domains'] as $cartDomain) { list($sld, $tld) = explode(".", $cartDomain['domain'], 2); $oIDNA = new NamecheapRegistrarIDNA($sld, $tld); if ($oIDNA->sldWasEncoded()) { $showIdnCodeSelection = true; break; } } } } if ($showIdnCodeSelection) { $idnCodesOptions = implode(",", array_keys($oIDNA->getCodeOptions())); foreach ($oIDNA->getTldList() as $tld) { foreach ($additionaldomainfields["." . $tld] as $additionalField) { if ($additionalField['Name'] == 'idnCode') { continue 2; } }
function namecheap_TransferSync($params) { require_once dirname(__FILE__) . "/namecheapapi.php"; $testmode = (bool) $params['TestMode']; $username = $testmode ? $params['SandboxUsername'] : $params['Username']; $password = $testmode ? $params['SandboxPassword'] : $params['Password']; $tld = $params['tld']; $sld = $params['sld']; $oIDNA = new NamecheapRegistrarIDNA($sld, $tld); $sld = $oIDNA->getEncodedSld(); try { $request_params = array('ListType' => "ALL", 'Page' => 1, 'PageSize' => 10, 'SortBy' => "DOMAINNAME", 'SearchTerm' => "{$sld}.{$tld}"); if (!empty($params['PromotionCode'])) { $request_params['PromotionCode'] = $params['PromotionCode']; } $api = new NamecheapRegistrarApi($username, $password, $testmode); $response = $api->request("namecheap.domains.transfer.getList", $request_params); $result = $api->parseResponse($response); $domains = $api->parseResultSyncHelper($result['TransferGetListResult']['Transfer'], "DomainName"); } catch (Exception $e) { $values['error'] = $e->getMessage(); return $values; } if (empty($domains["{$sld}.{$tld}"])) { $values['error'] = 'Domain not found'; return $values; } if ('completed' === strtolower($domains["{$sld}.{$tld}"]['Status'])) { $values['completed'] = true; } else { $values['error'] = $domains["{$sld}.{$tld}"]['StatusDescription']; } return $values; }
function namecheap_DeleteNameserver($params) { require_once dirname(__FILE__) . "/namecheapapi.php"; $testmode = (bool) $params['TestMode']; $debugmode = (bool) $params['DebugMode']; $username = $testmode ? $params['SandboxUsername'] : $params['Username']; $password = $testmode ? $params['SandboxPassword'] : $params['Password']; $tld = $params['tld']; $sld = $params['sld']; $oIDNA = new NamecheapRegistrarIDNA($sld, $tld); $sld = $oIDNA->getEncodedSld(); try { $request_params = array('SLD' => $sld, 'TLD' => $tld, 'Nameserver' => $params['nameserver']); $api = new NamecheapRegistrarApi($username, $password, $testmode, $debugmode); $response = $api->request("namecheap.domains.ns.delete", $request_params); $result = $api->parseResponse($response); } catch (Exception $e) { $values['error'] = "An error occurred: " . $e->getMessage(); if (!$debugmode) { logModuleCall('namecheap', 'DeleteNameserver', array('command' => "namecheap.domains.ns.delete") + $request_params, $response, $result, array()); } } return $values; }