當(dāng)對(duì)已發(fā)布的文章進(jìn)行二次編輯后再進(jìn)行發(fā)布時(shí)會(huì)出現(xiàn)不按發(fā)布范圍來(lái)通知成員,例如通知全體成員。
if($return=parent::update($arr['newid'],$arr)){
if($data['attachs']){
$attachs=explode(',',$data['attachs']);
C::t('attachment')->addcopy_by_aid($attachs,-1);
}
if(isset($arr['attachs'])){
$attachs=explode(',',$arr['attachs']);
C::t('attachment')->addcopy_by_aid($attachs,1);
}
//新添加的范圍重新發(fā)送通知
$orgids=$uids=array();
if($arr['orgids']!=$data['orgids']){
$norgids=$arr['orgids']?explode(',',$arr['orgids']):array();
$oorgids=$data['orgids']?explode(',',$data['orgids']):array();
$orgids=array_diff($norgids,$oorigids);
}
if($arr['uids']!=$data['uids']){
$nuids=$arr['uids']?explode(',',$arr['uids']):array();
$ouids=$data['uids']?explode(',',$data['uids']):array();
$uids=array_diff($nuids,$ouids);
}
$new_uids=getUidsByOrgid($orgids,$uids);
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',0);
foreach($new_uids as $uid){
if($uid!=getglobal('uid')){
//發(fā)送通知
$notevars=array(
'from_id'=>$appid,
'from_idtype'=>'app',
'url'=>DZZSCRIPT.'?mod=news&op=view&newid='.$data['newid'],
'author'=>getglobal('username'),
'authorid'=>getglobal('uid'),
'subject'=>$data['subject'],
'dataline'=>dgmdate(TIMESTAMP),
);
$action='news_publish';
$type='news_publish_'.$uid;
dzz_notification::notification_add($uid, $type, $action, $notevars, 0,'dzz/news');
}
}
}
if($return=parent::update($arr['newid'],$arr)){
if($data['attachs']){
$attachs=explode(',',$data['attachs']);
C::t('attachment')->addcopy_by_aid($attachs,-1);
}
if(isset($arr['attachs'])){
$attachs=explode(',',$arr['attachs']);
C::t('attachment')->addcopy_by_aid($attachs,1);
}
//新添加的范圍重新發(fā)送通知
$orgids=$uids=array();
if($arr['orgids']!=$data['orgids']){
$norgids=$arr['orgids']?explode(',',$arr['orgids']):array();
$oorigids=$data['orgids']?explode(',',$data['orgids']):array();
$orgids=implode(',', array_diff($norgids,$oorigids));
}
if($arr['uids']!=$data['uids']){
$nuids=$arr['uids']?explode(',',$arr['uids']):array();
$ouids=$data['uids']?explode(',',$data['uids']):array();
$uids=implode(',', array_diff($nuids,$ouids));
}
if(!$orgids && $arr['orgids'] || !$uids && $arr['uids']){
}else{
$new_uids=getUidsByOrgid($orgids,$uids);
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',0);
foreach($new_uids as $uid){
if($uid!=getglobal('uid')){
//發(fā)送通知
$notevars=array(
'from_id'=>$appid,
'from_idtype'=>'app',
'url'=>DZZSCRIPT.'?mod=news&op=view&newid='.$data['newid'],
'author'=>getglobal('username'),
'authorid'=>getglobal('uid'),
'subject'=>$arr['subject'],
'dataline'=>dgmdate(TIMESTAMP),
);
$action='news_publish';
$type='news_publish_'.$uid;
dzz_notification::notification_add($uid, $type, $action, $notevars, 0,'dzz/news');
}
}
}
}
更多建議: