예제 #1
0
 /**
  *   Register domain
  *   @param Array $data for registering domain
  *   @return Mixed orderId 
  */
 public static function domain_Register($data = [])
 {
     $result = ['content' => '', 'errors' => [], 'status' => false];
     $fields = ['domain', 'nserver', 'someextattrib'];
     if (isset($data['domain'])) {
         $data['domain'] = idn_to_ascii($data['domain']);
     }
     $ns_servers = Domenus::get_ns_servers();
     // substituting default NS servers from configs
     if (empty($data['nserver'])) {
         $data['nserver'] = $ns_servers;
     }
     $validated = parent::validate($fields, $data);
     if (!empty($validated)) {
         $result['errors'] = $validated;
         return $result;
     }
     $response = parent::send_request('domain/register', $data);
     $result['content'] = parent::parse_response($response);
     if ($result['content']['success'] == true) {
         $result['status'] = true;
     } else {
         $result['errors'][] = self::get_status_code($result['content']['status']);
         $result['status'] = false;
     }
     return $result;
 }
예제 #2
0
 public function test__get_ns_servers__ReturnDefault()
 {
     $result = Domenus::get_ns_servers();
     $this->assertNotEmpty($result);
 }
예제 #3
0
/**
 *  prepare_ns_servers method
 *  @param Array $params containing WHMCS data
 *  @return Array $result containing either defined servers
 *  or default NS servers from config.yml
 * */
function prepare_ns_servers($params = [])
{
    $result = [];
    $servers = range(1, 5);
    foreach ($servers as $i) {
        $key = 'ns' . $i;
        if (!empty($params[$key])) {
            array_push($result, $params[$key]);
        }
    }
    if (empty($result)) {
        $result = Domenus::get_ns_servers();
    }
    return $result;
}