I updated the top download block for filemgmt plugin. This block now check rights for category access.
Text Formatted Code
function phpblock_topdl()
{
//For filemgmt plugin >= 1.5
global $_DB_table_prefix, $_USER;
$poplist = '';
$_FM_TABLES['filemgmt_cat'] = $_DB_table_prefix . 'filemgmt_category';
$_FM_TABLES['filemgmt_filedetail'] = $_DB_table_prefix . 'filemgmt_filedetail';
$query = "SELECT f.* FROM {$_FM_TABLES['filemgmt_filedetail']} AS f
LEFT JOIN {$_FM_TABLES['filemgmt_cat']} AS c
ON c.cid = f.cid
";
if (isset($_USER['uid']) AND $_USER['uid'] > 1) {
$uid = $_USER['uid'];
} else {
$uid = 1;
}
$_GROUPS = SEC_getUserGroups($uid);
$groupsql = '';
if (count($_GROUPS) == 1) {
$groupsql .= " WHERE c.grp_access = '" . current($_GROUPS) ."'";
} else {
$groupsql .= " WHERE c.grp_access IN (" . implode(',',array_values($_GROUPS)) .")";
}
$query .= $groupsql;
//Files limit is 5. Change it if you need
$query .= " ORDER BY hits DESC LIMIT 0 , 5";
$result = mysql_query($query);
$nrows = DB_numRows($result);
if( $nrows > 0 ){
$string = '';
$popular = array();
for( $i = 0; $i < $nrows; $i++ ){
$A = DB_fetchArray( $result );
$string .= $poplist . '';
$popular[] = '<a href="' . $_CONF['site_url']
. '/filemgmt/index.php?id=' . $A['lid'] . '">' . $A['title']
. '</a> (' . $A['hits'] . ')';
}
if( !empty( $popular )){
$poplist = COM_makeList( $popular, 'list-popular-stories' );
}
}
return $poplist;
}