Merge pull request #2655 from annando/develop

Fixed pull request 2390
This commit is contained in:
Tobias Diekershoff 2016-07-02 13:53:20 +02:00 committed by GitHub
commit 90f98414cf
10 changed files with 48 additions and 26 deletions

View file

@ -940,7 +940,7 @@ class App {
} else { } else {
$r = q("SELECT `contact`.`avatar-date` AS picdate FROM `contact` WHERE `contact`.`thumb` like '%%/%s'", $r = q("SELECT `contact`.`avatar-date` AS picdate FROM `contact` WHERE `contact`.`thumb` like '%%/%s'",
$common_filename); $common_filename);
if(! count($r)){ if(! dba::is_result($r)){
$this->cached_profile_image[$avatar_image] = $avatar_image; $this->cached_profile_image[$avatar_image] = $avatar_image;
} else { } else {
$this->cached_profile_picdate[$common_filename] = "?rev=".urlencode($r[0]['picdate']); $this->cached_profile_picdate[$common_filename] = "?rev=".urlencode($r[0]['picdate']);
@ -1425,7 +1425,7 @@ function run_update_function($x) {
function check_plugins(&$a) { function check_plugins(&$a) {
$r = q("SELECT * FROM `addon` WHERE `installed` = 1"); $r = q("SELECT * FROM `addon` WHERE `installed` = 1");
if(count($r)) if(dba::is_result($r))
$installed = $r; $installed = $r;
else else
$installed = array(); $installed = array();
@ -1756,7 +1756,7 @@ function current_theme(){
$r = q("select theme from user where uid = %d limit 1", $r = q("select theme from user where uid = %d limit 1",
intval($a->profile_uid) intval($a->profile_uid)
); );
if($r) if(dba::is_result($r))
$page_theme = $r[0]['theme']; $page_theme = $r[0]['theme'];
} }
@ -1869,7 +1869,7 @@ function feed_birthday($uid,$tz) {
intval($uid) intval($uid)
); );
if($p && count($p)) { if(dba::is_result($p)) {
$tmp_dob = substr($p[0]['dob'],5); $tmp_dob = substr($p[0]['dob'],5);
if(intval($tmp_dob)) { if(intval($tmp_dob)) {
$y = datetime_convert($tz,$tz,'now','Y'); $y = datetime_convert($tz,$tz,'now','Y');

View file

@ -86,7 +86,7 @@ class ForumManager {
$total = count($contacts); $total = count($contacts);
$visible_forums = 10; $visible_forums = 10;
if(count($contacts)) { if(dba::is_result($contacts)) {
$id = 0; $id = 0;

View file

@ -230,6 +230,16 @@ class dba {
} }
} }
/**
* Checks if $array is a filled array with at least one entry.
*
* @param $array mixed A filled array with at least one entry
* @return Whether $array is a filled array
*/
public function is_result ($array) {
return (is_array($array) && count($array) > 0);
}
function __destruct() { function __destruct() {
if ($this->db) if ($this->db)
if($this->mysqli) if($this->mysqli)
@ -340,4 +350,3 @@ function dbesc_array(&$arr) {
function dba_timer() { function dba_timer() {
return microtime(true); return microtime(true);
} }

View file

@ -232,6 +232,16 @@ class dba {
} }
} }
/**
* Checks if $array is a filled array with at least one entry.
*
* @param $array mixed A filled array with at least one entry
* @return Whether $array is a filled array
*/
public function is_result ($array) {
return (is_array($array) && count($array) > 0);
}
function __destruct() { function __destruct() {
if ($this->db) if ($this->db)
\DDDBL\disconnect(); \DDDBL\disconnect();

View file

@ -228,7 +228,7 @@ function poller_max_connections_reached() {
function poller_kill_stale_workers() { function poller_kill_stale_workers() {
$r = q("SELECT `pid`, `executed` FROM `workerqueue` WHERE `executed` != '0000-00-00 00:00:00'"); $r = q("SELECT `pid`, `executed` FROM `workerqueue` WHERE `executed` != '0000-00-00 00:00:00'");
if (!is_array($r) || count($r) == 0) { if (!dba::is_result($r)) {
// No processing here needed // No processing here needed
return; return;
} }

View file

@ -126,7 +126,7 @@ if (x($_SESSION,'authenticated') && !x($_SESSION,'language')) {
// we didn't loaded user data yet, but we need user language // we didn't loaded user data yet, but we need user language
$r = q("SELECT language FROM user WHERE uid=%d", intval($_SESSION['uid'])); $r = q("SELECT language FROM user WHERE uid=%d", intval($_SESSION['uid']));
$_SESSION['language'] = $lang; $_SESSION['language'] = $lang;
if (count($r)>0) $_SESSION['language'] = $r[0]['language']; if (dba::is_result($r)) $_SESSION['language'] = $r[0]['language'];
} }
if((x($_SESSION,'language')) && ($_SESSION['language'] !== $lang)) { if((x($_SESSION,'language')) && ($_SESSION['language'] !== $lang)) {

View file

@ -373,11 +373,13 @@ function message_content(&$a) {
intval(local_user()) intval(local_user())
); );
if(count($r)) $a->set_pager_total($r[0]['total']); if (dba::is_result($r)) {
$a->set_pager_total($r[0]['total']);
}
$r = get_messages(local_user(), $a->pager['start'], $a->pager['itemspage']); $r = get_messages(local_user(), $a->pager['start'], $a->pager['itemspage']);
if(! count($r)) { if(! dba::is_result($r)) {
info( t('No messages.') . EOL); info( t('No messages.') . EOL);
return $o; return $o;
} }
@ -562,7 +564,7 @@ function get_messages($user, $lstart, $lend) {
); );
} }
function render_messages($msg, $t) { function render_messages(array $msg, $t) {
$a = get_app(); $a = get_app();

View file

@ -704,7 +704,7 @@ function network_content(&$a, $update = 0) {
$parents_str = ''; $parents_str = '';
$date_offset = ""; $date_offset = "";
if(count($r)) { if(dba::is_result($r)) {
foreach($r as $rr) foreach($r as $rr)
if(! in_array($rr['item_id'],$parents_arr)) if(! in_array($rr['item_id'],$parents_arr))
$parents_arr[] = $rr['item_id']; $parents_arr[] = $rr['item_id'];

View file

@ -32,6 +32,8 @@ function ping_init(&$a) {
$dislikes = array(); $dislikes = array();
$friends = array(); $friends = array();
$posts = array(); $posts = array();
$regs = array();
$mails = array();
$home = 0; $home = 0;
$network = 0; $network = 0;
@ -49,7 +51,7 @@ function ping_init(&$a) {
intval(local_user()), intval(local_user()) intval(local_user()), intval(local_user())
); );
if(count($r)) { if(dba::is_result($r)) {
$arr = array('items' => $r); $arr = array('items' => $r);
call_hooks('network_ping', $arr); call_hooks('network_ping', $arr);
@ -116,8 +118,6 @@ function ping_init(&$a) {
$intro = count($intros1) + count($intros2); $intro = count($intros1) + count($intros2);
$intros = $intros1+$intros2; $intros = $intros1+$intros2;
$myurl = $a->get_baseurl() . '/profile/' . $a->user['nickname'] ; $myurl = $a->get_baseurl() . '/profile/' . $a->user['nickname'] ;
$mails = q("SELECT * FROM `mail` $mails = q("SELECT * FROM `mail`
WHERE `uid` = %d AND `seen` = 0 AND `from-url` != '%s' ", WHERE `uid` = %d AND `seen` = 0 AND `from-url` != '%s' ",
@ -150,7 +150,7 @@ function ping_init(&$a) {
dbesc(datetime_convert('UTC','UTC','now')) dbesc(datetime_convert('UTC','UTC','now'))
); );
if($ev && count($ev)) { if(dba::is_result($ev)) {
$all_events = intval($ev[0]['total']); $all_events = intval($ev[0]['total']);
if($all_events) { if($all_events) {
@ -224,7 +224,7 @@ function ping_init(&$a) {
<home>$home</home>\r\n"; <home>$home</home>\r\n";
if ($register!=0) echo "<register>$register</register>"; if ($register!=0) echo "<register>$register</register>";
if (count($groups_unseen)) { if ( dba::is_result($groups_unseen) ) {
echo '<groups>'; echo '<groups>';
foreach ($groups_unseen as $it) foreach ($groups_unseen as $it)
if ($it['count'] > 0) if ($it['count'] > 0)
@ -233,7 +233,7 @@ function ping_init(&$a) {
echo "</groups>"; echo "</groups>";
} }
if (count($forums_unseen)) { if ( dba::is_result($forums_unseen) ) {
echo '<forums>'; echo '<forums>';
foreach ($forums_unseen as $it) foreach ($forums_unseen as $it)
if ($it['count'] > 0) if ($it['count'] > 0)
@ -250,7 +250,7 @@ function ping_init(&$a) {
<birthdays-today>$birthdays_today</birthdays-today>\r\n"; <birthdays-today>$birthdays_today</birthdays-today>\r\n";
if(count($notifs) && (! $sysnotify)) { if (dba::is_result($notifs) && (! $sysnotify)) {
foreach ($notifs as $zz) { foreach ($notifs as $zz) {
if($zz['seen'] == 0) if($zz['seen'] == 0)
$sysnotify ++; $sysnotify ++;
@ -260,7 +260,7 @@ function ping_init(&$a) {
echo ' <notif count="'. ($sysnotify + $intro + $mail + $register) .'">'; echo ' <notif count="'. ($sysnotify + $intro + $mail + $register) .'">';
// merge all notification types in one array // merge all notification types in one array
if ($intro>0){ if ( dba::is_result($intros) ) {
foreach ($intros as $i) { foreach ($intros as $i) {
$n = array( $n = array(
'href' => $a->get_baseurl().'/notifications/intros/'.$i['id'], 'href' => $a->get_baseurl().'/notifications/intros/'.$i['id'],
@ -275,7 +275,7 @@ function ping_init(&$a) {
} }
} }
if ($mail>0){ if ( dba::is_result($mails) ) {
foreach ($mails as $i) { foreach ($mails as $i) {
$n = array( $n = array(
'href' => $a->get_baseurl().'/message/'.$i['id'], 'href' => $a->get_baseurl().'/message/'.$i['id'],
@ -290,7 +290,7 @@ function ping_init(&$a) {
} }
} }
if ($register>0){ if ( dba::is_result($regs) ) {
foreach ($regs as $i) { foreach ($regs as $i) {
$n = array( $n = array(
'href' => $a->get_baseurl().'/admin/users/', 'href' => $a->get_baseurl().'/admin/users/',
@ -304,6 +304,7 @@ function ping_init(&$a) {
$notifs[] = $n; $notifs[] = $n;
} }
} }
// sort notifications by $[]['date'] // sort notifications by $[]['date']
$sort_function = function($a, $b) { $sort_function = function($a, $b) {
$adate = date($a['date']); $adate = date($a['date']);
@ -315,7 +316,7 @@ function ping_init(&$a) {
}; };
usort($notifs, $sort_function); usort($notifs, $sort_function);
if(count($notifs)) { if( dba::is_result($notifs) ) {
foreach($notifs as $n) { foreach($notifs as $n) {
echo xmlize($n); echo xmlize($n);
} }

View file

@ -298,7 +298,7 @@ function profile_content(&$a, $update = 0) {
$parents_arr = array(); $parents_arr = array();
$parents_str = ''; $parents_str = '';
if(count($r)) { if (dba::is_result($r)) {
foreach($r as $rr) foreach($r as $rr)
$parents_arr[] = $rr['item_id']; $parents_arr[] = $rr['item_id'];
$parents_str = implode(', ', $parents_arr); $parents_str = implode(', ', $parents_arr);