diff --git a/client_domain_edit_modal.php b/client_domain_edit_modal.php
index a475154e..9a3c0bff 100644
--- a/client_domain_edit_modal.php
+++ b/client_domain_edit_modal.php
@@ -72,6 +72,16 @@
+
+
diff --git a/client_domains.php b/client_domains.php
index 41c2c87c..94b7d38c 100644
--- a/client_domains.php
+++ b/client_domains.php
@@ -168,6 +168,7 @@ include("client_domain_add_modal.php");
document.getElementById("editDomainId").value = domain_id;
document.getElementById("editDomainName").value = domain.domain_name;
document.getElementById("editExpire").value = domain.domain_expire;
+ document.getElementById("editDomainIP").value = domain.domain_ip;
document.getElementById("editNameServers").value = domain.domain_name_servers;
document.getElementById("editMailServers").value = domain.domain_mail_servers;
document.getElementById("editRawWhois").value = domain.domain_raw_whois;
diff --git a/db.sql b/db.sql
index 81307296..078d3db5 100644
--- a/db.sql
+++ b/db.sql
@@ -431,9 +431,10 @@ CREATE TABLE `domains` (
`domain_id` int(11) NOT NULL AUTO_INCREMENT,
`domain_name` varchar(200) NOT NULL,
`domain_expire` date DEFAULT NULL,
- `domain_name_servers` VARCHAR(255) NULL DEFAULT NULL,
- `domain_mail_servers` VARCHAR(255) NULL DEFAULT NULL,
- `domain_raw_whois` TEXT NULL DEFAULT NULL,
+ `domain_ip` varchar(255) DEFAULT NULL,
+ `domain_name_servers` varchar(255) DEFAULT NULL,
+ `domain_mail_servers` varchar(255) DEFAULT NULL,
+ `domain_raw_whois` text DEFAULT NULL,
`domain_created_at` datetime NOT NULL,
`domain_updated_at` datetime DEFAULT NULL,
`domain_archived_at` datetime DEFAULT NULL,
diff --git a/post.php b/post.php
index b7783370..e9202ddb 100644
--- a/post.php
+++ b/post.php
@@ -5283,17 +5283,27 @@ if(isset($_POST['add_domain'])){
// NS, MX and WHOIS data
if(filter_var($name, FILTER_VALIDATE_DOMAIN) && (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN')){
$domain = escapeshellarg($name);
+ $a = strip_tags(mysqli_real_escape_string($mysqli,shell_exec("dig +short $domain")));
$ns = strip_tags(mysqli_real_escape_string($mysqli,shell_exec("dig +short NS $domain")));
$mx = strip_tags(mysqli_real_escape_string($mysqli,shell_exec("dig +short MX $domain")));
$whois = trim(strip_tags(mysqli_real_escape_string($mysqli,shell_exec("whois -H $domain | sed 's/ //g' | head -30"))));
+
+ // Get expiry date for com/org/net domains - This is very hacky. An API would be better.
+ if(!empty($whois && $expire == '0000-00-00')){
+ if(substr($_POST['name'], -3) == 'com' OR substr($_POST['name'], -3) == 'org' OR substr($_POST['name'], -3) == 'net'){
+ $pos = strpos($whois, 'Registry Expiry Date:');
+ $expire = substr($whois, $pos+22,10);
+ }
+ }
}
else{
- $ns = '';
- $mx = '';
- $whois = '';
+ $a = '';
+ $ns = '';
+ $mx = '';
+ $whois = '';
}
- mysqli_query($mysqli,"INSERT INTO domains SET domain_name = '$name', domain_registrar = $registrar, domain_webhost = $webhost, domain_expire = '$expire', domain_name_servers = '$ns', domain_mail_servers = '$mx', domain_raw_whois = '$whois', domain_created_at = NOW(), domain_client_id = $client_id, company_id = $session_company_id");
+ mysqli_query($mysqli,"INSERT INTO domains SET domain_name = '$name', domain_registrar = $registrar, domain_webhost = $webhost, domain_expire = '$expire', domain_ip = '$a', domain_name_servers = '$ns', domain_mail_servers = '$mx', domain_raw_whois = '$whois', domain_created_at = NOW(), domain_client_id = $client_id, company_id = $session_company_id");
//Logging
mysqli_query($mysqli,"INSERT INTO logs SET log_type = 'Domain', log_action = 'Created', log_description = '$name', log_created_at = NOW(), company_id = $session_company_id, log_user_id = $session_user_id");
@@ -5312,23 +5322,33 @@ if(isset($_POST['edit_domain'])){
$webhost = intval($_POST['webhost']);
$expire = trim(strip_tags(mysqli_real_escape_string($mysqli,$_POST['expire'])));
if(empty($expire)){
- $expire = "0000-00-00";
+ $expire = "0000-00-00";
}
- // NS, MX and WHOIS data
+ // A, NS, MX and WHOIS data
if(filter_var($name, FILTER_VALIDATE_DOMAIN) && (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN')){
- $domain = escapeshellarg($name);
- $ns = strip_tags(mysqli_real_escape_string($mysqli,shell_exec("dig +short NS $domain")));
- $mx = strip_tags(mysqli_real_escape_string($mysqli,shell_exec("dig +short MX $domain")));
- $whois = trim(strip_tags(mysqli_real_escape_string($mysqli,shell_exec("whois -H $domain | sed 's/ //g' | head -30"))));
+ $domain = escapeshellarg($name);
+ $a = strip_tags(mysqli_real_escape_string($mysqli,shell_exec("dig +short $domain")));
+ $ns = strip_tags(mysqli_real_escape_string($mysqli,shell_exec("dig +short NS $domain")));
+ $mx = strip_tags(mysqli_real_escape_string($mysqli,shell_exec("dig +short MX $domain")));
+ $whois = trim(strip_tags(mysqli_real_escape_string($mysqli,shell_exec("whois -H $domain | sed 's/ //g' | head -30"))));
+
+ // Get expiry date for com/org/net domains - This is very hacky. An API would be better.
+ if(!empty($whois)){
+ if(substr($_POST['name'], -3) == 'com' OR substr($_POST['name'], -3) == 'org' OR substr($_POST['name'], -3) == 'net'){
+ $pos = strpos($whois, 'Registry Expiry Date:');
+ $expire = substr($whois, $pos+22,10);
+ }
+ }
}
else{
- $ns = '';
- $mx = '';
- $whois = '';
+ $a = '';
+ $ns = '';
+ $mx = '';
+ $whois = '';
}
- mysqli_query($mysqli,"UPDATE domains SET domain_name = '$name', domain_registrar = $registrar, domain_webhost = $webhost, domain_expire = '$expire', domain_name_servers = '$ns', domain_mail_servers = '$mx', domain_raw_whois = '$whois', domain_updated_at = NOW() WHERE domain_id = $domain_id AND company_id = $session_company_id");
+ mysqli_query($mysqli,"UPDATE domains SET domain_name = '$name', domain_registrar = $registrar, domain_webhost = $webhost, domain_expire = '$expire', domain_ip = '$a', domain_name_servers = '$ns', domain_mail_servers = '$mx', domain_raw_whois = '$whois', domain_updated_at = NOW() WHERE domain_id = $domain_id AND company_id = $session_company_id");
//Logging
mysqli_query($mysqli,"INSERT INTO logs SET log_type = 'Domain', log_action = 'Modified', log_description = '$name', log_created_at = NOW(), company_id = $session_company_id, log_user_id = $session_user_id");