Added user confirmation to remove action

In case of files other than setup and config being present in the
profile folder, user confirmation is necessary to delete the
profile in question.

Also, added my name to the README.
This commit is contained in:
Simon Wydooghe 2016-03-28 13:13:03 +02:00
parent 9e93a611cc
commit 65f956533b
2 changed files with 15 additions and 2 deletions

View File

@ -47,6 +47,7 @@ Contributors to this version of autorandr are:
* stormc
* tachylatus
* andersonjacob
* Simon Wydooghe
## How to use

View File

@ -801,11 +801,23 @@ def main(argv):
if options["--remove"] not in profiles.keys():
raise AutorandrException("Cannot remove profile '%s':\nThis profile does not exist." % options["--remove"])
try:
remove = True
profile_folder = os.path.join(profile_path, options["--remove"])
shutil.rmtree(profile_folder)
profile_dirlist = os.listdir(profile_folder)
profile_dirlist.remove("config")
profile_dirlist.remove("setup")
if profile_dirlist:
print("Profile folder '%s' contains the following:\n---\n%s\n---" % (options["--remove"], "\n".join(profile_dirlist)))
response = input("Do you really want to remove profile '%s'? If so, type 'yes': " % options["--remove"]).strip()
if response != "yes":
remove = False
if remove is True:
shutil.rmtree(profile_folder)
print("Removed profile '%s'" % options["--remove"])
else:
print("Profile '%s' was not removed" % options["--remove"])
except Exception as e:
raise AutorandrException("Failed to remove profile '%s'" % (options["--remove"],), e)
print("Removed profile '%s'" % options["--remove"])
sys.exit(0)
if "-h" in options or "--help" in options: