Rework input validation to more closely match what we require in the UI

This commit is contained in:
Rob Crittenden
2007-12-07 17:07:03 -05:00
parent 5e4a162954
commit 00489597d8
5 changed files with 102 additions and 77 deletions

View File

@@ -62,28 +62,28 @@ def main():
if (len(args) != 2):
while (cont != True):
cn = raw_input("Group name: ")
if (ipavalidate.plain(cn, notEmpty=True)):
print "Field is required and must be letters or '."
if (ipavalidate.String(cn, notEmpty=True)):
print "Please enter a value"
else:
cont = True
else:
cn = args[1]
if (ipavalidate.plain(cn, notEmpty=True)):
print "Group name is required and must be letters or '."
if (ipavalidate.ipastsring(cn, notEmpty=True)):
print "Please enter a value"
return 1
cont = False
if not options.desc:
while (cont != True):
desc = raw_input("Description: ")
if (ipavalidate.plain(desc, notEmpty=True)):
print "Field is required and must be letters or '."
if (ipavalidate.String(desc, notEmpty=True)):
print "Please enter a value"
else:
cont = True
else:
desc = options.desc
if (ipavalidate.plain(desc, notEmpty=True)):
print "First name is required and must be letters or '."
if (ipavalidate.String(desc, notEmpty=True)):
print "Please enter a value"
return 1
if options.gid:

View File

@@ -92,42 +92,42 @@ def main():
if not options.gn:
while (cont != True):
givenname = raw_input("First name: ")
if (ipavalidate.plain(givenname, notEmpty=True)):
print "Field is required and must be letters or '"
if (ipavalidate.String(givenname, notEmpty=True)):
print "Please enter a value"
else:
cont = True
else:
givenname = options.gn
if (ipavalidate.plain(givenname, notEmpty=True)):
print "First name is required and must be letters or '"
if (ipavalidate.String(givenname, notEmpty=True)):
print "Please enter a value"
return 1
cont = False
if not options.sn:
while (cont != True):
lastname = raw_input("Last name: ")
if (ipavalidate.plain(lastname, notEmpty=True)):
print "Field is required and must be letters or '"
if (ipavalidate.String(lastname, notEmpty=True)):
print "Please enter a value"
else:
cont = True
else:
lastname = options.sn
if (ipavalidate.plain(lastname, notEmpty=True)):
print "Last name is required and must be letters or '"
if (ipavalidate.String(lastname, notEmpty=True)):
print "Please enter a value"
return 1
cont = False
if (len(args) != 2):
while (cont != True):
username = raw_input("Login name: ")
if (ipavalidate.plain(username, notEmpty=True)):
print "Field is required and must be letters or '"
if (ipavalidate.Plain(username, notEmpty=True, allowSpaces=False)):
print "Please enter a value"
else:
cont = True
else:
username = args[1]
if (ipavalidate.plain(username, notEmpty=True)):
print "Username is required and must be letters or '"
if (ipavalidate.Plain(username, notEmpty=True, allowSpaces=False)):
print "Username is required and may only include letters and numbers"
return 1
if not options.password:
@@ -147,7 +147,7 @@ def main():
if options.mail:
mail = options.mail
if (ipavalidate.email(mail)):
if (ipavalidate.Email(mail)):
print "The email provided seem not a valid email."
return 1
@@ -158,8 +158,8 @@ def main():
if not options.gecos:
while (cont != True):
gecos = raw_input("gecos []: ")
if (ipavalidate.plain(gecos, notEmpty=False)):
print "Must be letters, numbers, spaces or '"
if (ipavalidate.String(gecos, notEmpty=False)):
print "Please enter a value"
else:
cont = True
cont = False
@@ -168,8 +168,8 @@ def main():
directory = raw_input("home directory [/home/"+username+"]: ")
if directory == "":
directory = "/home/"+username
if (ipavalidate.path(directory, notEmpty=False)):
print "Must be letters, numbers, spaces or '"
if (ipavalidate.Path(directory, notEmpty=False)):
print "Please enter a value"
else:
cont = True
cont = False

View File

@@ -124,8 +124,8 @@ def main():
if not options.gn:
while (cont != True):
givenname = raw_input("First name: [%s] " % user.getValue('givenname'))
if (ipavalidate.plain(givenname, notEmpty=False)):
print "Must be letters or '"
if (ipavalidate.String(givenname, notEmpty=False)):
print "Please enter a value"
else:
cont = True
if len(givenname) < 1:
@@ -133,16 +133,16 @@ def main():
cont = True
else:
givenname = options.gn
if (ipavalidate.plain(givenname, notEmpty=True)):
print "First name must be letters or '"
if (ipavalidate.String(givenname, notEmpty=True)):
print "Please enter a value"
return 1
cont = False
if not options.sn:
while (cont != True):
lastname = raw_input(" Last name: [%s] " % user.getValue('sn'))
if (ipavalidate.plain(lastname, notEmpty=False)):
print "Must be letters or '"
if (ipavalidate.String(lastname, notEmpty=False)):
print "Please enter a value"
else:
cont = True
if len(lastname) < 1:
@@ -150,21 +150,21 @@ def main():
cont = True
else:
lastname = options.sn
if (ipavalidate.plain(lastname, notEmpty=True)):
print "Last name must be letters or '"
if (ipavalidate.String(lastname, notEmpty=True)):
print "Please enter a value"
return 1
cont = False
if not options.mail:
while (cont != True):
mail = raw_input("E-mail addr: [%s]" % user.getValue('mail'))
if (ipavalidate.email(mail, notEmpty=False)):
print "Must include a user and domain name"
if (ipavalidate.Email(mail, notEmpty=False)):
print "E-mail must include a user and domain name"
else:
cont = True
else:
mail = options.mail
if (ipavalidate.email(mail)):
if (ipavalidate.Email(mail)):
print "E-mail must include a user and domain name"
return 1
@@ -174,8 +174,8 @@ def main():
if not options.gecos:
while (cont != True):
gecos = raw_input("gecos: [%s] " % user.getValue('gecos'))
if (ipavalidate.plain(gecos, notEmpty=False)):
print "Must be letters, numbers, spaces or '"
if (ipavalidate.String(gecos, notEmpty=False)):
print "Please enter a value"
else:
cont = True
@@ -183,8 +183,8 @@ def main():
if not options.directory:
while (cont != True):
directory = raw_input("home directory: [%s] " % user.getValue('homeDirectory'))
if (ipavalidate.path(gecos, notEmpty=False)):
print "Must be letters, numbers, spaces or '"
if (ipavalidate.Path(gecos, notEmpty=False)):
print "Valid path is required"
else:
cont = True
cont = False