""" Generate and returns the profiles
it assumes that self.pdir is defined """
#this is generated every time to handle the case of the user renaming the directories by hand
- return [os.path.join(self.pdir, f) for f in os.listdir(self.pdir)]
+ return sorted([os.path.join(self.pdir, f) for f in os.listdir(self.pdir)])
def getProfileFolder(self):
""" Generates, in a os dependant way, the local folder where all profiles are stored """
print("Creating a new profile")
if self.isValidProfileName(profileName):
- os.makedirs(os.path.join(self.getProfileFolder(), profileName))
+ try:
+ os.makedirs(os.path.join(self.getProfileFolder(), profileName))
+ except OSError,e:
+ if e.errno == errno.EEXIST:
+ raise AppError("Profile exists.")
+ else:
+ raise AppError(str(e))
else:
raise AppError('Profile Name not valid.\nAllowed only ascii characters.')
print("Profile "+profileName+" created.")