streams/mod/notify.php

64 lines
1.4 KiB
PHP
Raw Normal View History

<?php
function notify_init(&$a) {
if(! local_user())
return;
2012-10-24 00:14:50 +00:00
if(argc() > 2 && argv(1) === 'view' && intval(argv(2))) {
$r = q("select * from notify where id = %d and uid = %d limit 1",
2012-10-24 00:14:50 +00:00
intval(argv(2)),
intval(local_user())
);
if($r) {
2014-06-11 05:35:15 +00:00
q("update notify set seen = 1 where (( parent != '' and parent = '%s' and otype = '%s' ) or link = '%s' ) and uid = %d",
dbesc($r[0]['parent']),
2012-03-01 02:19:08 +00:00
dbesc($r[0]['otype']),
2014-06-11 05:35:15 +00:00
dbesc($r[0]['link']),
intval(local_user())
);
goaway($r[0]['link']);
}
2012-03-15 04:20:20 +00:00
goaway($a->get_baseurl(true));
}
2012-02-22 00:59:57 +00:00
2013-01-08 10:49:08 +00:00
}
function notify_content(&$a) {
if(! local_user())
return login();
2012-10-24 00:14:50 +00:00
$notif_tpl = get_markup_template('notifications.tpl');
2012-10-24 00:14:50 +00:00
$not_tpl = get_markup_template('notify.tpl');
require_once('include/bbcode.php');
2012-10-24 00:14:50 +00:00
$r = q("SELECT * from notify where uid = %d and seen = 0 order by date desc",
intval(local_user())
);
if($r) {
2012-10-24 00:14:50 +00:00
foreach ($r as $it) {
$notif_content .= replace_macros($not_tpl,array(
'$item_link' => $a->get_baseurl(true).'/notify/view/'. $it['id'],
'$item_image' => $it['photo'],
'$item_text' => strip_tags(bbcode($it['msg'])),
'$item_when' => relative_date($it['date'])
));
}
2012-10-24 00:14:50 +00:00
}
else {
$notif_content .= t('No more system notifications.');
}
2012-10-24 00:14:50 +00:00
$o .= replace_macros($notif_tpl,array(
'$notif_header' => t('System Notifications'),
'$tabs' => '', // $tabs,
'$notif_content' => $notif_content,
));
return $o;
}