use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon;
use Friendica\Core\Cache;
+use Friendica\Core\Config;
use Friendica\Core\L10n;
use Friendica\Core\PConfig;
use Friendica\Core\System;
-use Friendica\Database\DBM;
+use Friendica\Database\DBA;
use Friendica\Model\Contact;
use Friendica\Model\Group;
use Friendica\Model\Item;
use Friendica\Util\DateTimeFormat;
use Friendica\Util\Temporal;
+use Friendica\Util\Proxy as ProxyUtils;
use Friendica\Util\XML;
-require_once 'mod/proxy.php';
-require_once 'include/enotify.php';
-
/**
* @brief Outputs the counts and the lists of various notifications
*
$format = 'json';
}
- $tags = [];
- $comments = [];
- $likes = [];
- $dislikes = [];
- $friends = [];
- $posts = [];
$regs = [];
- $mails = [];
$notifications = [];
$intro_count = 0;
if (local_user()) {
// Different login session than the page that is calling us.
- if (intval($_GET['uid']) && intval($_GET['uid']) != local_user()) {
+ if (!empty($_GET['uid']) && intval($_GET['uid']) != local_user()) {
$data = ['result' => ['invalid' => 1]];
if ($format == 'json') {
$params = ['order' => ['created' => true]];
$items = Item::selectForUser(local_user(), $fields, $condition, $params);
- if (DBM::is_result($items)) {
+ if (DBA::isResult($items)) {
$items_unseen = Item::inArray($items);
$arr = ['items' => $items_unseen];
Addon::callHooks('network_ping', $arr);
}
if ($network_count) {
- if (intval(Feature::isEnabled(local_user(), 'groups'))) {
- // Find out how unseen network posts are spread across groups
- $group_counts = Group::countUnseen();
- if (DBM::is_result($group_counts)) {
- foreach ($group_counts as $group_count) {
- if ($group_count['count'] > 0) {
- $groups_unseen[] = $group_count;
- }
+ // Find out how unseen network posts are spread across groups
+ $group_counts = Group::countUnseen();
+ if (DBA::isResult($group_counts)) {
+ foreach ($group_counts as $group_count) {
+ if ($group_count['count'] > 0) {
+ $groups_unseen[] = $group_count;
}
}
}
- if (intval(Feature::isEnabled(local_user(), 'forumlist_widget'))) {
- $forum_counts = ForumManager::countUnseenItems();
- if (DBM::is_result($forum_counts)) {
- foreach ($forum_counts as $forum_count) {
- if ($forum_count['count'] > 0) {
- $forums_unseen[] = $forum_count;
- }
+ $forum_counts = ForumManager::countUnseenItems();
+ if (DBA::isResult($forum_counts)) {
+ foreach ($forum_counts as $forum_count) {
+ if ($forum_count['count'] > 0) {
+ $forums_unseen[] = $forum_count;
}
}
}
$intro_count = count($intros1) + count($intros2);
$intros = $intros1 + $intros2;
- $myurl = System::baseUrl() . '/profile/' . $a->user['nickname'] ;
+ $myurl = System::baseUrl() . '/profile/' . $a->user['nickname'];
$mails = q(
"SELECT `id`, `from-name`, `from-url`, `from-photo`, `created` FROM `mail`
WHERE `uid` = %d AND `seen` = 0 AND `from-url` != '%s' ",
intval(local_user()),
- dbesc($myurl)
+ DBA::escape($myurl)
);
$mail_count = count($mails);
- if ($a->config['register_policy'] == REGISTER_APPROVE && is_site_admin()) {
- $regs = q(
- "SELECT `contact`.`name`, `contact`.`url`, `contact`.`micro`, `register`.`created`
- FROM `contact` RIGHT JOIN `register` ON `register`.`uid` = `contact`.`uid`
- WHERE `contact`.`self` = 1"
- );
+ if (intval(Config::get('config', 'register_policy')) === REGISTER_APPROVE && is_site_admin()) {
+ $regs = Friendica\Model\Register::getPending();
- if (DBM::is_result($regs)) {
+ if (DBA::isResult($regs)) {
$register_count = count($regs);
}
}
WHERE `event`.`uid` = %d AND `start` < '%s' AND `finish` > '%s' and `ignore` = 0
ORDER BY `start` ASC ",
intval(local_user()),
- dbesc(DateTimeFormat::utc('now + 7 days')),
- dbesc(DateTimeFormat::utcNow())
+ DBA::escape(DateTimeFormat::utc('now + 7 days')),
+ DBA::escape(DateTimeFormat::utcNow())
);
- if (DBM::is_result($ev)) {
- Cache::set($cachekey, $ev, CACHE_HOUR);
+ if (DBA::isResult($ev)) {
+ Cache::set($cachekey, $ev, Cache::HOUR);
}
}
- if (DBM::is_result($ev)) {
+ if (DBA::isResult($ev)) {
$all_events = count($ev);
if ($all_events) {
$data['birthdays'] = $birthdays;
$data['birthdays-today'] = $birthdays_today;
- if (DBM::is_result($notifs)) {
+ if (DBA::isResult($notifs)) {
foreach ($notifs as $notif) {
if ($notif['seen'] == 0) {
$sysnotify_count ++;
}
// merge all notification types in one array
- if (DBM::is_result($intros)) {
+ if (DBA::isResult($intros)) {
foreach ($intros as $intro) {
$notif = [
'id' => 0,
}
}
- if (DBM::is_result($mails)) {
- foreach ($mails as $mail) {
- $notif = [
- 'id' => 0,
- 'href' => System::baseUrl() . '/message/' . $mail['id'],
- 'name' => $mail['from-name'],
- 'url' => $mail['from-url'],
- 'photo' => $mail['from-photo'],
- 'date' => $mail['created'],
- 'seen' => false,
- 'message' => L10n::t('{0} sent you a message'),
- ];
- $notifs[] = $notif;
- }
- }
-
- if (DBM::is_result($regs)) {
+ if (DBA::isResult($regs)) {
foreach ($regs as $reg) {
$notif = [
'id' => 0,
};
usort($notifs, $sort_function);
- if (DBM::is_result($notifs)) {
+ if (DBA::isResult($notifs)) {
// Are the nofications called from the regular process or via the friendica app?
- $regularnotifications = (intval($_GET['uid']) && intval($_GET['_']));
+ $regularnotifications = (!empty($_GET['uid']) && !empty($_GET['_']));
foreach ($notifs as $notif) {
- if ($a->is_friendica_app() || !$regularnotifications) {
+ if ($a->isFriendicaApp() || !$regularnotifications) {
$notif['message'] = str_replace("{0}", $notif['name'], $notif['message']);
}
$contact = Contact::getDetailsByURL($notif['url']);
if (isset($contact['micro'])) {
- $notif['photo'] = proxy_url($contact['micro'], false, PROXY_SIZE_MICRO);
+ $notif['photo'] = ProxyUtils::proxifyUrl($contact['micro'], false, ProxyUtils::SIZE_MICRO);
} else {
- $notif['photo'] = proxy_url($notif['photo'], false, PROXY_SIZE_MICRO);
+ $notif['photo'] = ProxyUtils::proxifyUrl($notif['photo'], false, ProxyUtils::SIZE_MICRO);
}
$local_time = DateTimeFormat::local($notif['date']);
$sysmsgs = [];
$sysmsgs_info = [];
- if (x($_SESSION, 'sysmsg')) {
+ if (!empty($_SESSION['sysmsg'])) {
$sysmsgs = $_SESSION['sysmsg'];
unset($_SESSION['sysmsg']);
}
- if (x($_SESSION, 'sysmsg_info')) {
+ if (!empty($_SESSION['sysmsg_info'])) {
$sysmsgs_info = $_SESSION['sysmsg_info'];
unset($_SESSION['sysmsg_info']);
}
if ($format == 'json') {
$data['groups'] = $groups_unseen;
$data['forums'] = $forums_unseen;
- $data['notify'] = $sysnotify_count + $intro_count + $mail_count + $register_count;
+ $data['notify'] = $sysnotify_count + $intro_count + $register_count;
$data['notifications'] = $notifications;
$data['sysmsgs'] = [
'notice' => $sysmsgs,
$order = "DESC";
$quit = false;
- $a = get_app();
-
do {
$r = q(
"SELECT `notify`.*, `item`.`visible`, `item`.`deleted`
q(
"UPDATE `notify` SET `name_cache` = '%s', `msg_cache` = '%s' WHERE `id` = %d",
- dbesc($notification["name"]),
- dbesc($notification["message"]),
+ DBA::escape($notification["name"]),
+ DBA::escape($notification["message"]),
intval($notification["id"])
);
}
if ($notification["visible"]
&& !$notification["deleted"]
- && !(x($result, $notification["parent"]) && !empty($result[$notification["parent"]]))
+ && empty($result[$notification["parent"]])
) {
// Should we condense the notifications or show them all?
if (PConfig::get(local_user(), 'system', 'detailed_notif')) {
* @brief Backward-compatible XML formatting for ping.php output
* @deprecated
*
- * @param array $data The initial ping data array
- * @param int $sysnotify Number of unseen system notifications
- * @param array $notifs Complete list of notification
- * @param array $sysmsgs List of system notice messages
- * @param array $sysmsgs_info List of system info messages
- * @param int $groups_unseen Number of unseen group items
- * @param int $forums_unseen Number of unseen forum items
+ * @param array $data The initial ping data array
+ * @param int $sysnotify_count Number of unseen system notifications
+ * @param array $notifs Complete list of notification
+ * @param array $sysmsgs List of system notice messages
+ * @param array $sysmsgs_info List of system info messages
+ * @param array $groups_unseen List of unseen group messages
+ * @param array $forums_unseen List of unseen forum messages
+ *
* @return array XML-transform ready data array
*/
-function ping_format_xml_data($data, $sysnotify, $notifs, $sysmsgs, $sysmsgs_info, $groups_unseen, $forums_unseen)
+function ping_format_xml_data($data, $sysnotify_count, $notifs, $sysmsgs, $sysmsgs_info, $groups_unseen, $forums_unseen)
{
$notifications = [];
foreach ($notifs as $key => $notif) {