The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
HowTo Create Custom Usergroup Permissions
Usergoup Permissions are being controlled through XML files, you don't have to edit usergroup.php anymore To create your own usergroup permissions, the first thing to do is to modify table usergroup (keep table prefixes in mind!): [sql]ALTER TABLE usergroup ADD myhackpermissions INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ;[/sql] If your hack does need some integer settings as well (and not just On/Off-Options): [sql]ALTER TABLE usergroup ADD myhackintset INT( 10 ) DEFAULT '100' NOT NULL ;[/sql] Then you must create a an XML-File bitfield_myhack.xml and place it in includes/xml: HTML Code:
<?xml version="1.0" encoding="ISO-8859-1"?> <bitfields product="vbulletin"> <bitfielddefs> <group name="ugp"> <group name="myhackpermissions"> <bitfield name="canfoo" group="my_hack_permissions" phrase="can_foo_forum" install="1,2,3,4,5,6,7">1</bitfield> <bitfield name="canbaa" group="my_hack_permissions" phrase="can_baa_forum" install="">2</bitfield> <bitfield intperm="true" name="myhackintset" group="my_hack_permissions" phrase="myhack_int_desc"></bitfield> </group> </group> </bitfielddefs> </bitfields> Parameter product of Tag bitfields should be the identifier of your Product Paramater name of Tag group must match the column name in table usergroup. The Parameters for Tag bitfield are:
The value of <bitfield> is the decimal value of the bit (eg. 1 for the first, 2 for the second, 4 for the third, and so on). In case of an Integer Option this is the default value. If you want to hide certain permission groups for some usergroups, for example from Guests as they don't make sense for them: HTML Code:
<ignoregroups> <group name="myhackpermissions" ignoregroups="1" /> </ignoregroups> Place this section below the <bitfielddefs>-Section. Now create the necessary phrases (in Phrasegroup Permissions) at this point. As vBulletin caches Bitfields in Datastore, you must rebuild this cache before the new usergroup permissions can be actually used (They will already show up in Usergroup Manager, but cannot be saved - you will get an error). To do so, point your browser to admincp/index.php?do=buildbitfields. You can also use the following Code (in a Custom Installer or Install-Code of a Product) to update the Bitfield Cache: PHP Code:
This How-To is (C) 2005 by KirbyDE and you are not allowed to redistribute it in any way without my explicit consent. |
#2
|
|||
|
|||
Very nice, no more chances of stepping on toes.
I think the field add for a custom permission, bitfield, may need to look like this instead... PHP Code:
|
#3
|
||||
|
||||
Good tut, I hope Administrator Permissions is next... *hint*
|
#4
|
||||
|
||||
@noppid
Right. Should have been UNSIGNED of course, corrected |
#5
|
||||
|
||||
very very nice, this will boost the learning of vb3.5, no one wrote something like this for vb3.0
|
#6
|
|||
|
|||
Yay! This is what I was going to ask for! :up: :up:
|
#7
|
||||
|
||||
I think I love you KirbyDE
|
#8
|
||||
|
||||
Question: Is there something similar for forum permissions?
|
#9
|
|||
|
|||
Im with amykhar I tried to apply this to forumperms but with no effect.
I want simple yes/no option. I even tried editing the bitfield_vbulletin.xml directly and no effect any help appreciated. *edit * Got it to work. Note to self read full post before asking for help |
#10
|
||||
|
||||
Update: Simplified instructions to rebuild Bitfield Cache.
@amykhar You can extend the forumpermissions bitfield, however I fear this will cause problems sooner or later - 20 of 32 Bits are already being used. To do so: Code:
<?xml version="1.0" encoding="ISO-8859-1"?> <bitfields product="vbulletin"> <bitfielddefs> <group name="ugp"> <group name="forumpermissions"> <bitfield name="canfoo" group="my_forumperms" phrase="can_foo">2147483648</bitfield> </group> </group> </bitfielddefs> </bitfields> |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|