2017-09-05 19:49:02 +00:00
|
|
|
|
using System;
|
|
|
|
|
using Emby.Server.Implementations.Browser;
|
2016-11-19 05:52:49 +00:00
|
|
|
|
using MediaBrowser.Controller;
|
2013-03-03 05:20:14 +00:00
|
|
|
|
using MediaBrowser.Controller.Plugins;
|
2013-05-29 14:23:27 +00:00
|
|
|
|
using MediaBrowser.Model.Logging;
|
2017-11-21 22:14:56 +00:00
|
|
|
|
using MediaBrowser.Controller.Configuration;
|
2013-03-03 05:20:14 +00:00
|
|
|
|
|
2016-11-19 05:52:49 +00:00
|
|
|
|
namespace Emby.Server.Implementations.EntryPoints
|
2013-03-03 05:20:14 +00:00
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Class StartupWizard
|
|
|
|
|
/// </summary>
|
|
|
|
|
public class StartupWizard : IServerEntryPoint
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// The _app host
|
|
|
|
|
/// </summary>
|
2013-06-03 18:15:35 +00:00
|
|
|
|
private readonly IServerApplicationHost _appHost;
|
2013-03-03 05:20:14 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The _user manager
|
|
|
|
|
/// </summary>
|
2013-05-29 14:23:27 +00:00
|
|
|
|
private readonly ILogger _logger;
|
2013-03-03 05:20:14 +00:00
|
|
|
|
|
2017-11-21 22:14:56 +00:00
|
|
|
|
private IServerConfigurationManager _config;
|
|
|
|
|
|
|
|
|
|
public StartupWizard(IServerApplicationHost appHost, ILogger logger, IServerConfigurationManager config)
|
2013-03-03 05:20:14 +00:00
|
|
|
|
{
|
|
|
|
|
_appHost = appHost;
|
2013-09-25 00:54:51 +00:00
|
|
|
|
_logger = logger;
|
2017-11-21 22:14:56 +00:00
|
|
|
|
_config = config;
|
2013-03-03 05:20:14 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Runs this instance.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public void Run()
|
|
|
|
|
{
|
|
|
|
|
if (_appHost.IsFirstRun)
|
|
|
|
|
{
|
2017-11-21 22:14:56 +00:00
|
|
|
|
BrowserLauncher.OpenDashboardPage("wizardstart.html", _appHost);
|
|
|
|
|
}
|
|
|
|
|
else if (_config.Configuration.IsStartupWizardCompleted)
|
|
|
|
|
{
|
2017-12-01 17:03:40 +00:00
|
|
|
|
var options = ((ApplicationHost)_appHost).StartupOptions;
|
|
|
|
|
|
|
|
|
|
if (!options.ContainsOption("-service") && !options.ContainsOption("-nobrowser"))
|
|
|
|
|
{
|
|
|
|
|
BrowserLauncher.OpenDashboardPage("index.html", _appHost);
|
|
|
|
|
}
|
2013-03-03 05:20:14 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public void Dispose()
|
|
|
|
|
{
|
2017-09-05 19:49:02 +00:00
|
|
|
|
GC.SuppressFinalize(this);
|
2013-03-03 05:20:14 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2013-09-25 00:54:51 +00:00
|
|
|
|
}
|