show.php 6.37 KB
Newer Older
1
<meta charset="utf-8"> 
David Morley's avatar
David Morley committed
2
<!-- /* Copyright (c) 2011, David Morley. This file is licensed under the Affero General Public License version 3 or later. See the COPYRIGHT file. */ -->
dmorley's avatar
dmorley committed
3
<table id="myTable" class="tablesorter zebra-striped" width="98%">
4 5 6 7 8 9
<thead>
<tr>
<th width="220px">Diaspora Pod<a class="tipsy" title="A pod is a site for you to set up your account.">?</a></th>
<th>Version<a class="tipsy" title="Version of Diaspora this pod runs">?</a></th>
<th>Uptime<a class="tipsy" title="Percent of the time the pod is online for <?php echo date("F") ?>.">?</a></th>
<th>Signups<a class="tipsy" title="Open to public or Closed/Invite only.">?</a></th>
dmorley's avatar
cleanup  
dmorley committed
10 11
<th>Total Users<a class="tipsy" title="Number of total users on this pod.">?</a></th>
<th>Active Users<a class="tipsy" title="Number of users active last 6 months on this pod.">?</a></th>
12
<th>Posts<a class="tipsy" title="Number of total posts on this pod.">?</a></th>
13
<th>Comments<a class="tipsy" title="Number of total comments on this pod.">?</a></th>
dmorley's avatar
dmorley committed
14 15
<th>Months<a class="tipsy" title="How many months has this pod been online? Click number for more history.">?</a></th>
<th>Rating<a class="tipsy" title="User and Admin rating for this pod.">?</a></th>
16
<th>Location<a class="tipsy" title="Pod location, based on IP Geolocation">?</a></th>
17
<th>Services<a class="tipsy" title="External Social Networks this pod can post to">?</a></th>
18 19 20
</tr>
</thead>
<tbody>
David Morley's avatar
David Morley committed
21
<?php
22 23 24 25 26 27 28 29
$tt=0;
 include('db/config.php');
 $dbh = pg_connect("dbname=$pgdb user=$pguser password=$pgpass");
 if (!$dbh) {
     die("Error in connection: " . pg_last_error());
 }  
 $hidden = isset($_GET['hidden'])?$_GET['hidden']:null;
 if ($hidden == "true") {
dmorley's avatar
dmorley committed
30
 $sql = "SELECT * FROM pods WHERE hidden <> 'no' ORDER BY active_users_halfyear DESC NULLS LAST, uptimelast7 DESC NULLS LAST";
31
 } else {
dmorley's avatar
dmorley committed
32
 $sql = "SELECT * FROM pods WHERE adminrating <> -1 AND hidden <> 'yes' ORDER BY active_users_halfyear DESC NULLS LAST, uptimelast7 DESC NULLS LAST";
33 34 35 36 37 38 39 40 41 42 43 44
 }
 $result = pg_query($dbh, $sql);
 if (!$result) {
     die("Error in SQL query: " . pg_last_error());
 }   
 $numrows = pg_num_rows($result);
 while ($row = pg_fetch_array($result)) {
$tt=$tt+1;
if ($row["secure"] == "true") {
$method = "https://";
$class="green";
$tip="This pod uses SSL encryption for traffic.";} 
root's avatar
root committed
45

46 47 48 49 50 51
else {
$method = "http://";
$class="red";
$tip="This pod does not offer SSL";
} 
$verdiff =  str_replace(".", "", $row["masterversion"]) - str_replace('.', '', $row["shortversion"]);
root's avatar
root committed
52 53


54
$tip.="\n This pod {$row["name"]} has been watched for {$row["monthsmonitored"]} months and its average ping time is {$row["responsetimelast7"]} with uptime of {$row["uptimelast7"]}% this month and was last checked on {$row["dateupdated"]}. "; 
dmorley's avatar
dmorley committed
55
$tip.="On a score of -20 to +20 this pod is a {$row["score"]} right now";
root's avatar
root committed
56

dmorley's avatar
cleanup  
dmorley committed
57
     echo "<tr><td><a class='$class' target='new' href='". $method . $row["domain"] ."'>" . $row["domain"] . " <div title='$tip' class='tipsy' style='display: inline-block'>?</div></a></td>";
58
"</div></td>";
59

60
if (stristr($row["shortversion"],'head')) 
dmorley's avatar
dmorley committed
61
{$version=".dev";$pre = "This pod runs pre release 
62 63 64 65 66 67 68 69 70 71 72
development code";} elseif (!$row["shortversion"]) 
{$version="0";$pre = "This pod runs 
unknown code";} 
else 
{$version=$row["shortversion"];$pre="This pod runs production code";}
if ($row["shortversion"] == $row["masterversion"] && $row["shortversion"] != "") {$classver = "green";} elseif ($verdiff > 6) {$classver = "red";} else {$classver = "black";}
     echo "<td class='$classver'><div title='{$pre} codename: {$row["longversion"]} master version is: {$row["masterversion"]}' class='tipsy'>{$version}</div></td>";
     echo "<td>" . $row["uptimelast7"] . "%</td>";
if ($row["signup"] == 1) {$signup="Open";} else {$signup="Closed";}
     echo "<td>" . $signup . "</td>";
     echo "<td>" . $row["total_users"] . "</td>";
dmorley's avatar
changes  
dmorley committed
73
     echo "<td class='tipsy' title='active six months: "  . $row["active_users_halfyear"] .  ", active one month: "  . $row["active_users_monthly"] . "'>" . $row["active_users_halfyear"] . "</td>";
74
     echo "<td>" . $row["local_posts"] . "</td>";
75
     echo "<td>" . $row["comment_counts"] . "</td>";
76 77 78 79 80 81 82
if (strpos($row["pingdomurl"], "pingdom.com")) {$moreurl = $row["pingdomurl"];} else {$moreurl = "http://api.uptimerobot.com/getMonitors?format=json&customUptimeRatio=7-30-60-90&apiKey=".$row["pingdomurl"];}
     echo "<td><div title='Last Check ".$row["dateupdated"]."' class='tipsy'><a target='new' href='".$moreurl."'>" . $row["monthsmonitored"] . "</a></div></td>";
if ($row["userrating"] >6) {$userratingclass="green";} elseif ($row["userrating"] <7) {$userratingclass="yellow";} elseif ($row["userrating"] <3) {$userratingclass="red";}
     echo "<td><a rel=\"facebox\" href=\"rate.php?domain=".$row["domain"]."\"><div class='tipsy rating ".$userratingclass."' title='User rating is ".$row["userrating"]."/10 Auto Score is: " .$row["score"]. "/20'>";
if ($row["userrating"] == 0) {echo "no rating yet";}
for ($i = 0; $i < $row["userrating"]; $i++) { 
echo "✪";
David Morley's avatar
David Morley committed
83
}
84 85 86 87 88 89 90
if ($row["adminrating"] >6) {$adminratingclass="green";} elseif ($row["adminrating"] <7) {$adminratingclass="yellow";} elseif ($row["adminrating"] <3) {$adminratingclass="red";}
     echo "</div><br><div class='tipsy rating ".$adminratingclass."' backendscore='".$row["score"]."' title='Poduptime Approved rating is ".$row["adminrating"]."'>";
for ($iw = 0; $iw < $row["adminrating"]; $iw++) {
echo "✪";
}

     echo "</div></a></td>";
91 92
     echo "<td class='tipsy' title='".$row["whois"]." '>" . $row["country"] . "</td>\n";
     echo "<td class='' title=''>";
dmorley's avatar
dmorley committed
93 94 95 96
     if ($row["service_facebook"] == "t") {echo "<div id='facebook' class='smlogo'></div>";}
     if ($row["service_twitter"] == "t") {echo "<div id='twitter' class='smlogo'></div>";}
     if ($row["service_tumblr"] == "t") {echo "<div id='tumblr' class='smlogo'></div>";}
     if ($row["service_wordpress"] == "t") {echo "<div id='wordpress' class='smlogo'></div>";}
97
     echo "</td></tr>\n";
dmorley's avatar
dmorley committed
98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
if ($tt == 5) {
echo <<<EOF
<td colspan='12' style='padding-left:200px;'>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- podup2015 -->
<ins class="adsbygoogle"
     style="display:inline-block;width:728px;height:90px"
     data-ad-client="ca-pub-3662181805557062"
     data-ad-slot="2218925437"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</td>
EOF;
}
113 114 115
 }
 pg_free_result($result);       
 pg_close($dbh);
dmorley's avatar
dmorley committed
116 117
$country_code = $_SERVER["HTTP_CF_IPCOUNTRY"];
//echo $country_code;
David Morley's avatar
David Morley committed
118 119
?>
</tbody>
120
</table>