*/
use Friendica\App;
-use Friendica\Content\Feature;
use Friendica\Content\ForumManager;
use Friendica\Content\Text\BBCode;
-use Friendica\Core\Addon;
use Friendica\Core\Cache;
use Friendica\Core\Config;
+use Friendica\Core\Hook;
use Friendica\Core\L10n;
use Friendica\Core\PConfig;
use Friendica\Core\System;
*
* Expected JSON structure:
* {
- * "result": {
- * "intro": 0,
- * "mail": 0,
- * "net": 0,
- * "home": 0,
- * "register": 0,
- * "all-events": 0,
- * "all-events-today": 0,
- * "events": 0,
- * "events-today": 0,
- * "birthdays": 0,
- * "birthdays-today": 0,
- * "groups": [ ],
- * "forums": [ ],
- * "notify": 0,
- * "notifications": [ ],
- * "sysmsgs": {
- * "notice": [ ],
- * "info": [ ]
- * }
- * }
- * }
+ * "result": {
+ * "intro": 0,
+ * "mail": 0,
+ * "net": 0,
+ * "home": 0,
+ * "register": 0,
+ * "all-events": 0,
+ * "all-events-today": 0,
+ * "events": 0,
+ * "events-today": 0,
+ * "birthdays": 0,
+ * "birthdays-today": 0,
+ * "groups": [ ],
+ * "forums": [ ],
+ * "notify": 0,
+ * "notifications": [ ],
+ * "sysmsgs": {
+ * "notice": [ ],
+ * "info": [ ]
+ * }
+ * }
+ * }
*
* @param App $a The Friendica App instance
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
function ping_init(App $a)
{
header("Content-type: text/xml");
echo XML::fromArray($data, $xml);
}
- killme();
+ exit();
}
$notifs = ping_get_notifications(local_user());
$condition = ["`unseen` AND `uid` = ? AND `contact-id` != ?", local_user(), local_user()];
$fields = ['id', 'parent', 'verb', 'author-name', 'unseen', 'author-link', 'author-avatar', 'contact-avatar',
'network', 'created', 'object', 'parent-author-name', 'parent-author-link', 'parent-guid', 'wall'];
- $params = ['order' => ['created' => true]];
+ $params = ['order' => ['received' => true]];
$items = Item::selectForUser(local_user(), $fields, $condition, $params);
if (DBA::isResult($items)) {
$items_unseen = Item::inArray($items);
$arr = ['items' => $items_unseen];
- Addon::callHooks('network_ping', $arr);
+ Hook::callAll('network_ping', $arr);
foreach ($items_unseen as $item) {
if ($item['wall']) {
);
$mail_count = count($mails);
- if (intval(Config::get('config', 'register_policy')) === REGISTER_APPROVE && is_site_admin()) {
+ if (intval(Config::get('config', 'register_policy')) === \Friendica\Module\Register::APPROVE && is_site_admin()) {
$regs = Friendica\Model\Register::getPending();
if (DBA::isResult($regs)) {
usort($notifs, $sort_function);
if (DBA::isResult($notifs)) {
- // Are the nofications called from the regular process or via the friendica app?
- $regularnotifications = (!empty($_GET['uid']) && !empty($_GET['_']));
-
foreach ($notifs as $notif) {
- if ($a->isFriendicaApp() || !$regularnotifications) {
- $notif['message'] = str_replace("{0}", $notif['name'], $notif['message']);
- }
-
$contact = Contact::getDetailsByURL($notif['url']);
if (isset($contact['micro'])) {
$notif['photo'] = ProxyUtils::proxifyUrl($contact['micro'], false, ProxyUtils::SIZE_MICRO);
echo XML::fromArray(["result" => $data], $xml);
}
- killme();
+ exit();
}
/**
*
* @param int $uid User id
* @return array Associative array of notifications
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
function ping_get_notifications($uid)
{
* @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
+ * @param array $groups_unseen List of unseen group items
+ * @param array $forums_unseen List of unseen forum items
*
* @return array XML-transform ready data array
*/