]> jfr.im git - irc/unrealircd/unrealircd-webpanel.git/blob - ip-whois.php
IPWHOIS: Make 'view raw' button not lean so much against the search bar
[irc/unrealircd/unrealircd-webpanel.git] / ip-whois.php
1 <?php
2
3 require_once "common.php";
4 require_once "header.php";
5
6 $ip_info = [];
7 $ip = NULL;
8 $noip = NULL;
9 if (isset($_GET['ip']))
10 $_POST['ip'] = $_GET['ip'];
11
12 if (isset($_POST['ip']))
13 $ip = $_POST['ip'];
14
15 $title = "IP WHOIS Lookup";
16 $title .= (isset($noip)) ? "" : " for $ip";
17
18 echo "<h4>$title</h4>";
19
20
21 if (!isset($ip))
22 $noip = true;
23
24 else
25 {
26 $whois = get_ip_whois($ip);
27 $file = split($whois, "\n");
28
29 $i = 0;
30
31 $start = false;
32 foreach ($file as $line) {
33 if (!strlen($line) && $start)
34 $i++;
35
36 if (!ctype_alnum($line[0])) // we don't care about your opinion we just want the info
37 continue;
38
39 $start = true;
40 $tok = split($line);
41 foreach ($tok as &$t)
42 if (!strlen($t))
43 $t = NULL;
44
45 $resplit = split(glue($tok));
46
47 $key = trim($resplit[0], ":");
48 $resplit[0] = NULL;
49 $value = glue($resplit);
50
51 if (!isset($ip_info[$i][$key]))
52 $ip_info[$i][$key] = $value;
53 else
54 $ip_info[$i][$key] .= "\n $value";
55 }
56 }
57 ?>
58
59 <br>
60 <form method="get" action="ip-whois.php">
61 <div class="input-group short-form-control justify-content-center align-items-center">
62 <input style="margin: 0%; height: 24px;" class="left-pan form-control" id="ip" name="ip" type="text" value=<?php echo $ip; ?>>
63 <div class="input-group-append">
64 <br><button type="submit" class="btn btn-primary">Go</button>
65 </div>
66 </div>
67 </form>
68
69 <?php
70
71 if ($ip)
72 {
73 ?>
74 <div class="container-xxl mt-3">
75 <div class="row">
76 <div class="col-sm-3">
77 <?php generate_ip_whois_table($ip_info); ?>
78 </div>
79 <div class="col-sm">
80 <div class="btn btn-sm btn-info" data-toggle="modal" data-target="#ip_whois_raw">View RAW</div>
81 </div>
82 </div>
83 </div>
84
85 <?php
86 }
87
88 ?>
89
90 <div class="modal fade" id="ip_whois_raw" tabindex="-1" role="dialog" aria-labelledby="confirmModalCenterTitle" aria-hidden="true">
91 <div class="modal-dialog modal-xl modal-dialog-centered" role="document">
92 <div class="modal-content">
93 <div class="modal-header">
94 <h5 class="modal-title" id="myModalLabel">RAW IP WHOIS Information</h5>
95 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
96 <span aria-hidden="true">&times;</span>
97 </button>
98 </div>
99 <div class="modal-body">
100 <code><?php echo str_replace("\n", "<br>",$whois); ?></code>
101 </div>
102 <div class="modal-footer">
103 <button id="CloseButton" type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
104 </div>
105 </div>
106 </div>
107 </div>
108
109 <?php require_once("footer.php");