This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
khosb/plugins/registrar/_NAMES4EVER.php

172 lines
4.8 KiB
PHP
Raw Normal View History

<?php
/**
* AgileBill - Open Billing Software
*
* This body of work is free software; you can redistribute it and/or
* modify it under the terms of the Open AgileBill License
* License as published at http://www.agileco.com/agilebill/license1-4.txt
*
* For questions, help, comments, discussion, etc., please join the
* Agileco community forums at http://forum.agileco.com/
*
* @link http://www.agileco.com/
* @copyright 2004-2008 Agileco, LLC.
* @license http://www.agileco.com/agilebill/license1-4.txt
* @author Tony Landis <tony@agileco.com>
* @package AgileBill
* @version 1.4.93
*/
/*
============================================================================
Available Config Variables:
============================================================================
debug (0/1 test/live)
mode (0/1 test/live)
user
password
plan_id
============================================================================
*/
class plg_reg_NAMES4EVER
{
function plg_reg_NAMES4EVER ($obj)
{
$this->registrar = $obj->registrar;
$this->domainrs = $obj->domain;
$this->domain_name = $obj->domain['domain_name'].'.'.$obj->domain['domain_tld'];
$this->domain = $obj->domain['domain_name'];
$this->tld = $obj->domain['domain_tld'];
$this->term = $obj->domain['domain_term'];
if(!empty($obj->server['ns_primary']))
$this->ns1 = $obj->server['ns_primary'];
else
$this->ns1 = $obj->registrar['ns1'];
if(!empty($obj->server['ns_secondary']))
$this->ns2 = $obj->server['ns_secondary'];
else
$this->ns2 = $obj->registrar['ns2'];
if(!empty($obj->server['ns_ip_primary']))
$this->nsip1 = $obj->server['ns_ip_primary'];
else
$this->nsip1 = $obj->registrar['ns1ip'];
if(!empty($obj->server['ns_ip_secondary']))
$this->nsip2 = $obj->server['ns_ip_secondary'];
else
$this->nsip2 = $obj->registrar['ns2ip'];
# get the account details for the registrant:
$db = &DB();
$q = "SELECT * FROM ".AGILE_DB_PREFIX."account WHERE
id = ".$db->qstr( $this->domainrs['account_id'] )." AND
site_id = ".$db->qstr(DEFAULT_SITE);
$rs = $db->Execute($q);
if ($rs->RecordCount() == 1) {
$this->account = $rs->fields;
}
# get the country code for this account:
$q = "SELECT three_code FROM ".AGILE_DB_PREFIX."country WHERE
id = ".$db->qstr( $this->account['country_id'] )." AND
site_id = ".$db->qstr(DEFAULT_SITE);
$rs = $db->Execute($q);
if ($rs->RecordCount() == 1) {
$this->country = $rs->fields['three_code'];
}
}
######################
### Register domain
######################
function register()
{
global $VAR;
$VAR['test']=1;
# generate the xml string
$xml_request = '?<?xml version="1.0" ?><request version="1.0" id="REQUEST-123456">'.
'<reseller id="'. $this->registrar['user'] .'">'.
'<password>secret'. $this->registrar['password'] .'</password>'.
'<plan-id>'. $this->registrar['plan_id'] .'</plan-id>'.
'</reseller>'.
'<add-domain fqdn="'. $this->domain_name .'">'.
'<password>'. $this->account['password'] .'</password>'.
'<organization>'. $this->account['company'] .'</organization>'.
'<ns priority="1" fqdn="'.$this->ns1 .'">'.
'<ip>'. $this->nsip1 .'</ip>'.
'</ns>'.
'<ns priority="2" fqdn="'.$this->ns2 .'">'.
'<ip>'. $this->nsip2 .'</ip>'.
'</ns>'.
'<contact type="admin">'.
'<first-name>'. $this->account['first_name'] .'e</first-name>'.
'<last-name>'. $this->account['last_name'] .'</last-name>'.
'<organization>'. $this->account['company'] .'</organization>'.
'<address>'.
'<street>'. $this->account['address1'] .'</street>'.
'<city>'. $this->account['city'] .'</city>'.
'<state>'. $this->account['state'] .'</state>'.
'<postalcode>'. $this->account['zip'] .'</postalcode>'.
'<country>'. $this->country .'</country>'.
'</address>'.
'<voice>+1 (888) 555-1212</voice>'.
'<email>'. $this->account['email'] .'</email>'.
'</contact>'.
'<registration-period>'.$this->term .'</registration-period>'.
'</add-domain>'.
'</request>';
# Test mode:
if($this->registrar['mode'] == 1)
$this->url = '/PirinLink/Pirin.exe';
else
$this->url = '/PirinLink/PirinTest.exe';
# Create the SSL connection & get response from the gateway:
include_once (PATH_CORE . 'ssl.inc.php');
$n = new CORE_ssl;
$response = $n->connect('names4ever.com', $this->url, $xml_request, true, 1);
# debug
#if($this->registrar['debug'] == 1)
#echo "<textarea>$response</textarea>";
if(eregi('<status code="0">', $response))
return TRUE;
else
return FALSE;
}
### Renew domain
function renew()
{
return false;
}
### Transfer domain
function transfer()
{
return false;
}
### Park domain
function park()
{
return false;
}
}
?>