mirror of
http://git.nowherejezfoltodf4jiyl6r56jnzintap5vyjlia7fkirfsnfizflqd.onion/nihilist/darknet-lantern.git
synced 2025-05-16 04:06:59 +00:00
201 lines
7 KiB
PHP
201 lines
7 KiB
PHP
<?php
|
|
function DisplayCSVNEW($csvfile, $query, $sensitive) {
|
|
$resultcount=0;
|
|
$row = 1;
|
|
$rowcount=0;
|
|
echo "<center><table>\n\n"; //begin html table formatting
|
|
if (($handle = fopen($csvfile, "r")) !== FALSE) {
|
|
|
|
|
|
$oldcatname="";
|
|
while (($data = fgetcsv($handle, 1000, ",",'"','\\')) !== FALSE) {
|
|
//PREVENT ALL MALICIOUS PHP PAYLOADS FROM BEING EXECUTED FROM CSV FILES!
|
|
|
|
$data[0] = htmlspecialchars($data[0]);
|
|
$data[1] = htmlspecialchars($data[1]);
|
|
$data[2] = htmlspecialchars($data[2]);
|
|
$data[3] = htmlspecialchars($data[3]);
|
|
$data[4] = htmlspecialchars($data[4]);
|
|
$data[5] = htmlspecialchars($data[5]);
|
|
$data[6] = htmlspecialchars($data[6]);
|
|
$data[7] = htmlspecialchars($data[7]);
|
|
|
|
$data[0]=preg_replace("/[^a-zA-Z0-9:\/.\ -✔️❌]/", "", $data[0]);
|
|
$data[1]=preg_replace("/[^a-zA-Z0-9:\/.\ -✔️❌]/", "", $data[1]);
|
|
$data[2]=preg_replace("/[^a-zA-Z0-9:\/.\ -✔️❌]/", "", $data[2]);
|
|
$data[3]=preg_replace("/[^a-zA-Z0-9:\/.\ -✔️❌]/", "", $data[3]);
|
|
$data[4]=preg_replace("/[^a-zA-Z0-9:\/.\ -✔️❌]/", "", $data[4]);
|
|
$data[5]=preg_replace("/[^a-zA-Z0-9:\/.\ -✔️❌]/", "", $data[5]);
|
|
$data[6]=preg_replace("/[^a-zA-Z0-9:\/.\ -✔️❌]/", "", $data[6]);
|
|
$data[7]=preg_replace("/[^a-zA-Z0-9:\/.\ -✔️❌]/", "", $data[7]);
|
|
$row++;
|
|
$num = count($data);
|
|
//echo "<p>" . $data[1] . "</p>";
|
|
//echo "<p> $num fields in line $row: <br /></p>\n";
|
|
//echo $row;
|
|
|
|
if ( $row == "2") {
|
|
echo "<tr><td>Category</td> <td>Name</td> <td>Description</td> <td>Score</td> <td></td></tr>";
|
|
}else{
|
|
if (str_contains(strtolower($data[5]), strtolower($query)) or str_contains(strtolower($data[3]), strtolower($query)) or str_contains(strtolower($data[2]), strtolower($query)) or str_contains(strtolower($data[1]), strtolower($query))) {
|
|
$resultcount++;
|
|
for ($c=0; $c < $num; $c++) { // iterate over each row
|
|
if ($data[7] == 0.0){
|
|
continue;
|
|
}else{
|
|
echo "<tr>"; // begin html table row for that Category
|
|
// if the row is the first one (name url status score) only display (Name Status Score):
|
|
// display the contents of a csv row
|
|
if ( $c == "1" ){
|
|
//add http if its not already done in the URL
|
|
if (!preg_match("~^(?:f|ht)tps?://~i", $data[3])) {
|
|
$urllink = "http://" . $data[3];
|
|
}else{
|
|
$urllink = $data[3];
|
|
}
|
|
|
|
//if ((($sensitive == 1) and ($data[4] == "✔️")) or (($sensitive == 0) and ($data[4] != "✔️")) ){
|
|
// ONLY display links if (sensitive equals to 1 and sensitiveCOLUMN equals to V) OR (sensitive equals to 0 and sensitiveCOLUMN is NOT equal to V)
|
|
if (($data[4] != "YES") or (($sensitive == 1) and ($data[4] == "YES"))){
|
|
$rowcount++;
|
|
|
|
|
|
if (strtolower($oldcatname) != strtolower($data[1])){
|
|
//echo "<td><tr></tr><tr></tr><tr></tr></td>"; // skip a row if new category
|
|
//echo "<td><tr></tr><tr></tr><tr></tr></td>"; // skip a row if new category
|
|
echo '<td class="category"><p><h4>' . $data[1] . ' </h4></p></td>'; // display the category as its the first row with this new category
|
|
$oldcatname=$data[1];
|
|
}else{
|
|
echo "<td><p>" . ' </p></td>'; // category is already displayed so skip it (empty cell in category column)
|
|
}
|
|
|
|
echo '<td class="linktitle"><p class="linktitle">' ; // begin the table cell of link title
|
|
if($data[4] == "YES"){
|
|
echo '<a class="sensitivelink" href="'; // begin a href
|
|
}else{
|
|
echo '<a href="'; // begin a href
|
|
}
|
|
//echo $data[3] . '"> '; // display the link
|
|
echo $urllink . '"> '; // display the link
|
|
echo $data[2] . ' </a></p></td><td class="description">'; // display the link title and close the a href and first cell, open the second cell
|
|
echo $data[5] . " </td><td>"; // OPTIONAL: display the description column
|
|
echo $data[7] . " </td><td>"; // display the score and close the second cell, open the third cell
|
|
|
|
if($data[6] == "YES"){
|
|
echo "✔️" ;
|
|
}else{
|
|
echo "❌" ;
|
|
}
|
|
echo " </td> \n"; // display the status and close the third cell
|
|
}
|
|
//if ($c == 2){
|
|
//}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
echo "</tr>"; // end html table row
|
|
}}
|
|
echo "\n</table></center>";
|
|
fclose($handle);
|
|
}
|
|
echo "<center><p>" . $rowcount . " Result(s) found.</p></center>";
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function DisplayCategories($instancename, $path) {
|
|
$resultcount=0;
|
|
$row = 1;
|
|
//echo $instancename;
|
|
//$csvfilenames = "verified.csv unverified.csv";
|
|
$csvfilenames = "verified.csv";
|
|
$csvfilenames = explode(' ', $csvfilenames);
|
|
|
|
foreach ($csvfilenames as $csvfilename){
|
|
//echo $csvfilename;
|
|
$csvfile = $path . $csvfilename;
|
|
//echo $csvfile;
|
|
//echo "test";
|
|
echo "<center><table>\n\n"; //begin html table formatting
|
|
if (($handle = fopen($csvfile, "r")) !== FALSE) {
|
|
|
|
|
|
$oldcatname="";
|
|
while (($data = fgetcsv($handle, 1000, ",",'"','\\')) !== FALSE) {
|
|
$num = count($data);
|
|
$row++;
|
|
|
|
if ( $row == "2") {
|
|
echo "<p> | ";
|
|
}else{
|
|
//PREVENT ALL MALICIOUS PHP PAYLOADS FROM BEING EXECUTED FROM CSV FILES!
|
|
$data[0] = htmlspecialchars($data[0]);
|
|
$data[1] = htmlspecialchars($data[1]);
|
|
$data[2] = htmlspecialchars($data[2]);
|
|
$data[3] = htmlspecialchars($data[3]);
|
|
$data[4] = htmlspecialchars($data[4]);
|
|
$data[5] = htmlspecialchars($data[5]);
|
|
$data[6] = htmlspecialchars($data[6]);
|
|
$data[7] = htmlspecialchars($data[7]);
|
|
|
|
|
|
|
|
$data[0]=preg_replace("/[^a-zA-Z0-9:\/.\ -]/", "", $data[0]);
|
|
$data[1]=preg_replace("/[^a-zA-Z0-9:\/.\ -]/", "", $data[1]);
|
|
$data[2]=preg_replace("/[^a-zA-Z0-9:\/.\ -]/", "", $data[2]);
|
|
$data[3]=preg_replace("/[^a-zA-Z0-9:\/.\ -]/", "", $data[3]);
|
|
$data[4]=preg_replace("/[^a-zA-Z0-9:\/.\ -]/", "", $data[4]);
|
|
$data[5]=preg_replace("/[^a-zA-Z0-9:\/.\ -]/", "", $data[5]);
|
|
$data[6]=preg_replace("/[^a-zA-Z0-9:\/.\ -]/", "", $data[6]);
|
|
$data[7]=preg_replace("/[^a-zA-Z0-9:\/.\ -]/", "", $data[7]);
|
|
|
|
$resultcount++;
|
|
for ($c=0; $c < $num; $c++) { // iterate over each row
|
|
if ( $c == "1" ){
|
|
|
|
if (strtolower($oldcatname) != strtolower($data[1])){
|
|
echo '<a href="index.php?query=' . $data[1] . '">' . $data[1] . '</a> | '; // display the category as its the first row with this new category
|
|
$oldcatname=$data[1];
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
echo '<a class="sensitivelink" href="index.php?query=.&sensitive=1">Display All Links</a> |</p>';
|
|
fclose($handle);
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
$min_length = 1;
|
|
$max_length = 32;
|
|
$instance= $_SERVER['SERVER_NAME'];
|
|
$participantpath="participants/" . $instance . '/';
|
|
$verifiedcsvpath="participants/" . $instance . '/verified.csv';
|
|
$unverifiedcsvpath="participants/" . $instance . '/unverified.csv';
|
|
DisplayCategories($instance, $participantpath);
|
|
|
|
?>
|
|
|
|
|
|
|
|
|
|
</br>
|
|
<h1><a href="http://git.nowherejezfoltodf4jiyl6r56jnzintap5vyjlia7fkirfsnfizflqd.onion/nihilist/darknet-lantern"><img src="img/lantern project large.png" class="projectbanner"></a></h1>
|
|
<p><u>Update Frequency:</u> every 3 hours</p> </br>
|
|
|
|
|