Compare commits

..

2 Commits

Author SHA1 Message Date
93ee76e130 Update gitignore 2020-03-13 11:14:03 +01:00
5c8238bed3 Adding removing redirection functionality 2020-03-13 11:13:41 +01:00
2 changed files with 13 additions and 1 deletions

1
.gitignore vendored
View File

@ -1,3 +1,4 @@
data/* data/*
*.yml *.yml
*.conf *.conf
*.swp

View File

@ -15,7 +15,7 @@ def writeRedirectionsToFile(client,domain):
file.write(redirection['from']+','+redirection['to']+','+redirection['id']+'\n') file.write(redirection['from']+','+redirection['to']+','+redirection['id']+'\n')
file.close() file.close()
def checkRedirExists(client,domain, fr,to): def checkRedirExists(client,domain,fr,to):
mailbox = client.get('/email/domain/' + domain + '/redirection') mailbox = client.get('/email/domain/' + domain + '/redirection')
for id in mailbox: for id in mailbox:
redirection = client.get('/email/domain/' + domain +'/redirection/'+str(id)) redirection = client.get('/email/domain/' + domain +'/redirection/'+str(id))
@ -33,6 +33,15 @@ def addRedirection(client,domain,fr,to):
print(json.dumps(result,indent=4)) print(json.dumps(result,indent=4))
return 0 return 0
def delRedirection(client,domain,fr,to):
id_redir = checkRedirExists(client,domain,fr,to)
if not id_redir:
return False
else:
result = client.delete('/email/domain/'+ domain +'/redirection/' + str(id_redir))
print(json.dumps(result,indent=4))
return 0
parser = argparse.ArgumentParser(description='Process arguments') parser = argparse.ArgumentParser(description='Process arguments')
parser.add_argument('method', metavar='method', type=str, help='Function to use') parser.add_argument('method', metavar='method', type=str, help='Function to use')
parser.add_argument('domain', metavar='domain', type=str, help='domain') parser.add_argument('domain', metavar='domain', type=str, help='domain')
@ -52,3 +61,5 @@ if (args.method == "write"):
elif (args.method == "add"): elif (args.method == "add"):
if not (checkRedirExists(client,args.domain,args.fr,args.to)): if not (checkRedirExists(client,args.domain,args.fr,args.to)):
addRedirection(client,args.domain,args.fr,args.to) addRedirection(client,args.domain,args.fr,args.to)
elif (args.method == "del"):
status = delRedirection(client,args.domain,args.fr,args.to)