diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-22 11:46:23 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-22 11:46:23 -0400 |
| commit | 4c69edebe048433977304241e3dbfb9e8a2ab968 (patch) | |
| tree | 41d4bf255388cda45d370ef4025c9cac8a001526 | |
| parent | fa53ad940f52243f3aadde25832fbb507f1361c5 (diff) | |
fixes #180 - Deleting users doesn't remove all associated data.
| -rw-r--r-- | MediaBrowser.Controller/Entities/User.cs | 2 | ||||
| -rw-r--r-- | MediaBrowser.Server.Implementations/Library/UserManager.cs | 28 |
2 files changed, 28 insertions, 2 deletions
diff --git a/MediaBrowser.Controller/Entities/User.cs b/MediaBrowser.Controller/Entities/User.cs index edca21ae7..e186119d6 100644 --- a/MediaBrowser.Controller/Entities/User.cs +++ b/MediaBrowser.Controller/Entities/User.cs @@ -312,7 +312,7 @@ namespace MediaBrowser.Controller.Entities /// Gets the path to the user's configuration file /// </summary> /// <value>The configuration file path.</value> - private string ConfigurationFilePath + public string ConfigurationFilePath { get { diff --git a/MediaBrowser.Server.Implementations/Library/UserManager.cs b/MediaBrowser.Server.Implementations/Library/UserManager.cs index 816a72616..e6ffe075d 100644 --- a/MediaBrowser.Server.Implementations/Library/UserManager.cs +++ b/MediaBrowser.Server.Implementations/Library/UserManager.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Common.Events; +using System.IO; +using MediaBrowser.Common.Events; using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; @@ -485,6 +486,31 @@ namespace MediaBrowser.Server.Implementations.Library await UserRepository.DeleteUser(user, CancellationToken.None).ConfigureAwait(false); + if (user.Configuration.UseCustomLibrary) + { + var path = user.RootFolderPath; + + try + { + Directory.Delete(path, true); + } + catch (IOException ex) + { + _logger.ErrorException("Error deleting directory {0}", ex, path); + } + + path = user.ConfigurationFilePath; + + try + { + File.Delete(path); + } + catch (IOException ex) + { + _logger.ErrorException("Error deleting file {0}", ex, path); + } + } + OnUserDeleted(user); // Force this to be lazy loaded again |
