1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- using MediaBrowser.Controller;
- using MediaBrowser.Controller.Configuration;
- using MediaBrowser.Controller.Library;
- using MediaBrowser.Controller.Plugins;
- using MediaBrowser.Model.Logging;
- using System;
- using System.Linq;
- using System.Windows.Forms;
- using MediaBrowser.ServerApplication.Native;
- namespace MediaBrowser.ServerApplication.EntryPoints
- {
- /// <summary>
- /// Class StartupWizard
- /// </summary>
- public class StartupWizard : IServerEntryPoint
- {
- /// <summary>
- /// The _app host
- /// </summary>
- private readonly IServerApplicationHost _appHost;
- /// <summary>
- /// The _user manager
- /// </summary>
- private readonly IUserManager _userManager;
- private readonly ILogger _logger;
- private readonly IServerConfigurationManager _configurationManager;
- /// <summary>
- /// Initializes a new instance of the <see cref="StartupWizard" /> class.
- /// </summary>
- /// <param name="appHost">The app host.</param>
- /// <param name="userManager">The user manager.</param>
- public StartupWizard(IServerApplicationHost appHost, IUserManager userManager, IServerConfigurationManager configurationManager, ILogger logger)
- {
- _appHost = appHost;
- _logger = logger;
- _userManager = userManager;
- _configurationManager = configurationManager;
- }
- /// <summary>
- /// Runs this instance.
- /// </summary>
- public void Run()
- {
- if (_appHost.IsFirstRun)
- {
- LaunchStartupWizard();
- }
- }
- /// <summary>
- /// Launches the startup wizard.
- /// </summary>
- private void LaunchStartupWizard()
- {
- var user = _userManager.Users.FirstOrDefault(u => u.Configuration.IsAdministrator);
- try
- {
- BrowserLauncher.OpenDashboardPage("wizardstart.html", user, _configurationManager, _appHost, _logger);
- }
- catch (Exception ex)
- {
- _logger.ErrorException("Error launching startup wizard", ex);
- MessageBox.Show("There was an error launching the Media Browser startup wizard. Please ensure a web browser is installed on the machine and is configured as the default browser.", "Media Browser");
- }
- }
- /// <summary>
- /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
- /// </summary>
- public void Dispose()
- {
- }
- }
- }
|