From: <sy...@us...> - 2005-11-30 14:37:21
|
Update of /cvsroot/tikiwiki/tiki/lib/newsletters In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5694/lib/newsletters Modified Files: Tag: BRANCH-1-9 nllib.php Log Message: some perms check on archive newsletter Index: nllib.php =================================================================== RCS file: /cvsroot/tikiwiki/tiki/lib/newsletters/nllib.php,v retrieving revision 1.33.2.18 retrieving revision 1.33.2.19 diff -u -d -r1.33.2.18 -r1.33.2.19 --- nllib.php 19 May 2005 17:40:28 -0000 1.33.2.18 +++ nllib.php 30 Nov 2005 14:37:09 -0000 1.33.2.19 @@ -386,12 +386,16 @@ return $res; } - function list_editions($nlId, $offset, $maxRecords, $sort_mode, $find) { + function list_editions($nlId, $offset, $maxRecords, $sort_mode, $find, $perm='') { + global $tikilib, $user; $bindvars = array(); $mid = ""; if ($nlId) { $mid.= " and tn.`nlId`=". intval($nlId); + $tiki_p_admin_newsletters = $tikilib->user_has_perm_on_object($user, $nlId, 'newsletter', 'tiki_p_admin_newsletters')? 'y': 'n'; + $tiki_p_send_newsletters = $tikilib->user_has_perm_on_object($user, $nlId, 'newsletter', 'tiki_p_send_newsletters')? 'y': 'n'; + $tiki_p_subscribe_newsletters = $tikilib->user_has_perm_on_object($user, $nlId, 'newsletter', 'tiki_p_subscribe_newsletters')? 'y': 'n'; } if ($find) { @@ -403,13 +407,26 @@ $query = "select tsn.`editionId`,tn.`nlId`,`subject`,`data`,tsn.`users`,`sent`,`name` from `tiki_newsletters` tn, `tiki_sent_newsletters` tsn "; $query.= " where tn.`nlId`=tsn.`nlId` $mid order by ".$this->convert_sortmode("$sort_mode"); - $query_cant = "select count(*) from `tiki_newsletters` tn, `tiki_sent_newsletters` tsn where tn.`nlId`=tsn.`nlId` $mid"; $result = $this->query($query,$bindvars,$maxRecords,$offset); - $cant = $this->getOne($query_cant,$bindvars); $ret = array(); + $cant = 0; while ($res = $result->fetchRow()) { + if ($nlId) { + if ($perm && $$perm == 'n') + continue; + $res['tiki_p_admin_newsletters'] = $tiki_p_admin_newsletters; + $res['tiki_p_send_newsletters'] = $tiki_p_send_newsletters; + $res['tiki_p_subscribe_newsletters'] = $tiki_p_subscribe_newsletters; + } else { + $res['tiki_p_admin_newsletters'] = $tikilib->user_has_perm_on_object($user, $res['nlId'], 'newsletter', 'tiki_p_admin_newsletters')? 'y': 'n'; + $res['tiki_p_send_newsletters'] = $tikilib->user_has_perm_on_object($user, $res['nlId'], 'newsletter', 'tiki_p_send_newsletters')? 'y': 'n'; + $res['tiki_p_subscribe_newsletters'] = $tikilib->user_has_perm_on_object($user, $res['nlId'], 'newsletter', 'tiki_p_subscribe_newsletters')? 'y': 'n'; + if ($perm && $res[$perm] == 'n') + continue; + } $ret[] = $res; + ++$cant; } $retval = array(); |