Poodletooth-iLand/dev/tools/whitelist/whitelist_tool.py
2015-06-17 09:53:15 -04:00

77 lines
2.1 KiB
Python

import os
os.chdir('../../../')
from otp.chat import WhiteListData
def acceptWord():
word = raw_input('> ').rstrip().lower()
if word == 'exit()':
saveChanges()
return
if word.startswith('r '):
word = word.replace('r ', '')
if word not in LOCAL_LIST:
print 'Could not remove unknown word "%s" from the whitelist.' % word
else:
LOCAL_LIST.remove(word)
print 'Removed "%s" from the whitelist.' % word
elif word.startswith('m '):
merge = word.replace('m ', '')
if os.path.isfile(merge):
print 'Opening %s...' % merge
with open(merge) as file:
for line in file.readlines():
line = line.replace('\r', '').replace('\n', '').lower()
print 'Adding %s...' % line
LOCAL_LIST.append(line)
else:
print 'No file named %s!' % merge
elif word in LOCAL_LIST:
print 'The word "%s" is already whitelisted.' % word
else:
LOCAL_LIST.append(word)
print 'Added the word "%s" to the whitelist.' % word
acceptWord()
def saveChanges():
global LOCAL_LIST
print 'Saving the whitelist...'
with open('otp/chat/WhiteListData.py', 'w') as f:
f.write('WHITELIST = [\n')
LOCAL_LIST.sort()
LOCAL_LIST = list(set(LOCAL_LIST)) # Remove duplicates
addedWords = []
for word in LOCAL_LIST:
if word in addedWords:
continue
addedWords.append(word)
if "'" in word:
f.write(' "%s",\n' % word)
else:
f.write(" '%s',\n" % word)
f.write(']')
print 'Your changes have been saved! Make sure to push your changes!'
LOCAL_LIST = WhiteListData.WHITELIST
print 'Welcome to the Toontown Stride Whitelist Tool!'
print 'Type any word you want to add to the whitelist.'
print 'If you wish to remove a word, type "r <word>".'
print 'If you wish to merge a file, type "m <file>".'
print 'When you are done and want to save your changes, type "exit()".'
acceptWord()