servnest/reg.php

77 lines
1.4 KiB
PHP
Raw Normal View History

2021-02-17 22:48:49 +01:00
<?php
function regGetUpperDomain($domain) {
2022-04-18 16:05:00 +02:00
// Remove anything before the first dot and the first dot itself
return preg_replace("/^[^.]+\./", "", $domain);
2021-02-19 13:23:26 +01:00
}
2021-02-18 22:40:16 +01:00
function regListUserDomains($username) {
2022-04-18 16:05:00 +02:00
$db = new PDO('sqlite:' . DB_PATH);
$usernameArray[0] = $username;
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
$op = $db->prepare('SELECT domain FROM registry WHERE username = ?');
$op->execute($usernameArray);
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
$domains = false;
$i = 0;
$data = $op->fetch();
$domain = $data['domain'];
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
while ($domain != NULL) {
$domains[$i] = $domain;
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
$data = $op->fetch();
if (isset($data['domain']))
$domain = $data['domain'];
else
$domain = NULL;
2022-04-18 16:05:00 +02:00
$i++;
}
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
return $domains;
2021-02-18 22:40:16 +01:00
}
2021-02-19 13:23:26 +01:00
function regCheckDomainPossession($domain) {
2022-04-18 16:05:00 +02:00
checkAbsoluteDomainFormat($domain);
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
$db = new PDO('sqlite:' . DB_PATH);
$username[0] = $_SESSION['username'];
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
$op = $db->prepare('SELECT domain FROM registry WHERE username = ?');
$op->execute($username);
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
$dbDomain = $op->fetch()['domain'];
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
$owned = false;
while ($dbDomain != NULL) {
if ($dbDomain === $domain) {
$owned = true;
break;
}
$dbDomain = $op->fetch()['domain'];
}
2021-02-18 22:40:16 +01:00
2022-04-18 16:05:00 +02:00
if (!($owned === true))
userError("You don't own this domain.");
2021-02-18 22:40:16 +01:00
}
2021-02-19 13:23:26 +01:00
function regIsFree($domain) {
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
$domainArray[0] = $domain;
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
$db = new PDO('sqlite:' . DB_PATH);
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
$req = $db->prepare('SELECT domain FROM registry WHERE domain = ?');
$req->execute($domainArray);
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
$data = $req->fetch();
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
if (isset($data['domain'])) {
return false;
} else {
return true;
}
2021-02-17 22:48:49 +01:00
}