HasObjectPermissionTo: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 2: | Line 2: | ||
{{Server function}}<!-- Change this to "Client function" or "Server function" appropriately--> | {{Server function}}<!-- Change this to "Client function" or "Server function" appropriately--> | ||
<!-- Describe in plain english what this function does. Don't go into details, just give an overview --> | <!-- Describe in plain english what this function does. Don't go into details, just give an overview --> | ||
This function returns whether or not the given object has access to perform the given action | This function returns whether or not the given object has access to perform the given action. | ||
==Syntax== | ==Syntax== | ||
Line 12: | Line 12: | ||
===Required Arguments=== | ===Required Arguments=== | ||
<!-- List each argument one per line. This should be the argument's name as in the argument list above, NOT the argument's data type --> | <!-- List each argument one per line. This should be the argument's name as in the argument list above, NOT the argument's data type --> | ||
*'''theObject:''' The object to test if has permission to. This can be a client element (ie. a player) or a string. | *'''theObject:''' The object to test if has permission to. This can be a client element (ie. a player), a resource or a string in the form "user.<name>" or "resource.<name>". | ||
*'''theAction:''' The action to test if the given object has access to. Ie. "function.kickPlayer". | *'''theAction:''' The action to test if the given object has access to. Ie. "function.kickPlayer". | ||
Revision as of 22:54, 19 December 2007
This function returns whether or not the given object has access to perform the given action.
Syntax
bool hasObjectPermissionTo ( string / element theObject, string theAction [, bool defaultPermission = true ] )
Required Arguments
- theObject: The object to test if has permission to. This can be a client element (ie. a player), a resource or a string in the form "user.<name>" or "resource.<name>".
- theAction: The action to test if the given object has access to. Ie. "function.kickPlayer".
Optional Arguments
NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.
- defaultPermission: The default permission if none is specified in either of the groups the given object is a member of. If this is left to true, the given object will have permissions to perform the action unless the opposite is explicitly specified in the ACL. If false, the action will be denied by default unless explicitly approved by the ACL.
Returns
Returns true if the given object has permission to perform the given action, false otherwise. Returns nil if the function failed because of bad arguments.
Example
This example does...
-- ChrML: Please test this example -- Ban command function onKickCommandHandler ( playerSource, commandName, playerToKick, stringReason ) -- Does the calling user have permission to kick the player? Default -- to false for safety reasons. We do this so any user can't use us to -- kick players. if ( hasObjectPermissionTo ( playerSource, "function.kickPlayer", false ) ) then -- Do we have permission to kick the player? We do this so we can fail -- nicely if this resource doesn't have access to call that function. if ( hasObjectPermissionTo ( getThisResource (), "function.kickPlayer", true ) ) -- Kick him kickPlayer ( playerToKick, playerSource, stringReason ) else -- Resource doesn't have any permissions, sorry outputChatBox ( "kick: The admin resource is not able to kick players. Please give this resource access to 'function.kickPlayer' in the ACL to use this function.", playerSource ) end else -- User doesn't have any permissions outputChatBox ( "kick: You don't have permissions to use this command.", playerSource ) end end
See Also
- aclCreate
- aclCreateGroup
- aclDestroy
- aclDestroyGroup
- aclGet
- aclGetGroup
- aclGetName
- aclGetRight
- aclGroupAddACL
- aclGroupAddObject
- aclGroupGetName
- aclGroupList
- aclGroupListACL
- aclGroupListObjects
- aclGroupRemoveACL
- aclGroupRemoveObject
- aclList
- aclListRights
- aclReload
- aclRemoveRight
- aclSave
- aclSetRight
- hasObjectPermissionTo
- isObjectInACLGroup