[wpdev-commits] xmlscripts/scripts/commands account.py,1.1,1.2
Brought to you by:
rip,
thiagocorrea
From: Richard M. <dr...@us...> - 2004-07-08 23:12:00
|
Update of /cvsroot/wpdev/xmlscripts/scripts/commands In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4426 Modified Files: account.py Log Message: Updates, not finished. creating = segfault :X Index: account.py =================================================================== RCS file: /cvsroot/wpdev/xmlscripts/scripts/commands/account.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** account.py 3 Jul 2004 21:53:13 -0000 1.1 --- account.py 8 Jul 2004 23:11:51 -0000 1.2 *************** *** 11,93 **** def onLoad(): wolfpack.registercommand( 'account', commandAccount ) # Handles the account command def commandAccount( socket, cmd, args ): args = args.strip() ! if len(args) == 0: ! socket.sysmessage( usage1 ) ! socket.sysmessage( usage2 ) ! return True ! elif len( args ) > 0: ! try: ! args = args.split( ' ' ) ! if len( args ) == 1: ! ( action ) = args ! if action.lower() == 'reload': ! wolfpack.accounts.reload() ! return True ! elif action.lower() == 'save': ! wolfpack.accounts.save() ! return True ! elif len( args ) == 2: ! ( action, username ) = args ! if action.lower() == 'remove': ! accountRemove( socket, username ) ! return True ! elif len( args ) == 3: ! ( action, username, key ) = args ! if action.lower() == 'create': ! if len( key ) == 0: ! socket.sysmessage( "Error: Empty password!" ) ! return True ! else: ! accountCreate( socket, username.lower(), key ) ! return True ! elif action.lower() == 'show': ! accountShow( socket, username.lower(), key ) ! return True ! elif len( args ) == 4: ! ( action, username, key, value ) = args ! if action.lower() == 'set': ! accountSet( socket, username.lower(), key.lower(), value ) ! return True else: ! socket.sysmessage( usage1 ) ! socket.sysmessage( usage2 ) return True ! except: socket.sysmessage( usage1 ) socket.sysmessage( usage2 ) ! return True # Removes an account def accountRemove( socket, username ): ! # Make sure username stays lowercased ! username = username.lower() # Usernames are limited to 16 characters in length ! if len( username ) > 16: ! socket.sysmessage( "The given username exceeds the 16 character limit!" ) ! return True # Check if the account exists/Delete else: account = wolfpack.accounts.find( username ) if account: ! account.delete() ! socket.sysmessage( "Removed account: %s" % username ) ! return True # Failure else: ! socket.sysmessage( "The given account name could not be found for removal!" ) ! return True # Creates a new account def accountCreate( socket, username, password ): ! username = username.lower() # Usernames and passwords are limited to 16 characters in length if len( username ) > 16 or len( password ) > 16: if len( username ) > 16: ! socket.sysmessage( "The given username exceeds the 16 character limit!" ) if len( password ) > 16: ! socket.sysmessage( "The given password exceeds the 16 character limit!" ) return True # Check if the account exists --- 11,129 ---- def onLoad(): wolfpack.registercommand( 'account', commandAccount ) + return # Handles the account command def commandAccount( socket, cmd, args ): + char = socket.player args = args.strip() ! # Command with arguments ! if len( args ) > 0: ! args = args.split( ' ' ) ! # Error Check ! if len( args ) >= 5: ! return False ! # One Argument ! if len( args ) == 1: ! ( action ) = args ! action = action.lower() ! # Reload Accounts ! if action == 'reload': ! char.log( LOG_MESSAGE, "0x%x reloaded accounts." % char.serial ) ! wolfpack.accounts.reload() ! return True ! # Save Accounts ! elif action == 'save': ! char.log( LOG_MESSAGE, "0x%x saved accounts." % char.serial ) ! wolfpack.accounts.save() ! return True else: ! return False ! # Two Arguments ! elif len( args ) == 2: ! ( action, username ) = args ! action = action.lower() ! username = username.lower() ! # Remove Accounts ! if action == 'remove': ! accountRemove( socket, username ) return True ! # Three Arguments ! elif len( args ) == 3: ! ( action, username, key ) = args ! action = action.lower() ! username = username.lower() ! # Create Accounts ! if action == 'create': ! accountCreate( socket, username, key ) ! return True ! # Show Accounts ! elif action == 'show': ! accountShow( socket, username, key ) ! return True ! else: ! return False ! # Four Arguments ! elif len( args ) == 4: ! ( action, username, key, value ) = args ! action = action.lower() ! username = username.lower() ! key = key.lower() ! # Set Accounts ! if action.lower() == 'set': ! accountSet( socket, username, key, value ) ! return True ! else: ! return False ! # Error ! else: socket.sysmessage( usage1 ) socket.sysmessage( usage2 ) ! return False # Removes an account def accountRemove( socket, username ): ! char = socket.player ! characcount = wolfpack.accounts.find( char.account.name ) # Usernames are limited to 16 characters in length ! if len( username ) > 16 or len( username ) == 0: ! if len( username ) > 16: ! socket.sysmessage( "Error: Username exceeds the 16 character limit!" ) ! elif len( username ) == 0: ! socket.sysmessage( "Error: Username is NULL!" ) ! return False # Check if the account exists/Delete else: account = wolfpack.accounts.find( username ) if account: ! # Rank Protection ! if account.rank >= characcount.rank: ! socket.sysmessage( "Error: Your account rank does not permit this!" ) ! return False ! else: ! account.delete() ! socket.sysmessage( "Success: Account %s removed!" % username ) ! char.log( LOG_MESSAGE, "0x%x removed account: %s\n" % ( char.serial, username ) ) ! return True # Failure else: ! socket.sysmessage( "Error: Account %s does not exist for removal!" % username ) ! return False # Creates a new account def accountCreate( socket, username, password ): ! char = socket.player ! characcount = wolfpack.accounts.find( char.account.name ) # Usernames and passwords are limited to 16 characters in length if len( username ) > 16 or len( password ) > 16: if len( username ) > 16: ! socket.sysmessage( "Error: Username exceeds the 16 character limit!" ) if len( password ) > 16: ! socket.sysmessage( "Error: Password exceeds the 16 character limit!" ) ! return True ! elif len( username ) == 0 or len( password ) == 0: ! if len( username ) == 0: ! socket.sysmessage( "Error: Username is NULL!" ) ! if len( password ) == 0: ! socket.sysmessage( "Error: Password is NULL!" ) return True # Check if the account exists *************** *** 96,104 **** if account: socket.sysmessage( "An account with this name already exists!" ) ! return True # Create the Account elif not account: wolfpack.accounts.add( username, password ) socket.sysmessage( "You created the account successfully!" ) return True # Failure --- 132,141 ---- if account: socket.sysmessage( "An account with this name already exists!" ) ! return False # Create the Account elif not account: wolfpack.accounts.add( username, password ) socket.sysmessage( "You created the account successfully!" ) + char.log( LOG_MESSAGE, "0x%x created account: %s\n" % ( char.serial, username ) ) return True # Failure *************** *** 109,113 **** # Shows account properties def accountShow( socket, username, key ): ! username = username.lower() key = key.lower() # Usernames are limited to 16 characters in length --- 146,151 ---- # Shows account properties def accountShow( socket, username, key ): ! char = socket.player ! characcount = wolfpack.accounts.find( char.account ) key = key.lower() # Usernames are limited to 16 characters in length *************** *** 119,122 **** --- 157,163 ---- account = wolfpack.accounts.find( username ) if account: + # + if account.rank >= characcount.rank: + return False if key == 'acl': socket.sysmessage( "%s.acl = %s" % ( account.name, account.acl ) ) *************** *** 156,160 **** # Sets account properties def accountSet( socket, username, key, value ): - username = username.lower() # Usernames are limited to 16 characters in length if len( username ) > 16: --- 197,200 ---- |