aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--boot.php19
-rw-r--r--mod/display.php4
-rw-r--r--mod/network.php6
-rw-r--r--mod/profile.php4
4 files changed, 26 insertions, 7 deletions
diff --git a/boot.php b/boot.php
index d458b8647..05b33abd6 100644
--- a/boot.php
+++ b/boot.php
@@ -2191,3 +2191,22 @@ function get_birthdays() {
}}
+/**
+ *
+ * Compare two URLs to see if they are the same, but ignore
+ * slight but hopefully insignificant differences such as if one
+ * is https and the other isn't, or if one is www.something and
+ * the other isn't - and also ignore case differences.
+ *
+ * Return true if the URLs match, otherwise false.
+ *
+ */
+
+if(! function_exists('link_compare')) {
+function link_compare($a,$b) {
+ $a1 = str_replace(array('https:','//www.'), array('http:','//'), $a);
+ $b1 = str_replace(array('https:','//www.'), array('http:','//'), $b);
+ if(strcasecmp($a1,$b1) === 0)
+ return true;
+ return false;
+}}
diff --git a/mod/display.php b/mod/display.php
index 0e5768838..de11ec35d 100644
--- a/mod/display.php
+++ b/mod/display.php
@@ -202,7 +202,7 @@ function display_content(&$a) {
$template = $wallwall;
$commentww = 'ww';
// If it is our contact, use a friendly redirect link
- if(($item['owner-link'] == $item['url']) && ($item['network'] === 'dfrn')) {
+ if((link_compare($item['owner-link'],$item['url'])) && ($item['network'] === 'dfrn')) {
$owner_url = $redirect_url;
$osparkle = ' sparkle';
}
@@ -211,7 +211,7 @@ function display_content(&$a) {
}
}
- $diff_author = (($item['url'] !== $item['author-link']) ? true : false);
+ $diff_author = ((link_compare($item['url'],$item['author-link'])) ? false : true);
$profile_name = (((strlen($item['author-name'])) && $diff_author) ? $item['author-name'] : $item['name']);
$profile_avatar = (((strlen($item['author-avatar'])) && $diff_author) ? $item['author-avatar'] : $item['thumb']);
diff --git a/mod/network.php b/mod/network.php
index d094febc6..aa42e2f52 100644
--- a/mod/network.php
+++ b/mod/network.php
@@ -303,7 +303,7 @@ function network_content(&$a, $update = 0) {
$template = $wallwall;
$commentww = 'ww';
// If it is our contact, use a friendly redirect link
- if(($item['owner-link'] == $item['url'])
+ if((link_compare($item['owner-link'],$item['url']))
&& ($item['network'] === 'dfrn')) {
$owner_url = $redirect_url;
$osparkle = ' sparkle';
@@ -350,7 +350,7 @@ function network_content(&$a, $update = 0) {
// Post was remotely authored.
- $diff_author = (($item['url'] !== $item['author-link']) ? true : false);
+ $diff_author = ((link_compare($item['url'],$item['author-link'])) ? false : true);
$profile_name = (((strlen($item['author-name'])) && $diff_author) ? $item['author-name'] : $item['name']);
$profile_avatar = (((strlen($item['author-avatar'])) && $diff_author) ? $item['author-avatar'] : $thumb);
@@ -361,7 +361,7 @@ function network_content(&$a, $update = 0) {
// Can we use our special contact URL for this author?
if(strlen($item['author-link'])) {
- if($item['author-link'] == $item['url'] && ($item['network'] === 'dfrn') && (! $item['self'])) {
+ if((link_compare($item['author-link'],$item['url'])) && ($item['network'] === 'dfrn') && (! $item['self'])) {
$profile_link = $redirect_url;
$sparkle = ' sparkle';
}
diff --git a/mod/profile.php b/mod/profile.php
index bcd2b64e3..936379360 100644
--- a/mod/profile.php
+++ b/mod/profile.php
@@ -297,7 +297,7 @@ function profile_content(&$a, $update = 0) {
$profile_url = $item['url'];
- // This is my profile but I'm not the author of this post/comment. If it's somebody that's a fan or mutual friend,
+ // This is my profile page but I'm not the author of this post/comment. If it's somebody that's a fan or mutual friend,
// I can go directly to their profile as an authenticated guest.
if(local_user() && ($item['contact-uid'] == $_SESSION['uid'])
@@ -314,7 +314,7 @@ function profile_content(&$a, $update = 0) {
// local contact info at all. In this module you should never encounter a third-party author, but we still will do
// the right thing if you ever do.
- $diff_author = (($item['url'] !== $item['author-link']) ? true : false);
+ $diff_author = ((link_compare($item['url'],$item['author-link'])) ? false : true);
$profile_name = (((strlen($item['author-name'])) && $diff_author) ? $item['author-name'] : $item['name']);
$profile_avatar = (((strlen($item['author-avatar'])) && $diff_author) ? $item['author-avatar'] : $item['thumb']);