StartupWizard.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. using MediaBrowser.Common;
  2. using MediaBrowser.Controller.Configuration;
  3. using MediaBrowser.Controller.Library;
  4. using MediaBrowser.Controller.Plugins;
  5. using System.Linq;
  6. namespace MediaBrowser.ServerApplication
  7. {
  8. /// <summary>
  9. /// Class StartupWizard
  10. /// </summary>
  11. public class StartupWizard : IServerEntryPoint
  12. {
  13. /// <summary>
  14. /// The _app host
  15. /// </summary>
  16. private readonly IApplicationHost _appHost;
  17. /// <summary>
  18. /// The _user manager
  19. /// </summary>
  20. private readonly IUserManager _userManager;
  21. private readonly IServerConfigurationManager _configurationManager;
  22. /// <summary>
  23. /// Initializes a new instance of the <see cref="StartupWizard" /> class.
  24. /// </summary>
  25. /// <param name="appHost">The app host.</param>
  26. /// <param name="userManager">The user manager.</param>
  27. public StartupWizard(IApplicationHost appHost, IUserManager userManager, IServerConfigurationManager configurationManager)
  28. {
  29. _appHost = appHost;
  30. _userManager = userManager;
  31. _configurationManager = configurationManager;
  32. }
  33. /// <summary>
  34. /// Runs this instance.
  35. /// </summary>
  36. public void Run()
  37. {
  38. if (_appHost.IsFirstRun)
  39. {
  40. LaunchStartupWizard();
  41. }
  42. }
  43. /// <summary>
  44. /// Launches the startup wizard.
  45. /// </summary>
  46. private void LaunchStartupWizard()
  47. {
  48. var user = _userManager.Users.FirstOrDefault(u => u.Configuration.IsAdministrator);
  49. App.OpenDashboardPage("wizardStart.html", user, _configurationManager);
  50. }
  51. /// <summary>
  52. /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
  53. /// </summary>
  54. public void Dispose()
  55. {
  56. }
  57. }
  58. }