Updated TheTool Frontend Framework & Table

This commit is contained in:
Luca Haid
2024-05-08 12:54:26 +00:00
parent 1e57d983b7
commit 58e124a461
46 changed files with 1364 additions and 2535 deletions
+5 -10
View File
@@ -66,12 +66,6 @@ class DomainController extends mfBaseController {
die(json_encode($return));
}
protected function importDomain(): void {
// use plesk api to get all domains
}
protected function importAllDomains(): array {
try {
@@ -119,15 +113,16 @@ class DomainController extends mfBaseController {
}
private function getAllDomains(): array {
$json = json_decode(file_get_contents('php://input'), true);
$filters = $json['filters'] ?? [];
$order = $json['order'] ?? [];
$page = $json['pagination']['page'] ?? 1;
$perPage = $json['pagination']['per_page'] ?? 10;
$domains = DomainModel::getAllDomains($filters, $perPage, $perPage * $page - $perPage);
$totalRows = DomainModel::countDomains($filters);
$domains = DomainModel::getAllDomains($filters, $perPage, $perPage * $page - $perPage, $order);
$filtered_available = DomainModel::countDomains($filters);
$totalRows = DomainModel::countDomains([]);
return [
"rows" => $domains,
@@ -135,6 +130,7 @@ class DomainController extends mfBaseController {
"page" => $page,
"total_pages" => ceil($totalRows / $perPage),
"per_page" => $perPage,
"filtered_available" => intval($filtered_available),
"total_rows" => intval($totalRows)
]
];
@@ -156,7 +152,6 @@ class DomainController extends mfBaseController {
dns_get_record($domain, DNS_SOA),
dns_get_record($domain, DNS_SRV),
dns_get_record($domain, DNS_AAAA),
);
}
+14 -10
View File
@@ -93,31 +93,35 @@ class DomainModel {
}
public static function getSqlFilter($filters): string {
$sql = isset($filters['domain']) ? self::generateFilterCondition($filters['domain'], "domain") : "";
$sql .= isset($filters['crDate']) ? " AND `crDate` = " . $filters['crDate'] : "";
$sql .= isset($filters['exDate']) ? " AND `exDate` = " . $filters['exDate'] : "";
$sql .= isset($filters['reDate']) ? " AND `reDate` = " . $filters['reDate'] : "";
$sql .= isset($filters['upDate']) ? " AND `upDate` = " . $filters['upDate'] : "";
$sql .= isset($filters['status']) ? " AND `status` = '" . $filters['status'] . "'" : "";
$sql .= isset($filters['transferLock']) && $filters['transferLock'] == 1 ? " AND `transferLock` = true" : "";
$sql .= isset($filters['authCode']) ? self::generateFilterCondition($filters['authCode'], "authCode") : "";
$sql = isset($filters['domain']) ? Helper::generateFilterCondition($filters['domain'], "domain") : "";
$sql .= isset($filters['crDate']) ? Helper::generateFilterCondition($filters['crDate'], "crDate") : "";
$sql .= isset($filters['exDate']) ? Helper::generateFilterCondition($filters['exDate'], "exDate") : "";
$sql .= isset($filters['reDate']) ? Helper::generateFilterCondition($filters['reDate'], "reDate") : "";
$sql .= isset($filters['upDate']) ? Helper::generateFilterCondition($filters['upDate'], "upDate") : "";
$sql .= isset($filters['status']) ? Helper::generateFilterCondition($filters['status'], "status") : "";
$sql .= isset($filters['transferLock']) ? Helper::generateFilterCondition($filters['transferLock'], "transferLock") : "";
$sql .= isset($filters['authCode']) ? Helper::generateFilterCondition($filters['authCode'], "authCode") : "";
$sql .= isset($filters['registrant']) && $filters['registrant'] !== 'all' ? " AND `registrant` = " . $filters['registrant'] : "";
$sql .= isset($filters['admin']) && $filters['admin'] !== 'all' ? " AND `admin` = " . $filters['admin'] : "";
$sql .= isset($filters['tech']) && $filters['tech'] !== 'all' ? " AND `tech` = " . $filters['tech'] : "";
$sql .= isset($filters['billing']) && $filters['billing'] !== 'all' ? " AND `billing` = " . $filters['billing'] : "";
$sql .= isset($filters['ns']) ? self::generateFilterCondition($filters['ns'], "ns") : "";
$sql .= isset($filters['ns']) ? Helper::generateFilterCondition($filters['ns'], "ns") : "";
$sql .= isset($filters['pleskId']) ? " AND `pleskId` " . ($filters['pleskId'] === "0" ? "IS NULL" : "IS NOT NULL") : "";
return $sql;
}
public static function getAllDomains($filters, $limit = null, $offset = 0): array {
public static function getAllDomains($filters, $limit = null, $offset = 0, $order = null): array {
$db = FronkDB::singleton();
$sql = "SELECT * FROM `Domain` WHERE 1 " . self::getSqlFilter($filters);
$sql .= $order === null || $order['key'] === null ? "" : " ORDER BY `" . $order['key'] . "` " . $order['order'];
$sql .= $limit === null ? "" : " LIMIT " . $limit . " OFFSET " . $offset;
$result = $db->query($sql);
$rows = [];
while ($row = $result->fetch_assoc()) {
$row['pleskId'] = $row['pleskId'] === null ? 0 : 1;
$rows[] = new DomainModel($row);
}