private void UpdateApplicationSettings() { var plex = PlexRequestSettings.GetSettings(); var jobSettings = Jobs.GetSettings(); var newsLetter = NewsletterSettings.GetSettings(); newsLetter.SendToPlexUsers = true; UpdateScheduledSettings(jobSettings); if (plex.SendRecentlyAddedEmail) { newsLetter.SendRecentlyAddedEmail = plex.SendRecentlyAddedEmail; plex.SendRecentlyAddedEmail = false; PlexRequestSettings.SaveSettings(plex); } NewsletterSettings.SaveSettings(newsLetter); Jobs.SaveSettings(jobSettings); }
private void PopulateDefaultUserManagementSettings() { try { var plexRequestSettings = PlexRequestSettings.GetSettings(); UserManagementSettings.SaveSettings(new UserManagementSettings { AutoApproveMovies = !plexRequestSettings.RequireMovieApproval, RequestTvShows = plexRequestSettings.SearchForTvShows, RequestMusic = plexRequestSettings.SearchForMusic, RequestMovies = plexRequestSettings.SearchForMovies, AutoApproveMusic = !plexRequestSettings.RequireMusicApproval, AutoApproveTvShows = !plexRequestSettings.RequireTvShowApproval }); } catch (Exception e) { Logger.Fatal("Exception when migrating Version 1.10.0 (PopulateDefaultUserMngmentSettings)"); Logger.Fatal(e); } }
private void UpdatePlexUsers() { try { var settings = PlexSettings.GetSettings(); if (string.IsNullOrEmpty(settings.PlexAuthToken)) { return; } var plexUsers = PlexApi.GetUsers(settings.PlexAuthToken); if (plexUsers?.User == null) { return; } var prSettings = PlexRequestSettings.GetSettings(); var dbUsers = PlexUsers.GetAll().ToList(); foreach (var user in plexUsers.User) { if (dbUsers.FirstOrDefault(x => x.PlexUserId == user.Id) != null) { continue; } int permissions = 0; if (prSettings.SearchForMovies) { permissions = (int)Permissions.RequestMovie; } if (prSettings.SearchForTvShows) { permissions += (int)Permissions.RequestTvShow; } if (prSettings.SearchForMusic) { permissions += (int)Permissions.RequestMusic; } if (!prSettings.RequireMovieApproval) { permissions += (int)Permissions.AutoApproveMovie; } if (!prSettings.RequireTvShowApproval) { permissions += (int)Permissions.AutoApproveTv; } if (!prSettings.RequireMusicApproval) { permissions += (int)Permissions.AutoApproveAlbum; } // Add report Issues permissions += (int)Permissions.ReportIssue; var m = new PlexUsers { PlexUserId = user.Id, Permissions = permissions, Features = 0, UserAlias = string.Empty, EmailAddress = user.Email, Username = user.Username, LoginId = Guid.NewGuid().ToString() }; PlexUsers.Insert(m); } } catch (Exception e) { Logger.Fatal("Exception when migrating Version 1.10.0 (UpdatePlexUsers)"); Logger.Fatal(e); } }