From 1478229abc6c5adc265559b5489cc2eb23358994 Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 5 Sep 2012 18:24:06 -0700 Subject: [PATCH] allow comments on other folks wall-to-wall postings --- include/conversation.php | 33 ++++++++++++++++++++++----------- mod/parse_url.php | 24 ++++++++++++------------ 2 files changed, 34 insertions(+), 23 deletions(-) diff --git a/include/conversation.php b/include/conversation.php index 3f493a6d..ceef63a9 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -394,12 +394,34 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr $thumb = $item['thumb']; $indent = ''; $osparkle = ''; + $visiting = false; $lastcollapsed = false; $firstcollapsed = false; $total_children += count_descendants($item); $toplevelpost = (($item['id'] == $item['parent']) ? true : false); + + + if($item['uid'] == local_user()) + $dropping = true; + elseif(is_array($_SESSION['remote'])) { + foreach($_SESSION['remote'] as $visitor) { + if($visitor['cid'] == $item['contact-id']) { + $dropping = true; + $visiting = true; + break; + } + } + } + $item_writeable = (($item['writable'] || $item['self']) ? true : false); + + // This will allow us to comment on wall-to-wall items owned by our friends + // and community forums even if somebody else wrote the post. + + if($visiting && $mode == 'profile') + $item_writeable = true; + $show_comment_box = ((($page_writeable) && ($item_writeable)) ? true : false); $lock = ((($item['private'] == 1) || (($item['uid'] == local_user()) && (strlen($item['allow_cid']) || strlen($item['allow_gid']) || strlen($item['deny_cid']) || strlen($item['deny_gid'])))) @@ -412,17 +434,6 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr else $edpost = false; - if($item['uid'] == local_user()) - $dropping = true; - elseif(is_array($_SESSION['remote'])) { - foreach($_SESSION['remote'] as $visitor) { - if($visitor['cid'] == $item['contact-id']) { - $dropping = true; - break; - } - } - } - $drop = array( 'dropping' => $dropping, 'select' => t('Select'), diff --git a/mod/parse_url.php b/mod/parse_url.php index e66db37f..083a39b5 100644 --- a/mod/parse_url.php +++ b/mod/parse_url.php @@ -152,17 +152,17 @@ function parseurl_getsiteinfo($url) { } if ($siteinfo["image"] == "") { - $list = $xpath->query("//img[@src]"); - foreach ($list as $node) { - $attr = array(); - if ($node->attributes->length) - foreach ($node->attributes as $attribute) - $attr[$attribute->name] = $attribute->value; + $list = $xpath->query("//img[@src]"); + foreach ($list as $node) { + $attr = array(); + if ($node->attributes->length) + foreach ($node->attributes as $attribute) + $attr[$attribute->name] = $attribute->value; $src = completeurl($attr["src"], $url); - $photodata = getimagesize($src); + $photodata = @getimagesize($src); - if (($photodata[0] > 150) and ($photodata[1] > 150)) { + if (($photodata) && ($photodata[0] > 150) and ($photodata[1] > 150)) { if ($photodata[0] > 300) { $photodata[1] = round($photodata[1] * (300 / $photodata[0])); $photodata[0] = 300; @@ -176,15 +176,15 @@ function parseurl_getsiteinfo($url) { "height"=>$photodata[1]); } - } - } else { + } + } else { $src = completeurl($siteinfo["image"], $url); unset($siteinfo["image"]); - $photodata = getimagesize($src); + $photodata = @getimagesize($src); - if (($photodata[0] > 10) and ($photodata[1] > 10)) + if (($photodata) && ($photodata[0] > 10) and ($photodata[1] > 10)) $siteinfo["images"][] = array("src"=>$src, "width"=>$photodata[0], "height"=>$photodata[1]);