AclReload: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(Example added.)
Line 16: Line 16:
==Example==  
==Example==  
<!-- Explain what the example is in a single sentance -->
<!-- Explain what the example is in a single sentance -->
This example does...
This example allows an admin to reload the ACL by typing "/reloadACL".
<!-- Add the code below, an emphasis should be on making it clear, not optimized. You could provide two versions if you wish, one clear and well commented, the other optimized -->
<!-- Add the code below, an emphasis should be on making it clear, not optimized. You could provide two versions if you wish, one clear and well commented, the other optimized -->
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
--TODO
function reloadACL ( source, command )
-- Check if they're an admin...
if ( isObjectInACLGroup ( "user." .. getAccountName ( getPlayerAccount ( source )), aclGetGroup ( "Admin" ) ) ) then
local reload = aclReload() -- Reload the ACL
if ( reload ) then -- Check it was reloaded successfully
outputChatBox ( "ACL was successfully reloaded.", source, 255, 0, 0 ) -- If so, output it
else -- If not, output it (line below)
outputChatBox ( "An unknown error occured. Please check the ACL file exists.", source, 255, 0, 0 )
end
else -- If they're not an admin, output it (below)
outputChatBox ( "You must be an admin to use this command!", source, 255, 0, 0 )
end
end
addCommandHandler ( "reloadACL", reloadACL )
</syntaxhighlight>
</syntaxhighlight>



Revision as of 18:45, 21 February 2010

This function reloads the ACL's and the ACL groups from the ACL XML file. All ACL and ACL group elements are invalid after a call to this and should not be used anymore.

Syntax

bool aclReload ()

Returns

Returns true if the XML was successfully reloaded from the file, false or nil if the XML was invalid, didn't exist or could not be loaded for some other reason.

Example

This example allows an admin to reload the ACL by typing "/reloadACL".

function reloadACL ( source, command )
-- Check if they're an admin...
	if ( isObjectInACLGroup ( "user." .. getAccountName ( getPlayerAccount ( source )), aclGetGroup ( "Admin" ) ) ) then
		local reload = aclReload() -- Reload the ACL
			if ( reload ) then -- Check it was reloaded successfully
				outputChatBox ( "ACL was successfully reloaded.", source, 255, 0, 0 ) -- If so, output it
			else -- If not, output it (line below)
				outputChatBox ( "An unknown error occured. Please check the ACL file exists.", source, 255, 0, 0 )
			end
	else -- If they're not an admin, output it (below)
		outputChatBox ( "You must be an admin to use this command!", source, 255, 0, 0 )
	end
end
addCommandHandler ( "reloadACL", reloadACL )

See Also