aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs/Module/Notifications.php
diff options
context:
space:
mode:
authorMario Vavti <mario@mariovavti.com>2021-07-09 11:31:26 +0200
committerMario Vavti <mario@mariovavti.com>2021-07-09 11:31:26 +0200
commit2dd47a9f596106bfe8ea5d95a5f20597ed8bf0cd (patch)
tree8fd238ebca4b124916eb31a6760bb227b7bb57ba /Zotlabs/Module/Notifications.php
parent6de327402bb90b3f09ccb0c92ffb112755dbd5a0 (diff)
parenta92ad512bbcfc367f17739886cdeada13c20e66a (diff)
downloadvolse-hubzilla-2dd47a9f596106bfe8ea5d95a5f20597ed8bf0cd.tar.gz
volse-hubzilla-2dd47a9f596106bfe8ea5d95a5f20597ed8bf0cd.tar.bz2
volse-hubzilla-2dd47a9f596106bfe8ea5d95a5f20597ed8bf0cd.zip
Merge branch '6.0RC'
Diffstat (limited to 'Zotlabs/Module/Notifications.php')
-rw-r--r--Zotlabs/Module/Notifications.php50
1 files changed, 49 insertions, 1 deletions
diff --git a/Zotlabs/Module/Notifications.php b/Zotlabs/Module/Notifications.php
index 8ecf5760a..c08628b47 100644
--- a/Zotlabs/Module/Notifications.php
+++ b/Zotlabs/Module/Notifications.php
@@ -8,10 +8,58 @@ class Notifications extends \Zotlabs\Web\Controller {
function get() {
if(! local_channel()) {
- notice( t('Permission denied.') . EOL);
return;
}
+ // ajax mark all unseen items read
+ if(x($_REQUEST, 'markRead')) {
+ switch($_REQUEST['markRead']) {
+ case 'dm':
+ $r = q("UPDATE item SET item_unseen = 0 WHERE uid = %d AND item_unseen = 1 AND item_private = 2",
+ intval(local_channel())
+ );
+ break;
+ case 'network':
+ $r = q("UPDATE item SET item_unseen = 0 WHERE uid = %d AND item_unseen = 1 AND item_private IN (0, 1)",
+ intval(local_channel())
+ );
+ break;
+ case 'home':
+ $r = q("UPDATE item SET item_unseen = 0 WHERE uid = %d AND item_unseen = 1 AND item_wall = 1 AND item_private IN (0, 1)",
+ intval(local_channel())
+ );
+ break;
+ case 'all_events':
+ $evdays = intval(get_pconfig(local_channel(), 'system', 'evdays', 3));
+ $r = q("UPDATE event SET dismissed = 1 WHERE uid = %d AND dismissed = 0 AND dtstart < '%s' AND dtstart > '%s' ",
+ intval(local_channel()),
+ dbesc(datetime_convert('UTC', date_default_timezone_get(), 'now + ' . intval($evdays) . ' days')),
+ dbesc(datetime_convert('UTC', date_default_timezone_get(), 'now - 1 days'))
+ );
+ break;
+ case 'notify':
+ $r = q("UPDATE notify SET seen = 1 WHERE seen = 0 AND uid = %d",
+ intval(local_channel())
+ );
+ break;
+ case 'pubs':
+ unset($_SESSION['static_loadtime']);
+ break;
+ default:
+ break;
+ }
+ killme();
+ }
+
+ // ajax mark all comments of a parent item read
+ if(x($_REQUEST, 'markItemRead') && local_channel()) {
+ $r = q("UPDATE item SET item_unseen = 0 WHERE uid = %d AND parent = %d",
+ intval(local_channel()),
+ intval($_REQUEST['markItemRead'])
+ );
+ killme();
+ }
+
nav_set_selected('Notifications');
$o = '';