Merge remote-tracking branch 'upstream/develop' into 1601-network-performance

This commit is contained in:
Michael Vogel 2016-01-18 18:49:04 +01:00
commit 32c7896c5d
6 changed files with 42 additions and 18 deletions

View file

@ -792,15 +792,19 @@ function get_photo_info($url) {
$filesize = strlen($img_str); $filesize = strlen($img_str);
$tempfile = tempnam(get_temppath(), "cache"); if (function_exists("getimagesizefromstring"))
$data = getimagesizefromstring($img_str);
else {
$tempfile = tempnam(get_temppath(), "cache");
$a = get_app(); $a = get_app();
$stamp1 = microtime(true); $stamp1 = microtime(true);
file_put_contents($tempfile, $img_str); file_put_contents($tempfile, $img_str);
$a->save_timestamp($stamp1, "file"); $a->save_timestamp($stamp1, "file");
$data = getimagesize($tempfile); $data = getimagesize($tempfile);
unlink($tempfile); unlink($tempfile);
}
if ($data) if ($data)
$data["size"] = $filesize; $data["size"] = $filesize;

View file

@ -1246,6 +1246,9 @@ function original_url($url, $depth=1, $fetchbody = false) {
$a->save_timestamp($stamp1, "network"); $a->save_timestamp($stamp1, "network");
if ($http_code == 0)
return($url);
if ((($curl_info['http_code'] == "301") OR ($curl_info['http_code'] == "302")) if ((($curl_info['http_code'] == "301") OR ($curl_info['http_code'] == "302"))
AND (($curl_info['redirect_url'] != "") OR ($curl_info['location'] != ""))) { AND (($curl_info['redirect_url'] != "") OR ($curl_info['location'] != ""))) {
if ($curl_info['redirect_url'] != "") if ($curl_info['redirect_url'] != "")

View file

@ -160,7 +160,7 @@ function admin_content(&$a) {
$aside_tools['plugins_admin']=array(); $aside_tools['plugins_admin']=array();
foreach ($r as $h){ foreach ($r as $h){
$plugin =$h['name']; $plugin =$h['name'];
$aside['plugins_admin'][] = array($a->get_baseurl(true)."/admin/plugins/".$plugin, $plugin, "plugin"); $aside_tools['plugins_admin'][] = array($a->get_baseurl(true)."/admin/plugins/".$plugin, $plugin, "plugin");
// temp plugins with admin // temp plugins with admin
$a->plugins_admin[] = $plugin; $a->plugins_admin[] = $plugin;
} }

View file

@ -80,6 +80,7 @@ function parseurl_getsiteinfo_cached($url, $no_guessing = false, $do_oembed = tr
function parseurl_getsiteinfo($url, $no_guessing = false, $do_oembed = true, $count = 1) { function parseurl_getsiteinfo($url, $no_guessing = false, $do_oembed = true, $count = 1) {
require_once("include/network.php"); require_once("include/network.php");
require_once("include/Photo.php");
$a = get_app(); $a = get_app();
@ -330,7 +331,7 @@ function parseurl_getsiteinfo($url, $no_guessing = false, $do_oembed = true, $co
$attr[$attribute->name] = $attribute->value; $attr[$attribute->name] = $attribute->value;
$src = completeurl($attr["src"], $url); $src = completeurl($attr["src"], $url);
$photodata = @getimagesize($src); $photodata = get_photo_info($src);
if (($photodata) && ($photodata[0] > 150) and ($photodata[1] > 150)) { if (($photodata) && ($photodata[0] > 150) and ($photodata[1] > 150)) {
if ($photodata[0] > 300) { if ($photodata[0] > 300) {
@ -347,12 +348,12 @@ function parseurl_getsiteinfo($url, $no_guessing = false, $do_oembed = true, $co
} }
} }
} else { } elseif ($siteinfo["image"] != "") {
$src = completeurl($siteinfo["image"], $url); $src = completeurl($siteinfo["image"], $url);
unset($siteinfo["image"]); unset($siteinfo["image"]);
$photodata = @getimagesize($src); $photodata = get_photo_info($src);
if (($photodata) && ($photodata[0] > 10) and ($photodata[1] > 10)) if (($photodata) && ($photodata[0] > 10) and ($photodata[1] > 10))
$siteinfo["images"][] = array("src"=>$src, $siteinfo["images"][] = array("src"=>$src,

View file

@ -280,6 +280,18 @@ a {
font-weight: bold; font-weight: bold;
color: #00a700; color: #00a700;
} }
.federation-graph {
width: 400px;
height: 400px;
float: right;
margin: 20px;
}
.federation-network-graph {
width: 240px;
height: 240px;
float: left;
margin: 20px;
}
ul.federation-stats, ul.federation-stats,
ul.credits { ul.credits {
list-style: none; list-style: none;
@ -289,6 +301,12 @@ ul.credits li {
float: left; float: left;
width: 240px; width: 240px;
} }
table#federation-stats {
width: 100%;
}
td.federation-data {
border-bottom: 1px solid #000;
}
.contact-entry-photo img { .contact-entry-photo img {
max-width: 80px; max-width: 80px;

View file

@ -1,5 +1,5 @@
<script src="{{$baseurl}}/library/Chart.js-1.0.2/Chart.min.js"></script> <script src="{{$baseurl}}/library/Chart.js-1.0.2/Chart.min.js"></script>
<canvas id="FederationChart" style="width: 400px; height: 400px; float: right; margin: 20px;"></canvas> <canvas id="FederationChart" class="federation-graph"></canvas>
<div id="adminpage"> <div id="adminpage">
<h1>{{$title}} - {{$page}}</h1> <h1>{{$title}} - {{$page}}</h1>
<p>{{$intro}}</p> <p>{{$intro}}</p>
@ -30,7 +30,7 @@ var myDoughnutChart = new Chart(ctx).Doughnut(FedData,
document.getElementById('FederationLegend').innerHTML = myDoughnutChart.generateLegend(); document.getElementById('FederationLegend').innerHTML = myDoughnutChart.generateLegend();
</script> </script>
<table style="width: 100%"> <table id="federation-stats">
{{foreach $counts as $c}} {{foreach $counts as $c}}
{{if $c[0]['total'] > 0}} {{if $c[0]['total'] > 0}}
<tr> <tr>
@ -39,9 +39,8 @@ document.getElementById('FederationLegend').innerHTML = myDoughnutChart.generate
<td>{{$c[0]['network']}}</td> <td>{{$c[0]['network']}}</td>
</tr> </tr>
<tr> <tr>
<td colspan="3" style="border-bottom: 1px solid #000;"> <td colspan="3" class="federation-data">
<canvas id="{{$c[2]}}Chart" style="width: 240px; height: 240px; float: left; <canvas id="{{$c[2]}}Chart" class="federation-network-graph"></canvas>
margin: 20px;"></canvas>
<script> <script>
var {{$c[2]}}data = [ var {{$c[2]}}data = [
{{foreach $c[1] as $v}} {{foreach $c[1] as $v}}
@ -49,8 +48,7 @@ var {{$c[2]}}data = [
{{/foreach}} {{/foreach}}
]; ];
var ctx = document.getElementById("{{$c[2]}}Chart").getContext("2d"); var ctx = document.getElementById("{{$c[2]}}Chart").getContext("2d");
var my{{$c[2]}}DoughnutChart = new Chart(ctx).Doughnut({{$c[2]}}data, var my{{$c[2]}}DoughnutChart = new Chart(ctx).Doughnut({{$c[2]}}data, {animateRotate : false,});
{animateRotate : false,});
</script> </script>
<ul class="federation-stats"> <ul class="federation-stats">
{{foreach $c[1] as $v}} {{foreach $c[1] as $v}}