From 488494c27322118d9ba4dca62b2bc8b45b049db3 Mon Sep 17 00:00:00 2001 From: Rene Schwarz Date: Thu, 1 Apr 2021 15:15:09 +0200 Subject: [PATCH] init commit --- .../DesignTimeBuild/.dtbcache.v2 | Bin 0 -> 78556 bytes .vs/Server Dashboard/v16/.suo | Bin 0 -> 84992 bytes Server Dashboard.sln | 25 + Server Dashboard/App.xaml | 131 +++++ Server Dashboard/App.xaml.cs | 15 + Server Dashboard/AssemblyInfo.cs | 10 + Server Dashboard/Assets/Images/userlogin.png | Bin 0 -> 5822 bytes Server Dashboard/Assets/Images/userpasswd.png | Bin 0 -> 10587 bytes .../DashboardModules/DashboardModule.cs | 15 + .../DashboardModules/ModuleItem.cs | 12 + Server Dashboard/Database/DatabaseHandler.cs | 28 + Server Dashboard/MainWindow.xaml | 75 +++ Server Dashboard/MainWindow.xaml.cs | 25 + Server Dashboard/Server Dashboard.csproj | 28 + Server Dashboard/Server Dashboard.csproj.user | 14 + .../ViewModels/BaseViewModel/BaseViewModel.cs | 14 + .../ViewModels/DashboardModuleViewModel.cs | 28 + Server Dashboard/ViewModels/MainViewModel.cs | 8 + .../ViewModels/RelayCommand/RelayCommand.cs | 27 + .../netcoreapp3.1/Server Dashboard.deps.json | 164 ++++++ .../Debug/netcoreapp3.1/Server Dashboard.dll | Bin 0 -> 35328 bytes .../Debug/netcoreapp3.1/Server Dashboard.exe | Bin 0 -> 174592 bytes .../Debug/netcoreapp3.1/Server Dashboard.pdb | Bin 0 -> 15040 bytes .../Server Dashboard.runtimeconfig.dev.json | 9 + .../Server Dashboard.runtimeconfig.json | 9 + .../netcoreapp3.1/System.Data.SqlClient.dll | Bin 0 -> 267136 bytes .../netcoreapp2.1/System.Data.SqlClient.dll | Bin 0 -> 954760 bytes .../runtimes/win-arm64/native/sni.dll | Bin 0 -> 174224 bytes .../runtimes/win-x64/native/sni.dll | Bin 0 -> 160040 bytes .../runtimes/win-x86/native/sni.dll | Bin 0 -> 136488 bytes .../netcoreapp2.1/System.Data.SqlClient.dll | Bin 0 -> 1023352 bytes ...CoreApp,Version=v3.1.AssemblyAttributes.cs | 4 + .../obj/Debug/netcoreapp3.1/App.baml | Bin 0 -> 4921 bytes .../obj/Debug/netcoreapp3.1/App.g.cs | 84 +++ .../obj/Debug/netcoreapp3.1/App.g.i.cs | 84 +++ .../obj/Debug/netcoreapp3.1/MainWindow.baml | Bin 0 -> 3311 bytes .../obj/Debug/netcoreapp3.1/MainWindow.g.cs | 90 +++ .../obj/Debug/netcoreapp3.1/MainWindow.g.i.cs | 85 +++ .../Server Dashboard.AssemblyInfo.cs | 23 + .../Server Dashboard.AssemblyInfoInputs.cache | 1 + .../Server Dashboard.assets.cache | Bin 0 -> 5562 bytes .../Server Dashboard.csproj.CopyComplete | 0 ...r Dashboard.csproj.CoreCompileInputs.cache | 1 + ...rver Dashboard.csproj.FileListAbsolute.txt | 27 + ...er Dashboard.csprojAssemblyReference.cache | Bin 0 -> 424 bytes .../Server Dashboard.designer.deps.json | 206 +++++++ ...rver Dashboard.designer.runtimeconfig.json | 17 + .../Debug/netcoreapp3.1/Server Dashboard.dll | Bin 0 -> 35328 bytes .../Server Dashboard.g.resources | Bin 0 -> 25049 bytes .../Server Dashboard.genruntimeconfig.cache | 1 + .../Debug/netcoreapp3.1/Server Dashboard.pdb | Bin 0 -> 15040 bytes .../Server Dashboard_MarkupCompile.cache | 20 + .../Server Dashboard_MarkupCompile.i.cache | 20 + .../Server Dashboard_MarkupCompile.lref | 4 + .../netcoreapp3.1/Views/MainWindow.g.i.cs | 76 +++ .../obj/Debug/netcoreapp3.1/apphost.exe | Bin 0 -> 174592 bytes .../Server Dashboard.csproj.nuget.dgspec.json | 75 +++ .../obj/Server Dashboard.csproj.nuget.g.props | 19 + .../Server Dashboard.csproj.nuget.g.targets | 6 + Server Dashboard/obj/project.assets.json | 527 ++++++++++++++++++ Server Dashboard/obj/project.nuget.cache | 18 + 61 files changed, 2025 insertions(+) create mode 100644 .vs/Server Dashboard/DesignTimeBuild/.dtbcache.v2 create mode 100644 .vs/Server Dashboard/v16/.suo create mode 100644 Server Dashboard.sln create mode 100644 Server Dashboard/App.xaml create mode 100644 Server Dashboard/App.xaml.cs create mode 100644 Server Dashboard/AssemblyInfo.cs create mode 100644 Server Dashboard/Assets/Images/userlogin.png create mode 100644 Server Dashboard/Assets/Images/userpasswd.png create mode 100644 Server Dashboard/DashboardModules/DashboardModule.cs create mode 100644 Server Dashboard/DashboardModules/ModuleItem.cs create mode 100644 Server Dashboard/Database/DatabaseHandler.cs create mode 100644 Server Dashboard/MainWindow.xaml create mode 100644 Server Dashboard/MainWindow.xaml.cs create mode 100644 Server Dashboard/Server Dashboard.csproj create mode 100644 Server Dashboard/Server Dashboard.csproj.user create mode 100644 Server Dashboard/ViewModels/BaseViewModel/BaseViewModel.cs create mode 100644 Server Dashboard/ViewModels/DashboardModuleViewModel.cs create mode 100644 Server Dashboard/ViewModels/MainViewModel.cs create mode 100644 Server Dashboard/ViewModels/RelayCommand/RelayCommand.cs create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/Server Dashboard.deps.json create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/Server Dashboard.dll create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/Server Dashboard.exe create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/Server Dashboard.pdb create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/Server Dashboard.runtimeconfig.dev.json create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/Server Dashboard.runtimeconfig.json create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/System.Data.SqlClient.dll create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/runtimes/win-arm64/native/sni.dll create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/runtimes/win-x64/native/sni.dll create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/runtimes/win-x86/native/sni.dll create mode 100644 Server Dashboard/bin/Debug/netcoreapp3.1/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/App.baml create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/App.g.cs create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/App.g.i.cs create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/MainWindow.baml create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/MainWindow.g.cs create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/MainWindow.g.i.cs create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.AssemblyInfo.cs create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.AssemblyInfoInputs.cache create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.assets.cache create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.csproj.CopyComplete create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.csproj.CoreCompileInputs.cache create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.csproj.FileListAbsolute.txt create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.csprojAssemblyReference.cache create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.designer.deps.json create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.designer.runtimeconfig.json create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.dll create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.g.resources create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.genruntimeconfig.cache create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard.pdb create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard_MarkupCompile.cache create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard_MarkupCompile.i.cache create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Server Dashboard_MarkupCompile.lref create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/Views/MainWindow.g.i.cs create mode 100644 Server Dashboard/obj/Debug/netcoreapp3.1/apphost.exe create mode 100644 Server Dashboard/obj/Server Dashboard.csproj.nuget.dgspec.json create mode 100644 Server Dashboard/obj/Server Dashboard.csproj.nuget.g.props create mode 100644 Server Dashboard/obj/Server Dashboard.csproj.nuget.g.targets create mode 100644 Server Dashboard/obj/project.assets.json create mode 100644 Server Dashboard/obj/project.nuget.cache diff --git a/.vs/Server Dashboard/DesignTimeBuild/.dtbcache.v2 b/.vs/Server Dashboard/DesignTimeBuild/.dtbcache.v2 new file mode 100644 index 0000000000000000000000000000000000000000..4ee9dd6c096e9dadd11b39126acc3858ceeb79e0 GIT binary patch literal 78556 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 V-UP^ZCcy#Z<}&0aA7sal{|Ci%ABX?| literal 0 HcmV?d00001 diff --git a/.vs/Server Dashboard/v16/.suo b/.vs/Server Dashboard/v16/.suo new file mode 100644 index 0000000000000000000000000000000000000000..3e9828e5be8777120732d9a6775d03ae0f921ca1 GIT binary patch literal 84992 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 Z=XQ~uMwdA>I;SJG=gWt#EEcEZ{{dmw + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Server Dashboard/App.xaml.cs b/Server Dashboard/App.xaml.cs new file mode 100644 index 0000000..87091a6 --- /dev/null +++ b/Server Dashboard/App.xaml.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Configuration; +using System.Data; +using System.Linq; +using System.Threading.Tasks; +using System.Windows; + +namespace Server_Dashboard { + /// + /// Interaction logic for App.xaml + /// + public partial class App : Application { + } +} diff --git a/Server Dashboard/AssemblyInfo.cs b/Server Dashboard/AssemblyInfo.cs new file mode 100644 index 0000000..8b5504e --- /dev/null +++ b/Server Dashboard/AssemblyInfo.cs @@ -0,0 +1,10 @@ +using System.Windows; + +[assembly: ThemeInfo( + ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located + //(used if a resource is not found in the page, + // or application resource dictionaries) + ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located + //(used if a resource is not found in the page, + // app, or any theme specific resource dictionaries) +)] diff --git a/Server Dashboard/Assets/Images/userlogin.png b/Server Dashboard/Assets/Images/userlogin.png new file mode 100644 index 0000000000000000000000000000000000000000..2fd549ed858a94bdf0e293125fa314175f043753 GIT binary patch literal 5822 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 literal 0 HcmV?d00001 diff --git a/Server Dashboard/Assets/Images/userpasswd.png b/Server Dashboard/Assets/Images/userpasswd.png new file mode 100644 index 0000000000000000000000000000000000000000..a117ad040ffed591f878d383148a8b03a30d7217 GIT binary patch literal 10587 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 Uuk%$S`X>~(nr=5KHljrQAFUA3tN;K2 literal 0 HcmV?d00001 diff --git a/Server Dashboard/DashboardModules/DashboardModule.cs b/Server Dashboard/DashboardModules/DashboardModule.cs new file mode 100644 index 0000000..351bde0 --- /dev/null +++ b/Server Dashboard/DashboardModules/DashboardModule.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Server_Dashboard { + class DashboardModule { + public string Name { get; set; } + public string Creator { get; set; } + public DateTime Uptime { get; set; } + public ModuleItem ModuleItem { get; set; } + public DashboardModule() { + ModuleItem = new ModuleItem(); + } + } +} diff --git a/Server Dashboard/DashboardModules/ModuleItem.cs b/Server Dashboard/DashboardModules/ModuleItem.cs new file mode 100644 index 0000000..a19eacf --- /dev/null +++ b/Server Dashboard/DashboardModules/ModuleItem.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Server_Dashboard { + class ModuleItem { + public string Name { get; set; } + public double CpuTemp { get; set; } + public double GpuTemp { get; set; } + public DateTime Uptime { get; set; } + } +} diff --git a/Server Dashboard/Database/DatabaseHandler.cs b/Server Dashboard/Database/DatabaseHandler.cs new file mode 100644 index 0000000..1b2bdf0 --- /dev/null +++ b/Server Dashboard/Database/DatabaseHandler.cs @@ -0,0 +1,28 @@ +using Microsoft.Win32; +using System; +using System.Collections.Generic; +using System.Configuration; +using System.Data.SqlClient; +using System.Reflection; + +namespace Server_Dashboard { + class DatabaseHandler { + #region Private methods + /// + /// Opens a database connection + /// + /// Callback type SqlConnection + /// + private SqlConnection ConnectToDatabase(Action callback) { + using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Co2AuswertungDB"].ConnectionString)) { + try { + con.Open(); + callback(con); + con.Close(); + } catch { return null; } + } + return null; + } + #endregion + } +} diff --git a/Server Dashboard/MainWindow.xaml b/Server Dashboard/MainWindow.xaml new file mode 100644 index 0000000..072d248 --- /dev/null +++ b/Server Dashboard/MainWindow.xaml @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +