frio: add profile link to the notifications url

This commit is contained in:
rabuzarus 2016-12-21 23:17:55 +01:00
parent 51c9a66fc3
commit 125d2f24dd
4 changed files with 20 additions and 9 deletions

View File

@ -198,6 +198,7 @@ class NotificationsManager {
* string 'label' => The type of the notification * string 'label' => The type of the notification
* string 'link' => URL to the source * string 'link' => URL to the source
* string 'image' => The avatar image * string 'image' => The avatar image
* * string 'url' => The profile url of the contact
* string 'text' => The notification text * string 'text' => The notification text
* string 'when' => Relative date of the notification * string 'when' => Relative date of the notification
* bool 'seen' => Is the notification marked as "seen" * bool 'seen' => Is the notification marked as "seen"
@ -223,6 +224,7 @@ class NotificationsManager {
$default_item_label = 'notify'; $default_item_label = 'notify';
$default_item_link = $this->a->get_baseurl(true).'/notify/view/'. $it['id']; $default_item_link = $this->a->get_baseurl(true).'/notify/view/'. $it['id'];
$default_item_image = proxy_url($it['photo'], false, PROXY_SIZE_MICRO); $default_item_image = proxy_url($it['photo'], false, PROXY_SIZE_MICRO);
$default_item_url = $it['url'];
$default_item_text = strip_tags(bbcode($it['msg'])); $default_item_text = strip_tags(bbcode($it['msg']));
$default_item_when = relative_date($it['date']); $default_item_when = relative_date($it['date']);
break; break;
@ -231,6 +233,7 @@ class NotificationsManager {
$default_item_label = 'comment'; $default_item_label = 'comment';
$default_item_link = $this->a->get_baseurl(true).'/display/'.$it['pguid']; $default_item_link = $this->a->get_baseurl(true).'/display/'.$it['pguid'];
$default_item_image = proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO); $default_item_image = proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO);
$default_item_url = $it['author-link'];
$default_item_text = sprintf(t("%s commented on %s's post"), $it['author-name'], $it['pname']); $default_item_text = sprintf(t("%s commented on %s's post"), $it['author-name'], $it['pname']);
$default_item_when = relative_date($it['created']); $default_item_when = relative_date($it['created']);
break; break;
@ -239,6 +242,7 @@ class NotificationsManager {
$default_item_label = (($it['id'] == $it['parent']) ? 'post' : 'comment'); $default_item_label = (($it['id'] == $it['parent']) ? 'post' : 'comment');
$default_item_link = $this->a->get_baseurl(true).'/display/'.$it['pguid']; $default_item_link = $this->a->get_baseurl(true).'/display/'.$it['pguid'];
$default_item_image = proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO); $default_item_image = proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO);
$default_item_url = $it['author-link'];
$default_item_text = (($it['id'] == $it['parent']) $default_item_text = (($it['id'] == $it['parent'])
? sprintf(t("%s created a new post"), $it['author-name']) ? sprintf(t("%s created a new post"), $it['author-name'])
: sprintf(t("%s commented on %s's post"), $it['author-name'], $it['pname'])); : sprintf(t("%s commented on %s's post"), $it['author-name'], $it['pname']));
@ -253,6 +257,7 @@ class NotificationsManager {
'label' => 'like', 'label' => 'like',
'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'],
'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO),
'url' => $it['author-link'],
'text' => sprintf(t("%s liked %s's post"), $it['author-name'], $it['pname']), 'text' => sprintf(t("%s liked %s's post"), $it['author-name'], $it['pname']),
'when' => relative_date($it['created']), 'when' => relative_date($it['created']),
'seen' => $it['seen'] 'seen' => $it['seen']
@ -264,6 +269,7 @@ class NotificationsManager {
'label' => 'dislike', 'label' => 'dislike',
'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'],
'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO),
'url' => $it['author-link'],
'text' => sprintf(t("%s disliked %s's post"), $it['author-name'], $it['pname']), 'text' => sprintf(t("%s disliked %s's post"), $it['author-name'], $it['pname']),
'when' => relative_date($it['created']), 'when' => relative_date($it['created']),
'seen' => $it['seen'] 'seen' => $it['seen']
@ -275,6 +281,7 @@ class NotificationsManager {
'label' => 'attend', 'label' => 'attend',
'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'],
'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO),
'url' => $it['author-link'],
'text' => sprintf(t("%s is attending %s's event"), $it['author-name'], $it['pname']), 'text' => sprintf(t("%s is attending %s's event"), $it['author-name'], $it['pname']),
'when' => relative_date($it['created']), 'when' => relative_date($it['created']),
'seen' => $it['seen'] 'seen' => $it['seen']
@ -286,6 +293,7 @@ class NotificationsManager {
'label' => 'attendno', 'label' => 'attendno',
'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'],
'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO),
'url' => $it['author-link'],
'text' => sprintf( t("%s is not attending %s's event"), $it['author-name'], $it['pname']), 'text' => sprintf( t("%s is not attending %s's event"), $it['author-name'], $it['pname']),
'when' => relative_date($it['created']), 'when' => relative_date($it['created']),
'seen' => $it['seen'] 'seen' => $it['seen']
@ -297,6 +305,7 @@ class NotificationsManager {
'label' => 'attendmaybe', 'label' => 'attendmaybe',
'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'],
'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO),
'url' => $it['author-link'],
'text' => sprintf(t("%s may attend %s's event"), $it['author-name'], $it['pname']), 'text' => sprintf(t("%s may attend %s's event"), $it['author-name'], $it['pname']),
'when' => relative_date($it['created']), 'when' => relative_date($it['created']),
'seen' => $it['seen'] 'seen' => $it['seen']
@ -312,6 +321,7 @@ class NotificationsManager {
'label' => 'friend', 'label' => 'friend',
'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'],
'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO),
'url' => $it['author-link'],
'text' => sprintf(t("%s is now friends with %s"), $it['author-name'], $it['fname']), 'text' => sprintf(t("%s is now friends with %s"), $it['author-name'], $it['fname']),
'when' => relative_date($it['created']), 'when' => relative_date($it['created']),
'seen' => $it['seen'] 'seen' => $it['seen']
@ -323,6 +333,7 @@ class NotificationsManager {
'label' => $default_item_label, 'label' => $default_item_label,
'link' => $default_item_link, 'link' => $default_item_link,
'image' => $default_item_image, 'image' => $default_item_image,
'url' => $default_item_url,
'text' => $default_item_text, 'text' => $default_item_text,
'when' => $default_item_when, 'when' => $default_item_when,
'seen' => $it['seen'] 'seen' => $it['seen']
@ -459,7 +470,7 @@ class NotificationsManager {
if($seen === 0) if($seen === 0)
$sql_seen = " AND `seen` = 0 "; $sql_seen = " AND `seen` = 0 ";
$r = q("SELECT `id`, `photo`, `msg`, `date`, `seen` FROM `notify` $r = q("SELECT `id`, `url`, `photo`, `msg`, `date`, `seen` FROM `notify`
WHERE `uid` = %d $sql_seen ORDER BY `date` DESC LIMIT %d, %d ", WHERE `uid` = %d $sql_seen ORDER BY `date` DESC LIMIT %d, %d ",
intval(local_user()), intval(local_user()),
intval($start), intval($start),
@ -626,9 +637,9 @@ class NotificationsManager {
$sql_seen = " AND `item`.`unseen` = 1 "; $sql_seen = " AND `item`.`unseen` = 1 ";
$r = q("SELECT `item`.`id`,`item`.`parent`, `item`.`verb`, `item`.`author-name`, `item`.`unseen`, $r = q("SELECT `item`.`id`,`item`.`parent`, `item`.`verb`, `item`.`author-name`, `item`.`unseen`,
`item`.`author-link`, `item`.`author-avatar`, `item`.`created`, `item`.`object` as `object`, `item`.`author-link`, `item`.`author-avatar`, `item`.`created`, `item`.`object` AS `object`,
`pitem`.`author-name` as `pname`, `pitem`.`author-link` as `plink`, `pitem`.`guid` as `pguid` `pitem`.`author-name` AS `pname`, `pitem`.`author-link` AS `plink`, `pitem`.`guid` AS `pguid`
FROM `item` INNER JOIN `item` as `pitem` ON `pitem`.`id`=`item`.`parent` FROM `item` INNER JOIN `item` AS `pitem` ON `pitem`.`id`=`item`.`parent`
WHERE `item`.`visible` = 1 AND WHERE `item`.`visible` = 1 AND
`item`.`deleted` = 0 AND `item`.`uid` = %d AND `item`.`wall` = 1 `item`.`deleted` = 0 AND `item`.`uid` = %d AND `item`.`wall` = 1
$sql_seen $sql_seen

View File

@ -285,6 +285,7 @@ function notifications_content(&$a) {
'$item_label' => $it['label'], '$item_label' => $it['label'],
'$item_link' => $it['link'], '$item_link' => $it['link'],
'$item_image' => $it['image'], '$item_image' => $it['image'],
'$item_url' => $it['url'],
'$item_text' => htmlentities($it['text']), '$item_text' => htmlentities($it['text']),
'$item_when' => $it['when'], '$item_when' => $it['when'],
'$item_seen' => $it['seen'], '$item_seen' => $it['seen'],

View File

@ -2220,10 +2220,6 @@ ul.notif-network-list > li {
padding-left: 15px; padding-left: 15px;
padding-right: 15px; padding-right: 15px;
} }
ul.notif-network-list li.unseen {
border-left: 3px solid #f3fcfd;
background-color: #f3fcfd;
}
.intro-wrapper.media { .intro-wrapper.media {
overflow: visible; overflow: visible;
word-wrap: break-word; word-wrap: break-word;
@ -2283,6 +2279,9 @@ ul.notif-network-list > li:hover .intro-action-buttons {
} }
/* Notifications Page */ /* Notifications Page */
ul.notif-network-list li.unseen {
background-color: #f3fcfd;
}
.notif-item img.notif-image { .notif-item img.notif-image {
height: 48px; height: 48px;
width: 48px; width: 48px;

View File

@ -1,7 +1,7 @@
<div class="notif-item {{if !$item_seen}}unseen{{/if}} {{$item_label}} media"> <div class="notif-item {{if !$item_seen}}unseen{{/if}} {{$item_label}} media">
<div class="notif-photo-wrapper media-object pull-left"> <div class="notif-photo-wrapper media-object pull-left">
<img src="{{$item_image}}" class="notif-image"> <a class="userinfo" href="{{$item_url}}"><img src="{{$item_image}}" class="notif-image"></a>
</div> </div>
<div class="notif-desc-wrapper media-body"> <div class="notif-desc-wrapper media-body">
<a href="{{$item_link}}"> <a href="{{$item_link}}">