| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- <?php
- $apiUserName = $vars['api_username'];
- $apiPassword = $vars['api_password'];
- $listDomains= [];
- if (isset($_POST['readcsvapi']) && $_POST['readcsvapi'] == "true") {
- $getDomainslist = getDomainsAPI($apiUserName, $apiPassword);
- if ($getDomainslist['status'] == "success") {
-
- if (str_contains($getDomainslist['data'], 'Unauthorized')) {
- $error = $getDomainslist['data'];
- } else {
- $strDomainslist = explode ("\n", $getDomainslist['data']);
-
- unset($strDomainslist[0]);
- $listDomainsArry = array_values($strDomainslist);
-
- foreach ($listDomainsArry as $key => $val) {
- $getData = explode (",", $val);
- if ($getData[0] !="") {
- $listDomains[$key]['domainName'] = $getData[0];
- $listDomains[$key]['domainDate'] = date("d.m.Y", strtotime($getData[1]));
- $listDomains[$key]['dnsSec'] = $getData[2];
- $listDomains[$key]['nameServers'] = $getData[3];
- }
- }
- function date_compare($a, $b)
- {
- $t1 = strtotime($a['domainDate']);
- $t2 = strtotime($b['domainDate']);
- return $t1 - $t2;
- }
- usort($listDomains, 'date_compare');
- }
- } else {
- $error = $getDomainslist['data'];
- }
- }
-
- function getDomainsAPI($apiUserName, $apiPassword) {
- $curl = curl_init();
-
- $headers = array(
- 'Authorization: Basic '. base64_encode($apiUserName.':'.$apiPassword),
- );
- curl_setopt_array($curl, array(
- CURLOPT_URL => "https://registrar.nic.ch/dnlist/{$apiUserName}/domain-{$apiUserName}.csv",
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_ENCODING => "",
- CURLOPT_MAXREDIRS => 10,
- CURLOPT_TIMEOUT => 30,
- CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
- CURLOPT_CUSTOMREQUEST => "GET",
- CURLOPT_HTTPHEADER => $headers,
- ));
- $response = curl_exec($curl);
- $err = curl_error($curl);
-
- curl_close($curl);
- if ($err) {
- $response = ["status" => "error", "data" => "cURL Error #: { $err}"];
-
- } else {
- $response = ["status" => "success", "data" => $response];
- }
- return $response;
- }
- include 'header.php';
- ?>
- <div class="csv_page col-md-12">
- <?php
- if (isset($error)) {
- echo '<div class="alert alert-danger" role="alert">
- ' . $error . '!
- </div>';
- }
- ?>
- <div class="row">
- <div class=" col-md-4">
- <div class="csv_file_upload">
- <form action="" method="post">
- <input type="hidden" name="readcsvapi" value="true" id="readcsvapi">
- <div class="form-group">
- <label>Get Domains List From Registry</label>
- </div>
- <div class="form-group">
- <input type="submit" value="Get Domains" class="btn btn-primary" name="submit">
- </div>
-
- </form>
- </div>
- </div>
- </div>
- <div class="list_domain">
- <table class="table table-stripped" id="csvdomains">
- <thead class="thead-dark">
- <tr>
- <th scope="col">Domain Name</th>
- <th scope="col">Date</th>
- <th scope="col">DNSSec</th>
- <th scope="col">Nameserver</th>
- </tr>
- </thead>
- <tbody>
- <?php
-
- if(count((array)$listDomains) > 0){
- $counter = 0;
- foreach ($listDomains as $key => $val) {
- echo '<tr><td>' . $val['domainName'] . '</td><td >' . $val['domainDate'] . '</td><td>' . $val['dnsSec'] . '</td><td>' . str_replace(";","<br>",$val['nameServers']) . '</td></tr>';
- $counter++;
- }
- }
-
- ?>
- </tbody>
- </table>
- </div>
- </div>
- <script>
- $(function() {
- $("#csvdomains").dataTable({
- order: [[2, "asc"]]
- });
- });
- </script>
|