notifications - set default values for some varibles
This commit is contained in:
parent
8ad345c434
commit
de02154a1b
|
@ -7,7 +7,6 @@
|
||||||
require_once('include/html2plain.php');
|
require_once('include/html2plain.php');
|
||||||
require_once("include/datetime.php");
|
require_once("include/datetime.php");
|
||||||
require_once("include/bbcode.php");
|
require_once("include/bbcode.php");
|
||||||
require_once("include/dbm.php");
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Methods for read and write notifications from/to database
|
* @brief Methods for read and write notifications from/to database
|
||||||
|
@ -82,12 +81,16 @@ class NotificationsManager {
|
||||||
}
|
}
|
||||||
$order_sql = implode(", ", $asOrder);
|
$order_sql = implode(", ", $asOrder);
|
||||||
|
|
||||||
if ($limit!="") $limit = " LIMIT ".$limit;
|
if($limit!="")
|
||||||
|
$limit = " LIMIT ".$limit;
|
||||||
|
|
||||||
$r = q("SELECT * FROM `notify` WHERE `uid` = %d $filter_sql ORDER BY $order_sql $limit",
|
$r = q("SELECT * FROM `notify` WHERE `uid` = %d $filter_sql ORDER BY $order_sql $limit",
|
||||||
intval(local_user())
|
intval(local_user())
|
||||||
);
|
);
|
||||||
if ($r!==false && count($r)>0) return $this->_set_extra($r);
|
|
||||||
|
if(dbm::is_result($r))
|
||||||
|
return $this->_set_extra($r);
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -102,7 +105,7 @@ class NotificationsManager {
|
||||||
intval($id),
|
intval($id),
|
||||||
intval(local_user())
|
intval(local_user())
|
||||||
);
|
);
|
||||||
if($r!==false && count($r)>0) {
|
if(dbm::is_result($r)) {
|
||||||
return $this->_set_extra($r)[0];
|
return $this->_set_extra($r)[0];
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
@ -344,6 +347,8 @@ class NotificationsManager {
|
||||||
* @return int Number of network notifications
|
* @return int Number of network notifications
|
||||||
*/
|
*/
|
||||||
private function networkTotal($seen = 0) {
|
private function networkTotal($seen = 0) {
|
||||||
|
$sql_seen = "";
|
||||||
|
|
||||||
if($seen === 0)
|
if($seen === 0)
|
||||||
$sql_seen = " AND `item`.`unseen` = 1 ";
|
$sql_seen = " AND `item`.`unseen` = 1 ";
|
||||||
|
|
||||||
|
@ -379,6 +384,7 @@ class NotificationsManager {
|
||||||
$ident = 'network';
|
$ident = 'network';
|
||||||
$total = $this->networkTotal($seen);
|
$total = $this->networkTotal($seen);
|
||||||
$notifs = array();
|
$notifs = array();
|
||||||
|
$sql_seen = "";
|
||||||
|
|
||||||
if($seen === 0)
|
if($seen === 0)
|
||||||
$sql_seen = " AND `item`.`unseen` = 1 ";
|
$sql_seen = " AND `item`.`unseen` = 1 ";
|
||||||
|
@ -417,6 +423,8 @@ class NotificationsManager {
|
||||||
* @return int Number of system notifications
|
* @return int Number of system notifications
|
||||||
*/
|
*/
|
||||||
private function systemTotal($seen = 0) {
|
private function systemTotal($seen = 0) {
|
||||||
|
$sql_seen = "";
|
||||||
|
|
||||||
if($seen === 0)
|
if($seen === 0)
|
||||||
$sql_seen = " AND `seen` = 0 ";
|
$sql_seen = " AND `seen` = 0 ";
|
||||||
|
|
||||||
|
@ -448,6 +456,7 @@ class NotificationsManager {
|
||||||
$ident = 'system';
|
$ident = 'system';
|
||||||
$total = $this->systemTotal($seen);
|
$total = $this->systemTotal($seen);
|
||||||
$notifs = array();
|
$notifs = array();
|
||||||
|
$sql_seen = "";
|
||||||
|
|
||||||
if($seen === 0)
|
if($seen === 0)
|
||||||
$sql_seen = " AND `seen` = 0 ";
|
$sql_seen = " AND `seen` = 0 ";
|
||||||
|
@ -481,7 +490,7 @@ class NotificationsManager {
|
||||||
$myurl = substr($myurl,strpos($myurl,'://')+3);
|
$myurl = substr($myurl,strpos($myurl,'://')+3);
|
||||||
$myurl = str_replace(array('www.','.'),array('','\\.'),$myurl);
|
$myurl = str_replace(array('www.','.'),array('','\\.'),$myurl);
|
||||||
$diasp_url = str_replace('/profile/','/u/',$myurl);
|
$diasp_url = str_replace('/profile/','/u/',$myurl);
|
||||||
$sql_extra .= sprintf(" AND ( `item`.`author-link` regexp '%s' or `item`.`tag` regexp '%s' or `item`.`tag` regexp '%s' ) ",
|
$sql_extra = sprintf(" AND ( `item`.`author-link` regexp '%s' or `item`.`tag` regexp '%s' or `item`.`tag` regexp '%s' ) ",
|
||||||
dbesc($myurl . '$'),
|
dbesc($myurl . '$'),
|
||||||
dbesc($myurl . '\\]'),
|
dbesc($myurl . '\\]'),
|
||||||
dbesc($diasp_url . '\\]')
|
dbesc($diasp_url . '\\]')
|
||||||
|
@ -498,7 +507,8 @@ class NotificationsManager {
|
||||||
* @return int Number of personal notifications
|
* @return int Number of personal notifications
|
||||||
*/
|
*/
|
||||||
private function personalTotal($seen = 0) {
|
private function personalTotal($seen = 0) {
|
||||||
$sql_extra .= $this->_personal_sql_extra();
|
$sql_seen = "";
|
||||||
|
$sql_extra = $this->_personal_sql_extra();
|
||||||
|
|
||||||
if($seen === 0)
|
if($seen === 0)
|
||||||
$sql_seen = " AND `item`.`unseen` = 1 ";
|
$sql_seen = " AND `item`.`unseen` = 1 ";
|
||||||
|
@ -535,8 +545,9 @@ class NotificationsManager {
|
||||||
public function personalNotifs($seen = 0, $start = 0, $limit = 80) {
|
public function personalNotifs($seen = 0, $start = 0, $limit = 80) {
|
||||||
$ident = 'personal';
|
$ident = 'personal';
|
||||||
$total = $this->personalTotal($seen);
|
$total = $this->personalTotal($seen);
|
||||||
$sql_extra .= $this->_personal_sql_extra();
|
$sql_extra = $this->_personal_sql_extra();
|
||||||
$notifs = array();
|
$notifs = array();
|
||||||
|
$sql_seen = "";
|
||||||
|
|
||||||
if($seen === 0)
|
if($seen === 0)
|
||||||
$sql_seen = " AND `item`.`unseen` = 1 ";
|
$sql_seen = " AND `item`.`unseen` = 1 ";
|
||||||
|
@ -575,6 +586,8 @@ class NotificationsManager {
|
||||||
* @return int Number of home notifications
|
* @return int Number of home notifications
|
||||||
*/
|
*/
|
||||||
private function homeTotal($seen = 0) {
|
private function homeTotal($seen = 0) {
|
||||||
|
$sql_seen = "";
|
||||||
|
|
||||||
if($seen === 0)
|
if($seen === 0)
|
||||||
$sql_seen = " AND `item`.`unseen` = 1 ";
|
$sql_seen = " AND `item`.`unseen` = 1 ";
|
||||||
|
|
||||||
|
@ -609,6 +622,7 @@ class NotificationsManager {
|
||||||
$ident = 'home';
|
$ident = 'home';
|
||||||
$total = $this->homeTotal($seen);
|
$total = $this->homeTotal($seen);
|
||||||
$notifs = array();
|
$notifs = array();
|
||||||
|
$sql_seen = "";
|
||||||
|
|
||||||
if($seen === 0)
|
if($seen === 0)
|
||||||
$sql_seen = " AND `item`.`unseen` = 1 ";
|
$sql_seen = " AND `item`.`unseen` = 1 ";
|
||||||
|
@ -640,13 +654,15 @@ class NotificationsManager {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Total number of introductions
|
* @brief Total number of introductions
|
||||||
* @param int $all
|
* @param bool $all
|
||||||
* If 0 only include introductions into the query
|
* If false only include introductions into the query
|
||||||
* which aren't marked as ignored
|
* which aren't marked as ignored
|
||||||
* @return int Number of introductions
|
* @return int Number of introductions
|
||||||
*/
|
*/
|
||||||
private function introTotal($all) {
|
private function introTotal($all = false) {
|
||||||
if($all === 0)
|
$sql_extra = "";
|
||||||
|
|
||||||
|
if($all === false)
|
||||||
$sql_extra = " AND `ignore` = 0 ";
|
$sql_extra = " AND `ignore` = 0 ";
|
||||||
|
|
||||||
$r = q("SELECT COUNT(*) AS `total` FROM `intro`
|
$r = q("SELECT COUNT(*) AS `total` FROM `intro`
|
||||||
|
@ -663,8 +679,8 @@ class NotificationsManager {
|
||||||
/**
|
/**
|
||||||
* @brief Get introductions
|
* @brief Get introductions
|
||||||
*
|
*
|
||||||
* @param int $all
|
* @param bool $all
|
||||||
* If 0 only include introductions into the query
|
* If false only include introductions into the query
|
||||||
* which aren't marked as ignored
|
* which aren't marked as ignored
|
||||||
* @param int $start Start the query at this point
|
* @param int $start Start the query at this point
|
||||||
* @param int $limit Maximum number of query results
|
* @param int $limit Maximum number of query results
|
||||||
|
@ -674,12 +690,13 @@ class NotificationsManager {
|
||||||
* int 'total' => Total number of available introductions
|
* int 'total' => Total number of available introductions
|
||||||
* array 'notifications' => Introductions
|
* array 'notifications' => Introductions
|
||||||
*/
|
*/
|
||||||
public function introNotifs($all = 0, $start = 0, $limit = 80) {
|
public function introNotifs($all = false, $start = 0, $limit = 80) {
|
||||||
$ident = 'introductions';
|
$ident = 'introductions';
|
||||||
$total = $this->introTotal($seen);
|
$total = $this->introTotal($seen);
|
||||||
$notifs = array();
|
$notifs = array();
|
||||||
|
$sql_extra = "";
|
||||||
|
|
||||||
if($all === 0)
|
if($all === false)
|
||||||
$sql_extra = " AND `ignore` = 0 ";
|
$sql_extra = " AND `ignore` = 0 ";
|
||||||
|
|
||||||
/// @todo Fetch contact details by "get_contact_details_by_url" instead of queries to contact, fcontact and gcontact
|
/// @todo Fetch contact details by "get_contact_details_by_url" instead of queries to contact, fcontact and gcontact
|
||||||
|
|
|
@ -95,10 +95,7 @@ function notifications_content(&$a) {
|
||||||
nav_set_selected('introductions');
|
nav_set_selected('introductions');
|
||||||
$notif_header = t('Notifications');
|
$notif_header = t('Notifications');
|
||||||
|
|
||||||
if(($a->argc > 2) && ($a->argv[2] == 'all'))
|
$all = (($a->argc > 2) && ($a->argv[2] == 'all'));
|
||||||
$all = 1;
|
|
||||||
else
|
|
||||||
$all = 0;
|
|
||||||
|
|
||||||
$notifs = $nm->introNotifs($all, $startrec, $perpage);
|
$notifs = $nm->introNotifs($all, $startrec, $perpage);
|
||||||
|
|
||||||
|
@ -151,8 +148,8 @@ function notifications_content(&$a) {
|
||||||
|
|
||||||
// The link to switch between ignored and normal connection requests
|
// The link to switch between ignored and normal connection requests
|
||||||
$notif_show_lnk = array(
|
$notif_show_lnk = array(
|
||||||
'href' => ($all === 0 ? 'notifications/intros/all' : 'notifications/intros' ),
|
'href' => ($all === false ? 'notifications/intros/all' : 'notifications/intros' ),
|
||||||
'text' => ($all === 0 ? t('Show Ignored Requests') : t('Hide Ignored Requests'))
|
'text' => ($all === false ? t('Show Ignored Requests') : t('Hide Ignored Requests'))
|
||||||
);
|
);
|
||||||
|
|
||||||
// Loop through all introduction notifications.This creates an array with the output html for each
|
// Loop through all introduction notifications.This creates an array with the output html for each
|
||||||
|
|
Loading…
Reference in a new issue