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