From ff4ee7ab9c41f9756e1db6f25f701c8ca69cecf2 Mon Sep 17 00:00:00 2001 From: LukePulverenti Date: Wed, 27 Feb 2013 15:25:45 -0500 Subject: combined usermanager and userdata manager --- MediaBrowser.ServerApplication/App.xaml.cs | 32 +++++++++++----------- MediaBrowser.ServerApplication/ApplicationHost.cs | 4 +++ .../LibraryExplorer.xaml.cs | 4 +-- MediaBrowser.ServerApplication/MainWindow.xaml.cs | 29 ++++++++------------ 4 files changed, 34 insertions(+), 35 deletions(-) (limited to 'MediaBrowser.ServerApplication') diff --git a/MediaBrowser.ServerApplication/App.xaml.cs b/MediaBrowser.ServerApplication/App.xaml.cs index 1199aeaf1..81ea869b8 100644 --- a/MediaBrowser.ServerApplication/App.xaml.cs +++ b/MediaBrowser.ServerApplication/App.xaml.cs @@ -1,6 +1,7 @@ using MediaBrowser.ClickOnce; using MediaBrowser.Common.Kernel; using MediaBrowser.Controller; +using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Logging; using MediaBrowser.Server.Uninstall; using Microsoft.Win32; @@ -277,21 +278,24 @@ namespace MediaBrowser.ServerApplication /// /// Opens the dashboard. /// - public static void OpenDashboard() + public static void OpenDashboard(User loggedInUser) { - OpenDashboardPage("dashboard.html"); + OpenDashboardPage("dashboard.html", loggedInUser); } /// /// Opens the dashboard page. /// /// The page. - public static void OpenDashboardPage(string page) + public static void OpenDashboardPage(string page, User loggedInUser) { var url = "http://localhost:" + Controller.Kernel.Instance.Configuration.HttpServerPortNumber + "/" + Controller.Kernel.Instance.WebApplicationName + "/dashboard/" + page; - url = AddAutoLoginToDashboardUrl(url); + if (loggedInUser != null) + { + url = AddAutoLoginToDashboardUrl(url, loggedInUser); + } OpenUrl(url); } @@ -300,21 +304,17 @@ namespace MediaBrowser.ServerApplication /// Adds the auto login to dashboard URL. /// /// The URL. + /// The user. /// System.String. - public static string AddAutoLoginToDashboardUrl(string url) + public static string AddAutoLoginToDashboardUrl(string url, User user) { - var user = Controller.Kernel.Instance.Users.FirstOrDefault(u => u.Configuration.IsAdministrator); - - if (user != null) + if (url.IndexOf('?') == -1) { - if (url.IndexOf('?') == -1) - { - url += "?u=" + user.Id; - } - else - { - url += "&u=" + user.Id; - } + url += "?u=" + user.Id; + } + else + { + url += "&u=" + user.Id; } return url; diff --git a/MediaBrowser.ServerApplication/ApplicationHost.cs b/MediaBrowser.ServerApplication/ApplicationHost.cs index 8205018ab..0d8411d2c 100644 --- a/MediaBrowser.ServerApplication/ApplicationHost.cs +++ b/MediaBrowser.ServerApplication/ApplicationHost.cs @@ -14,6 +14,7 @@ using MediaBrowser.Common.Kernel; using MediaBrowser.Common.Net; using MediaBrowser.Common.ScheduledTasks; using MediaBrowser.Controller; +using MediaBrowser.Controller.Library; using MediaBrowser.IsoMounter; using MediaBrowser.Model.IO; using MediaBrowser.Model.Logging; @@ -22,6 +23,7 @@ using MediaBrowser.Model.Serialization; using MediaBrowser.Model.System; using MediaBrowser.Model.Updates; using MediaBrowser.Server.Implementations; +using MediaBrowser.Server.Implementations.Library; using MediaBrowser.ServerApplication.Implementations; using System; using System.Collections.Generic; @@ -118,6 +120,8 @@ namespace MediaBrowser.ServerApplication RegisterSingleInstance(this); + RegisterSingleInstance(new UserManager(Kernel, Logger)); + RegisterSingleInstance(ServerApplicationPaths); RegisterSingleInstance(new PismoIsoManager(Logger)); RegisterSingleInstance(new BdInfoExaminer()); diff --git a/MediaBrowser.ServerApplication/LibraryExplorer.xaml.cs b/MediaBrowser.ServerApplication/LibraryExplorer.xaml.cs index cb5c62ff0..b88b64988 100644 --- a/MediaBrowser.ServerApplication/LibraryExplorer.xaml.cs +++ b/MediaBrowser.ServerApplication/LibraryExplorer.xaml.cs @@ -39,14 +39,14 @@ namespace MediaBrowser.ServerApplication /// /// Initializes a new instance of the class. /// - public LibraryExplorer(IJsonSerializer jsonSerializer, ILogger logger, IApplicationHost appHost) + public LibraryExplorer(IJsonSerializer jsonSerializer, ILogger logger, IApplicationHost appHost, IUserManager userManager) { _logger = logger; _jsonSerializer = jsonSerializer; InitializeComponent(); lblVersion.Content = "Version: " + appHost.ApplicationVersion; - foreach (var user in Kernel.Instance.Users) + foreach (var user in userManager.Users) ddlProfile.Items.Add(user); ddlProfile.Items.Insert(0,new User {Name = "Physical"}); ddlProfile.SelectedIndex = 0; diff --git a/MediaBrowser.ServerApplication/MainWindow.xaml.cs b/MediaBrowser.ServerApplication/MainWindow.xaml.cs index 1189e73d7..dbb3c9842 100644 --- a/MediaBrowser.ServerApplication/MainWindow.xaml.cs +++ b/MediaBrowser.ServerApplication/MainWindow.xaml.cs @@ -40,11 +40,6 @@ namespace MediaBrowser.ServerApplication /// The new item timer. private Timer NewItemTimer { get; set; } - /// - /// The _json serializer - /// - private readonly IJsonSerializer _jsonSerializer; - /// /// The _logger /// @@ -67,18 +62,13 @@ namespace MediaBrowser.ServerApplication /// The logger. /// The app host. /// logger - public MainWindow(IJsonSerializer jsonSerializer, ILogManager logManager, IApplicationHost appHost) + public MainWindow(ILogManager logManager, IApplicationHost appHost) { - if (jsonSerializer == null) - { - throw new ArgumentNullException("jsonSerializer"); - } if (logManager == null) { throw new ArgumentNullException("logManager"); } - _jsonSerializer = jsonSerializer; _logger = logManager.GetLogger("MainWindow"); _appHost = appHost; _logManager = logManager; @@ -255,7 +245,9 @@ namespace MediaBrowser.ServerApplication /// private void LaunchStartupWizard() { - App.OpenDashboardPage("wizardStart.html"); + var user = _appHost.Resolve().Users.FirstOrDefault(u => u.Configuration.IsAdministrator); + + App.OpenDashboardPage("wizardStart.html", user); } /// @@ -265,8 +257,8 @@ namespace MediaBrowser.ServerApplication /// The instance containing the event data. void cmdApiDocs_Click(object sender, EventArgs e) { - App.OpenUrl("http://localhost:" + Controller.Kernel.Instance.Configuration.HttpServerPortNumber + "/" + - Controller.Kernel.Instance.WebApplicationName + "/metadata"); + App.OpenUrl("http://localhost:" + Kernel.Instance.Configuration.HttpServerPortNumber + "/" + + Kernel.Instance.WebApplicationName + "/metadata"); } /// @@ -301,7 +293,8 @@ namespace MediaBrowser.ServerApplication /// The instance containing the event data. private void cmOpenExplorer_click(object sender, RoutedEventArgs e) { - (new LibraryExplorer(_jsonSerializer, _logger, _appHost)).Show(); + var explorer = (LibraryExplorer)_appHost.CreateInstance(typeof(LibraryExplorer)); + explorer.Show(); } /// @@ -311,7 +304,8 @@ namespace MediaBrowser.ServerApplication /// The instance containing the event data. private void cmOpenDashboard_click(object sender, RoutedEventArgs e) { - App.OpenDashboard(); + var user = _appHost.Resolve().Users.FirstOrDefault(u => u.Configuration.IsAdministrator); + App.OpenDashboard(user); } /// @@ -331,7 +325,8 @@ namespace MediaBrowser.ServerApplication /// The instance containing the event data. private void cmdBrowseLibrary_click(object sender, RoutedEventArgs e) { - App.OpenDashboardPage("index.html"); + var user = _appHost.Resolve().Users.FirstOrDefault(u => u.Configuration.IsAdministrator); + App.OpenDashboardPage("index.html", user); } /// -- cgit v1.2.3