From 2f4ac2f00d045ebc16418c615a280fe024ae2061 Mon Sep 17 00:00:00 2001 From: WeeXnes Date: Thu, 8 Jun 2023 21:40:04 +0200 Subject: [PATCH] added Password Generator --- Release_Tool/Program.cs | 134 ------------------ Release_Tool/Properties/AssemblyInfo.cs | 35 ----- Release_Tool/Release_Tool.csproj | 60 -------- Release_Tool/file.cs | 13 -- Release_Tool/wicns.ico | Bin 315451 -> 0 bytes WeeXnes.sln | 6 - WeeXnes/App.xaml.cs | 2 +- WeeXnes/Core/Global.cs | 2 +- WeeXnes/MainWindow.xaml | 17 ++- .../PasswordGenerator/PasswordGenView.xaml | 22 +++ .../PasswordGenerator/PasswordGenView.xaml.cs | 67 +++++++++ .../PasswordGenerator/SavePasswordView.xaml | 20 +++ .../SavePasswordView.xaml.cs | 33 +++++ .../SaveToKeyManagerView.xaml | 17 +++ .../SaveToKeyManagerView.xaml.cs | 35 +++++ WeeXnes/WeeXnes.csproj | 14 +- 16 files changed, 221 insertions(+), 256 deletions(-) delete mode 100644 Release_Tool/Program.cs delete mode 100644 Release_Tool/Properties/AssemblyInfo.cs delete mode 100644 Release_Tool/Release_Tool.csproj delete mode 100644 Release_Tool/file.cs delete mode 100644 Release_Tool/wicns.ico create mode 100644 WeeXnes/Views/PasswordGenerator/PasswordGenView.xaml create mode 100644 WeeXnes/Views/PasswordGenerator/PasswordGenView.xaml.cs create mode 100644 WeeXnes/Views/PasswordGenerator/SavePasswordView.xaml create mode 100644 WeeXnes/Views/PasswordGenerator/SavePasswordView.xaml.cs create mode 100644 WeeXnes/Views/PasswordGenerator/SaveToKeyManagerView.xaml create mode 100644 WeeXnes/Views/PasswordGenerator/SaveToKeyManagerView.xaml.cs diff --git a/Release_Tool/Program.cs b/Release_Tool/Program.cs deleted file mode 100644 index e4c4e70..0000000 --- a/Release_Tool/Program.cs +++ /dev/null @@ -1,134 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.IO.Compression; - -namespace Release_Tool -{ - internal class Program - { - static List files = new List(); - public static string globalTimestamp = null; - public static string releaseFolder = "debug_release"; - public static string releaseFileName = "currentRelease"; - public static string fileending = ".zip"; - public static string destFolder = null; - public static bool success = true; - public static bool Contains(string source, string toCheck, StringComparison comp) - { - return source?.IndexOf(toCheck, comp) >= 0; - } - public static void Main(string[] args) - { - var lines = File.ReadAllLines(".\\WeeXnes\\Core\\Globals.cs"); - string versionLine = ""; - foreach (var line in lines) - { - if (Contains(line, "public static string version", StringComparison.OrdinalIgnoreCase)) - { - versionLine = line; - } - } - Console.WriteLine(versionLine); - string versionnr = - versionLine.Substring(versionLine.IndexOf("\""), versionLine.Length - versionLine.IndexOf("\"")); - versionnr = versionnr.Substring(1, versionnr.Length - 1); - versionnr = versionnr.Substring(0, versionnr.IndexOf("\"")); - string VersionNumber = versionnr; - releaseFileName = releaseFileName + "_" + versionnr + fileending; - Console.WriteLine("Packing " + releaseFileName); - Console.Title = "WeeXnes Automated Release Tool"; - SetTimestamp(); - SetPaths(); - Console.WriteLine("Folder -> " + globalTimestamp); - CheckDirectories(); - GetFiles(); - PackFiles(); - if (!success) - { - Console.WriteLine("Something went wrong"); - Console.ReadLine(); - } - else - { - PackIntoZip(); - Console.WriteLine("Build succeeded | " + globalTimestamp); - Console.ReadLine(); - } - } - - private static void PackIntoZip() - { - try - { - if(File.Exists(Path.Combine(releaseFolder, releaseFileName))) - { - File.Delete(Path.Combine(releaseFolder, "currentRelease.zip")); - ZipFile.CreateFromDirectory(destFolder, Path.Combine(releaseFolder, releaseFileName)); - } - else - { - ZipFile.CreateFromDirectory(destFolder, Path.Combine(releaseFolder, releaseFileName)); - } - - }catch (Exception ex) - { - Console.WriteLine(ex); - Console.ReadLine(); - } - } - - private static void SetPaths() - { - destFolder = Path.Combine(releaseFolder, globalTimestamp); - } - - private static void CheckDirectories() - { - if (!Directory.Exists(releaseFolder)) - { - Directory.CreateDirectory(releaseFolder); - } - if(!Directory.Exists(destFolder)) - { - Directory.CreateDirectory(destFolder); - } - } - - private static void SetTimestamp() - { - string date = DateTime.Now.ToString("dd.MM.yyyy"); - string time = DateTime.Now.ToString("HH.mm.ss"); - string timestamp = date + " - " + time; - globalTimestamp = timestamp; - } - - private static void PackFiles() - { - foreach(file fileobj in files) - { - try - { - File.Copy(fileobj.path, Path.Combine(destFolder, fileobj.newfilename)); - Console.WriteLine("Copied " + fileobj.path); - } - catch (Exception ex) - { - Console.WriteLine("Coudnt find " + fileobj.path + "| ->" + ex.GetType()); - success = false; - } - } - } - - private static void GetFiles() - { - files.Add(new file(@"WeeXnes\bin\Release\WeeXnes.exe", "WeeXnes.exe")); - files.Add(new file(@"WeeXnes_UAC\bin\Release\WeeXnes_UAC.exe", "WeeXnes_UAC.exe")); - files.Add(new file(@"WeeXnes\bin\Release\DiscordRPC.dll", "DiscordRPC.dll")); - files.Add(new file(@"WeeXnes\bin\Release\Newtonsoft.Json.dll", "Newtonsoft.Json.dll")); - files.Add(new file(@"Autostart\bin\Release\Autostart.exe", "Autostart.exe")); - files.Add(new file(@"Update\bin\Release\Update.exe", "Update.exe")); - - } - } -} \ No newline at end of file diff --git a/Release_Tool/Properties/AssemblyInfo.cs b/Release_Tool/Properties/AssemblyInfo.cs deleted file mode 100644 index be20910..0000000 --- a/Release_Tool/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System.Reflection; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Release_Tool")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Release_Tool")] -[assembly: AssemblyCopyright("Copyright © 2022")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("4C09AD12-B48E-40ED-B418-CF868889E317")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] \ No newline at end of file diff --git a/Release_Tool/Release_Tool.csproj b/Release_Tool/Release_Tool.csproj deleted file mode 100644 index 1bcae78..0000000 --- a/Release_Tool/Release_Tool.csproj +++ /dev/null @@ -1,60 +0,0 @@ - - - - - Debug - AnyCPU - {4C09AD12-B48E-40ED-B418-CF868889E317} - Exe - Properties - Release_Tool - Release_Tool - v4.8 - 512 - true - wicns.ico - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - - - - - - - diff --git a/Release_Tool/file.cs b/Release_Tool/file.cs deleted file mode 100644 index 6760032..0000000 --- a/Release_Tool/file.cs +++ /dev/null @@ -1,13 +0,0 @@ -namespace Release_Tool -{ - public class file - { - public string path { get; set; } - public string newfilename { get; set; } - public file(string _path, string _newfilename) - { - this.path = _path; - this.newfilename = _newfilename; - } - } -} \ No newline at end of file diff --git a/Release_Tool/wicns.ico b/Release_Tool/wicns.ico deleted file mode 100644 index b575d2d2c0739142f71f547b86b66394e6d4f88d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 315451 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 a70r=gMxSM#F0>vRc=||Fxm?L2 - + + + + + + + diff --git a/WeeXnes/Views/PasswordGenerator/PasswordGenView.xaml.cs b/WeeXnes/Views/PasswordGenerator/PasswordGenView.xaml.cs new file mode 100644 index 0000000..4e248ca --- /dev/null +++ b/WeeXnes/Views/PasswordGenerator/PasswordGenView.xaml.cs @@ -0,0 +1,67 @@ +using System; +using System.Windows; +using System.Windows.Controls; +using WeeXnes.Core; + +namespace WeeXnes.Views.PasswordGenerator +{ + public partial class PasswordGenView : Page + { + public static Random random = new Random(); + private class PasswordBuilderStrings + { + public static string alphabetical_lc = "abcdefghijklmnopqrstuvwxyz"; + public static string alphabetical_caps = "ABCDEFGHIJKLMNOPQRSTUVQXYZ"; + public static string numerical = "1234567890"; + public static string special = "!#$%&()*+,-<>=?"; + } + public PasswordGenView() + { + InitializeComponent(); + } + + private void GeneratePasword() + { + if(toggle_alpha.IsChecked == false) + if(toggle_numeric.IsChecked == false) + if(toggle_special.IsChecked == false) + return; + + + string CustomPasswordBuilderString = ""; + + if (toggle_alpha.IsChecked == true) + CustomPasswordBuilderString += PasswordBuilderStrings.alphabetical_lc; + + if (toggle_caps.IsChecked == true) + CustomPasswordBuilderString += PasswordBuilderStrings.alphabetical_caps; + + if (toggle_numeric.IsChecked == true) + CustomPasswordBuilderString += PasswordBuilderStrings.numerical; + + if (toggle_special.IsChecked == true) + CustomPasswordBuilderString += PasswordBuilderStrings.special; + + + CustomConsole.WriteLine("Generating Password from: " + CustomPasswordBuilderString); + //MessageBox.Show(CustomPasswordBuilderString); + + string generatedPassword = ""; + + + for (int i = 0; i < numbox_pwCount.Value; i++) + { + int randomNr = random.Next(0, CustomPasswordBuilderString.Length); + generatedPassword = generatedPassword + CustomPasswordBuilderString[randomNr]; + } + + SavePasswordView.GeneratedPassword = generatedPassword; + NavigationService.Navigate(new Uri("/Views/PasswordGenerator/SavePasswordView.xaml",UriKind.Relative)); + } + + private void ButtonBase_OnClick(object sender, RoutedEventArgs e) + { + GeneratePasword(); + } + } +} \ No newline at end of file diff --git a/WeeXnes/Views/PasswordGenerator/SavePasswordView.xaml b/WeeXnes/Views/PasswordGenerator/SavePasswordView.xaml new file mode 100644 index 0000000..0301ebe --- /dev/null +++ b/WeeXnes/Views/PasswordGenerator/SavePasswordView.xaml @@ -0,0 +1,20 @@ + + + + + + diff --git a/WeeXnes/Views/PasswordGenerator/SavePasswordView.xaml.cs b/WeeXnes/Views/PasswordGenerator/SavePasswordView.xaml.cs new file mode 100644 index 0000000..4b5ba21 --- /dev/null +++ b/WeeXnes/Views/PasswordGenerator/SavePasswordView.xaml.cs @@ -0,0 +1,33 @@ +using System; +using System.Windows; +using System.Windows.Controls; + +namespace WeeXnes.Views.PasswordGenerator +{ + public partial class SavePasswordView : Page + { + public static string GeneratedPassword = ""; + public SavePasswordView() + { + InitializeComponent(); + } + + private void SavePasswordView_OnLoaded(object sender, RoutedEventArgs e) + { + displayPassword.Content = GeneratedPassword; + } + + private void CloseDialog(object sender, RoutedEventArgs e) + { + NavigationService.Navigate(new Uri("/Views/PasswordGenerator/PasswordGenView.xaml",UriKind.Relative)); + } + private void CopyToClipboard(object sender, RoutedEventArgs e) + { + Clipboard.SetText(GeneratedPassword); + } + private void SaveToKeyManager(object sender, RoutedEventArgs e) + { + NavigationService.Navigate(new Uri("/Views/PasswordGenerator/SaveToKeyManagerView.xaml",UriKind.Relative)); + } + } +} \ No newline at end of file diff --git a/WeeXnes/Views/PasswordGenerator/SaveToKeyManagerView.xaml b/WeeXnes/Views/PasswordGenerator/SaveToKeyManagerView.xaml new file mode 100644 index 0000000..c69f971 --- /dev/null +++ b/WeeXnes/Views/PasswordGenerator/SaveToKeyManagerView.xaml @@ -0,0 +1,17 @@ + + + + + + diff --git a/WeeXnes/Views/PasswordGenerator/SaveToKeyManagerView.xaml.cs b/WeeXnes/Views/PasswordGenerator/SaveToKeyManagerView.xaml.cs new file mode 100644 index 0000000..c107b3c --- /dev/null +++ b/WeeXnes/Views/PasswordGenerator/SaveToKeyManagerView.xaml.cs @@ -0,0 +1,35 @@ +using System; +using System.Windows; +using System.Windows.Controls; +using WeeXnes.Core; +using WeeXnes.Views.KeyManager; + +namespace WeeXnes.Views.PasswordGenerator +{ + public partial class SaveToKeyManagerView : Page + { + public SaveToKeyManagerView() + { + InitializeComponent(); + } + private void SavePassword(object sender, RoutedEventArgs e) + { + try + { + KeyItem newKey = new KeyItem( + tb_keyname.Text, + SavePasswordView.GeneratedPassword + ); + WXFile wxFile = new WXFile( + Global.AppDataPathKEY.Value + "\\" + newKey.Filename); + WXFile.Methods.WriteFile(newKey, wxFile); + KeyManagerView.Data.KeyItemsList.Add(newKey); + } + catch (Exception ex) + { + Console.WriteLine(ex.Message); + } + NavigationService.Navigate(new Uri("/Views/PasswordGenerator/PasswordGenView.xaml",UriKind.Relative)); + } + } +} \ No newline at end of file diff --git a/WeeXnes/WeeXnes.csproj b/WeeXnes/WeeXnes.csproj index e719ef6..7fc099b 100644 --- a/WeeXnes/WeeXnes.csproj +++ b/WeeXnes/WeeXnes.csproj @@ -4,7 +4,7 @@ Debug AnyCPU - 4.3.5 + 4.4.0 {4B33CEE7-C74D-43B9-B99A-8B273D5195BC} WinExe WeeXnes @@ -94,6 +94,15 @@ KeyManagerView.xaml + + PasswordGenView.xaml + + + SavePasswordView.xaml + + + SaveToKeyManagerView.xaml + ChangePathsView.xaml @@ -129,6 +138,9 @@ + + +