Fetch only relevant ignored data

This commit is contained in:
Daniel Winzen
2016-07-12 11:31:08 +02:00
parent 309d86050b
commit 2cf52871b8

View File

@ -1621,12 +1621,11 @@ function send_post(){
$disablepm=(bool) get_setting('disablepm'); $disablepm=(bool) get_setting('disablepm');
if(!$disablepm){ if(!$disablepm){
$ignored=array(); $ignored=array();
$ignore=get_ignored(); $ignore=get_ignored($U['nickname']);
foreach($ignore as $ign){ foreach($ignore as $ign){
if($ign['ignored']===$U['nickname']){ if($ign['ignored']===$U['nickname']){
$ignored[]=$ign['by']; $ignored[]=$ign['by'];
} }else{
if($ign['by']===$U['nickname']){
$ignored[]=$ign['ignored']; $ignored[]=$ign['ignored'];
} }
} }
@ -1708,7 +1707,7 @@ function send_profile($arg=''){
thr(); thr();
sort_names($P); sort_names($P);
$ignored=array(); $ignored=array();
$ignore=get_ignored(); $ignore=get_ignored($U['nickname']);
foreach($ignore as $ign){ foreach($ignore as $ign){
if($ign['by']===$U['nickname']){ if($ign['by']===$U['nickname']){
$ignored[]=$ign['ignored']; $ignored[]=$ign['ignored'];
@ -3193,12 +3192,13 @@ function save_setup(){
} }
} }
function get_ignored(){ function get_ignored($name){
global $db; global $db;
$ignored=array(); $ignored=array();
$result=$db->query('SELECT ign, ignby FROM ' . PREFIX . 'ignored;'); $stmt=$db->prepare('SELECT ign, ignby FROM ' . PREFIX . 'ignored WHERE ign=? OR ignby=?;');
while($tmp=$result->fetch(PDO::FETCH_ASSOC)){ $stmt->execute([$name, $name]);
$ignored[]=array('ignored'=>$tmp['ign'], 'by'=>$tmp['ignby']); while($tmp=$stmt->fetch(PDO::FETCH_ASSOC)){
$ignored[]=['ignored'=>$tmp['ign'], 'by'=>$tmp['ignby']];
} }
return $ignored; return $ignored;
} }