Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 Programming Discussions
  #1  
Old 12-19-2011, 11:35 AM
ahmedHasan ahmedHasan is offline
 
Join Date: Dec 2011
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default change user permission

Hello all,

I'm new in vBulletin programming.

I want to change user permssions to access certain forums in my vBulletin via PHP script. I can accept if i can create new user group or even update the permission for each user (Edit Access mask)

I've read the manual, searched on the forum for help but i don't find any thing.
Can someone helps me how to do that (if possible)?

Thanks
Ahmed
Reply With Quote
  #2  
Old 12-19-2011, 02:22 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Here's a short test script that adds a secondary usergroup to a user:

PHP Code:
require_once('./global.php');

// init data manager
$userdata =& datamanager_init('User'$vbulletinERRTYPE_CP);

$userid 6;
$addgroupid 9;

$userinfo fetch_userinfo($userid);
if (!
$userinfo)
{
   
print_stop_message('invalid_user_specified');
}
$userdata->set_existing($userinfo);

$secondary_groups fetch_membergroupids_array($userinfofalse);
if (!
in_array($addgroupid$secondary_groups))
{
    
$secondary_groups[] = $addgroupid;
    
$userdata->set('membergroupids'$secondary_groups);
    
$userdata->save();
}

echo 
"OK"

So you could create a user group that adds he necessary permission, then use something like this to add that group to a user as a secondary group.
Reply With Quote
  #3  
Old 12-22-2011, 12:31 PM
ahmedHasan ahmedHasan is offline
 
Join Date: Dec 2011
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thank you Kh99 for your reply

But, What i really want is some code (if possible) to create a user group.

Best regards
Ahmed
Reply With Quote
  #4  
Old 01-12-2012, 09:39 AM
ahmedHasan ahmedHasan is offline
 
Join Date: Dec 2011
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Can someone help me, or confirm that this is not possible with vBulletin current APIs?

Thnaks in advance
Reply With Quote
  #5  
Old 01-12-2012, 10:25 AM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It can be done - it's done in admincp/usergroup.php, in the section that starts with

Code:
// ###################### Start insert / update #######################
if ($_POST['do'] == 'update')
{

That code uses the values submitted from the adminCP usergroup form so you'd have to adapt it. For instance, some of the values are expected to be in $vbulletin->GPC['usergroup'], so you can easily replace that with your own array.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 11:03 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04514 seconds
  • Memory Usage 2,193KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_code
  • (1)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • 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
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete