aboutsummaryrefslogtreecommitdiffstats
path: root/mod
diff options
context:
space:
mode:
Diffstat (limited to 'mod')
-rw-r--r--mod/notify.php13
-rw-r--r--mod/ping.php43
2 files changed, 45 insertions, 11 deletions
diff --git a/mod/notify.php b/mod/notify.php
index 3157e8ce8..23ba098b7 100644
--- a/mod/notify.php
+++ b/mod/notify.php
@@ -10,7 +10,7 @@ function notify_init(&$a) {
intval(argv(2)),
intval(local_user())
);
- if(count($r)) {
+ if($r) {
q("update notify set seen = 1 where ( link = '%s' or ( parent != 0 and parent = %d and otype = '%s' )) and uid = %d",
dbesc($r[0]['link']),
intval($r[0]['parent']),
@@ -24,15 +24,6 @@ function notify_init(&$a) {
}
- if(argc() > 2 && argv(1) === 'mark' && argv(2) === 'all' ) {
- $r = q("update notify set seen = 1 where uid = %d",
- intval(local_user())
- );
- $j = json_encode(array('result' => ($r) ? 'success' : 'fail'));
- echo $j;
- killme();
- }
-
}
@@ -49,7 +40,7 @@ function notify_content(&$a) {
intval(local_user())
);
- if (count($r) > 0) {
+ if($r) {
foreach ($r as $it) {
$notif_content .= replace_macros($not_tpl,array(
'$item_link' => $a->get_baseurl(true).'/notify/view/'. $it['id'],
diff --git a/mod/ping.php b/mod/ping.php
index 477b9ff0d..4ab7a68cb 100644
--- a/mod/ping.php
+++ b/mod/ping.php
@@ -48,6 +48,49 @@ function ping_init(&$a) {
killme();
}
+ if(x($_REQUEST,'markRead') && local_user()) {
+ switch($_REQUEST['markRead']) {
+ case 'network':
+ $r = q("update item set item_flags = ( item_flags ^ %d ) where (item_flags & %d) and uid = %d",
+ intval(ITEM_UNSEEN),
+ intval(ITEM_UNSEEN),
+ intval(local_user())
+ );
+ break;
+
+ case 'home':
+ $r = q("update item set item_flags = ( item_flags ^ %d ) where (item_flags & %d) and (item_flags & %d) and uid = %d",
+ intval(ITEM_UNSEEN),
+ intval(ITEM_UNSEEN),
+ intval(ITEM_WALL),
+ intval(local_user())
+ );
+ break;
+ case 'messages':
+ $r = q("update mail set mail_flags = ( item_flags ^ %d ) where uid = %d and not (item_flags & %d)",
+ intval(MAIL_SEEN),
+ intval(local_user()),
+ intval(MAIL_SEEN)
+ );
+ break;
+ case 'all_events':
+ $r = q("update event set ignore = 1 where ignore = 0 and uid = %d",
+ intval(local_user())
+ );
+ break;
+
+ case 'notify':
+ $r = q("update notify set seen = 1 where uid = %d",
+ intval(local_user())
+ );
+ break;
+
+ default:
+ break;
+ }
+ }
+
+
if(argc() > 1 && argv(1) === 'notify') {
$t = q("select count(*) as total from notify where uid = %d and seen = 0",
intval(local_user())