Merge pull request #984 from annando/master

Better look for embedded videos, removing tracking parameters, new shortening function
This commit is contained in:
Tobias Diekershoff 2014-05-19 08:05:16 +02:00
commit 1388b7ac27
6 changed files with 59 additions and 17 deletions

View file

@ -1107,8 +1107,29 @@ function xml2array($contents, $namespaces = true, $get_attributes=1, $priority =
} }
function original_url($url, $depth=1, $fetchbody = false) { function original_url($url, $depth=1, $fetchbody = false) {
// Remove Analytics Data from Google and other tracking platforms
$urldata = parse_url($url);
if (is_string($urldata["query"])) {
$query = $urldata["query"];
parse_str($query, $querydata);
if (is_array($querydata))
foreach ($querydata AS $param=>$value)
if (in_array($param, array("utm_source", "utm_medium", "utm_term", "utm_content", "utm_campaign",
"wt_mc", "pk_campaign", "pk_kwd", "mc_cid", "mc_eid",
"woo_campaign", "woo_source", "woo_medium", "woo_content", "woo_term"))) {
$pair = $param."=".$value;
$url = str_replace($pair, "", $url);
$url = str_replace(array("?&", "&&"), array("?", ""), $url);
}
if (substr($url, -1, 1) == "?")
$url = substr($url, 0, -1);
}
if ($depth > 10) if ($depth > 10)
return($url); return($url);
$url = trim($url, "'"); $url = trim($url, "'");

View file

@ -41,6 +41,22 @@ function get_attached_data($body) {
return($post); return($post);
} }
function shortenmsg($msg, $limit) {
$lines = explode("\n", $msg);
$msg = "";
$recycle = html_entity_decode("♲ ", ENT_QUOTES, 'UTF-8');
foreach ($lines AS $row=>$line) {
if (strlen(trim($msg."\n".$line)) <= $limit)
$msg = trim($msg."\n".$line);
// Is the new message empty by now or is it a reshared message?
elseif (($msg == "") OR (($row == 1) AND (substr($msg, 0, 4) == $recycle)))
$msg = substr(substr(trim($msg."\n".$line), 0, $limit), 0, -3)."...";
else
break;
}
return($msg);
}
function plaintext($a, $b, $limit = 0, $includedlinks = false) { function plaintext($a, $b, $limit = 0, $includedlinks = false) {
require_once("include/bbcode.php"); require_once("include/bbcode.php");
require_once("include/html2plain.php"); require_once("include/html2plain.php");
@ -159,18 +175,7 @@ function plaintext($a, $b, $limit = 0, $includedlinks = false) {
$post["url"] = $b["plink"]; $post["url"] = $b["plink"];
} }
$lines = explode("\n", $msg); $msg = shortenmsg($msg, $limit);
$msg = "";
$recycle = html_entity_decode("&#x2672; ", ENT_QUOTES, 'UTF-8');
foreach ($lines AS $row=>$line) {
if (strlen(trim($msg."\n".$line)) <= $limit)
$msg = trim($msg."\n".$line);
// Is the new message empty by now or is it a reshared message?
elseif (($msg == "") OR (($row == 1) AND (substr($msg, 0, 4) == $recycle)))
$msg = substr(substr(trim($msg."\n".$line), 0, $limit), 0, -3)."...";
else
break;
}
} }
} }

View file

@ -57,12 +57,22 @@ span.connector {
.type-link img, .type-video img { .type-link img, .type-video img {
} }
.type-video .embed_video {
margin: 0em;
}
.type-link span.oembed + br, .type-video span.oembed + br, .type-link span.oembed + br, .type-video span.oembed + br,
.type-link a + br, .type-video a + br, .type-link a + br, .type-video a + br,
.type-link img + br, .type-video img + br{ .type-link img + br, .type-video img + br{
display: none; display: none;
} }
.embed_video {
float:left;
margin: 1em;
position: relative;
}
/* Shared Messages */ /* Shared Messages */
.shared_header { .shared_header {
height: 32px; height: 32px;

View file

@ -3,7 +3,7 @@
* DO NOT EDIT THIS FILE, CHANGES WILL BE OVERWRITTEN * DO NOT EDIT THIS FILE, CHANGES WILL BE OVERWRITTEN
* *
*}} *}}
<a href='{{$embedurl}}' onclick='this.innerHTML=Base64.decode("{{$escapedhtml}}"); return false;' style='float:left; margin: 1em; position: relative;'> <a class="embed_video" href='{{$embedurl}}' onclick='this.innerHTML=Base64.decode("{{$escapedhtml}}"); return false;'>
<img width='{{$tw}}' height='{{$th}}' src='{{$turl}}' > <img width='{{$tw}}' height='{{$th}}' src='{{$turl}}' >
<div style='position: absolute; top: 0px; left: 0px; width: {{$twpx}}; height: {{$thpx}}; background: url({{$baseurl}}/images/icons/48/play.png) no-repeat center center;'></div> <div style='position: absolute; top: 0px; left: 0px; width: {{$twpx}}; height: {{$thpx}}; background: url({{$baseurl}}/images/icons/48/play.png) no-repeat center center;'></div>
</a> </a>

View file

@ -1282,6 +1282,11 @@ h2 {
transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
} }
.toplevel_item:hover .togglecomment,
.wall-item-container:hover .togglecomment {
color: #999;
}
.wall-item-container .wall-item-actions-author { .wall-item-container .wall-item-actions-author {
width: 100%; width: 100%;
margin-bottom: 0.3em; margin-bottom: 0.3em;
@ -1737,7 +1742,7 @@ h2 {
width: 780px; width: 780px;
} }
#profile-jot-wrapper { #profile-jot-wrapper {
margin-bottom: 20px; margin-bottom: 10px;
} }
/** buttons **/ /** buttons **/
@ -1899,7 +1904,7 @@ ul.tabs a {
padding-right: 10px; padding-right: 10px;
padding-top: 5px; padding-top: 5px;
padding-bottom: 5px; padding-bottom: 5px;
margin-bottom: 10px; margin-bottom: 0px;
} }
div.pager, .birthday-notice, .comment-edit-submit-wrapper .fakelink { div.pager, .birthday-notice, .comment-edit-submit-wrapper .fakelink {
@ -2147,6 +2152,7 @@ blockquote {
/* font-size: large; */ /* font-size: large; */
font-size: larger; font-size: larger;
font-weight: bold; font-weight: bold;
display: block;
} }
/* ================== */ /* ================== */

View file

@ -113,7 +113,7 @@
<li><a href="{0}"><img data-src="{1}">{2} <span class="notif-when">{3}</span></a></li> <li><a href="{0}"><img data-src="{1}">{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
<!-- <!--
<div style="position: fixed; bottom: 61px; left: 220px;">{{$langselector}}</div> <div class="icon-flag" style="position: fixed; bottom: 10px; left: 20px; z-index:9;">{{$langselector}}</div>
--> -->
{{* {{*