View Single Post
  #1  
Old 05-17-2007, 02:55 AM
edunn edunn is offline
 
Join Date: Apr 2007
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Help with determining permissions based on forum and userid list

I am trying to determine from a list of users who has access (by my definition) how has "access" to a forum and here is what I have so far but its not working as expected. And it only grabs my current logged in user when it should get more.

Can someone please tell me if the if block in the while loop is really only evaulating to true when the user can view the forum, can reply to posts in the forum and post new messages in the forum?

Any help will be most appreciated.

Code:
	
echo('about to run query');
// Pull all userids 
$get_users = $db->query_read("
SELECT userid
FROM " . TABLE_PREFIX . "user
");			
echo('about to add group users');
while($got_users = $vbulletin->db->fetch_array($get_users)){							
	$forumperms = fetch_permissions($foruminfo['forumid'],$got_users['userid']);	
	if( ($forumperms & $vbulletin->bf_ugp_forumpermissions['canview']) && ($forumperms & $vbulletin->bf_ugp_forumpermissions['canviewthreads']) && ($forumperms & $vbulletin->bf_ugp_forumpermissions['canpostnew']) ) {		
		echo($got_users['userid']);	
		$users .= "" . $got_users['userid'] . ",";
	}		
}
Hey Guys,

I got it working!!!!!

Here is what I ended up doing, hope it helps someone else! It appears that this board is either cynical or dead

Code:
				// Pull all userids 
				$get_users = $db->query_read("
					SELECT userid
					FROM " . TABLE_PREFIX . "user
				");			
				// Knock all the userids with access together into a list
				while($got_users = $vbulletin->db->fetch_array($get_users)){						
					$tmpinfo =  fetch_userinfo($got_users['userid'])	;			
					$forumperms = fetch_permissions($foruminfo['forumid'],$got_users['userid'],$tmpinfo);										
					if( ($forumperms & $vbulletin->bf_ugp_forumpermissions['canview']) && ($forumperms & $vbulletin->bf_ugp_forumpermissions['canviewthreads']) && ($forumperms & $vbulletin->bf_ugp_forumpermissions['canpostnew']) ) {		
						    echo('adding '.$got_users['userid']);	
							$users .= "" . $got_users['userid'] . ",";
						}		
				}
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01805 seconds
  • Memory Usage 1,767KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (2)bbcode_code
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete