diff --git a/AdministrationForm.Designer.cs b/AdministrationForm.Designer.cs
new file mode 100644
index 0000000..0573f14
--- /dev/null
+++ b/AdministrationForm.Designer.cs
@@ -0,0 +1,139 @@
+namespace AwesomeEmailExtractor
+{
+ partial class AdministrationForm
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.mainTabControl = new System.Windows.Forms.TabControl();
+ this.mainSettingsTabPage = new System.Windows.Forms.TabPage();
+ this.label1 = new System.Windows.Forms.Label();
+ this.browseButton = new System.Windows.Forms.Button();
+ this.pathToJournalTextBox = new System.Windows.Forms.TextBox();
+ this.usersTabPage = new System.Windows.Forms.TabPage();
+ this.journalTabPage = new System.Windows.Forms.TabPage();
+ this.mainTabControl.SuspendLayout();
+ this.mainSettingsTabPage.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // mainTabControl
+ //
+ this.mainTabControl.Controls.Add(this.mainSettingsTabPage);
+ this.mainTabControl.Controls.Add(this.usersTabPage);
+ this.mainTabControl.Controls.Add(this.journalTabPage);
+ this.mainTabControl.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.mainTabControl.Location = new System.Drawing.Point(0, 0);
+ this.mainTabControl.Name = "mainTabControl";
+ this.mainTabControl.SelectedIndex = 0;
+ this.mainTabControl.Size = new System.Drawing.Size(800, 450);
+ this.mainTabControl.TabIndex = 0;
+ //
+ // mainSettingsTabPage
+ //
+ this.mainSettingsTabPage.Controls.Add(this.label1);
+ this.mainSettingsTabPage.Controls.Add(this.browseButton);
+ this.mainSettingsTabPage.Controls.Add(this.pathToJournalTextBox);
+ this.mainSettingsTabPage.Location = new System.Drawing.Point(4, 22);
+ this.mainSettingsTabPage.Name = "mainSettingsTabPage";
+ this.mainSettingsTabPage.Padding = new System.Windows.Forms.Padding(3);
+ this.mainSettingsTabPage.Size = new System.Drawing.Size(792, 424);
+ this.mainSettingsTabPage.TabIndex = 0;
+ this.mainSettingsTabPage.Text = "Общие настройки";
+ this.mainSettingsTabPage.UseVisualStyleBackColor = true;
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(8, 12);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(140, 13);
+ this.label1.TabIndex = 2;
+ this.label1.Text = "Путь к файлу с журналом:";
+ //
+ // browseButton
+ //
+ this.browseButton.Location = new System.Drawing.Point(678, 26);
+ this.browseButton.Name = "browseButton";
+ this.browseButton.Size = new System.Drawing.Size(106, 23);
+ this.browseButton.TabIndex = 1;
+ this.browseButton.Text = "Обзор";
+ this.browseButton.UseVisualStyleBackColor = true;
+ this.browseButton.Click += new System.EventHandler(this.browseButton_Click);
+ //
+ // pathToJournalTextBox
+ //
+ this.pathToJournalTextBox.Enabled = false;
+ this.pathToJournalTextBox.Location = new System.Drawing.Point(8, 28);
+ this.pathToJournalTextBox.Name = "pathToJournalTextBox";
+ this.pathToJournalTextBox.Size = new System.Drawing.Size(664, 20);
+ this.pathToJournalTextBox.TabIndex = 0;
+ //
+ // usersTabPage
+ //
+ this.usersTabPage.Location = new System.Drawing.Point(4, 22);
+ this.usersTabPage.Name = "usersTabPage";
+ this.usersTabPage.Padding = new System.Windows.Forms.Padding(3);
+ this.usersTabPage.Size = new System.Drawing.Size(792, 424);
+ this.usersTabPage.TabIndex = 1;
+ this.usersTabPage.Text = "Пользователи";
+ this.usersTabPage.UseVisualStyleBackColor = true;
+ //
+ // journalTabPage
+ //
+ this.journalTabPage.Location = new System.Drawing.Point(4, 22);
+ this.journalTabPage.Name = "journalTabPage";
+ this.journalTabPage.Size = new System.Drawing.Size(792, 424);
+ this.journalTabPage.TabIndex = 2;
+ this.journalTabPage.Text = "Журнал";
+ this.journalTabPage.UseVisualStyleBackColor = true;
+ //
+ // AdministrationForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(800, 450);
+ this.Controls.Add(this.mainTabControl);
+ this.Name = "AdministrationForm";
+ this.Text = "Администрирование";
+ this.Load += new System.EventHandler(this.AdministrationForm_Load);
+ this.mainTabControl.ResumeLayout(false);
+ this.mainSettingsTabPage.ResumeLayout(false);
+ this.mainSettingsTabPage.PerformLayout();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.TabControl mainTabControl;
+ private System.Windows.Forms.TabPage mainSettingsTabPage;
+ private System.Windows.Forms.TabPage usersTabPage;
+ private System.Windows.Forms.TabPage journalTabPage;
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.Button browseButton;
+ private System.Windows.Forms.TextBox pathToJournalTextBox;
+ }
+}
\ No newline at end of file
diff --git a/AdministrationForm.cs b/AdministrationForm.cs
new file mode 100644
index 0000000..b08089a
--- /dev/null
+++ b/AdministrationForm.cs
@@ -0,0 +1,53 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using Microsoft.Data.Sqlite;
+
+namespace AwesomeEmailExtractor
+{
+ public partial class AdministrationForm : Form
+ {
+ public AdministrationForm()
+ {
+ InitializeComponent();
+ }
+
+ private void AdministrationForm_Load(object sender, EventArgs e)
+ {
+
+ SqliteCommand command = new SqliteCommand();
+ command.Connection = Globals.db;
+ command.CommandText = "SELECT * FROM app_settings";
+
+ var reader = command.ExecuteReader();
+
+ var Row = reader.Read();
+
+ pathToJournalTextBox.Text = reader.GetString(0);
+ }
+
+ private void browseButton_Click(object sender, EventArgs e)
+ {
+ FileDialog dialog = new SaveFileDialog();
+ dialog.Filter = "SQLite база с журналом (*.db)|*.db";
+
+ if (dialog.ShowDialog() == DialogResult.OK)
+ {
+ pathToJournalTextBox.Text = dialog.FileName;
+
+ SqliteCommand command = new SqliteCommand();
+ command.Connection = Globals.db;
+ command.CommandText = "UPDATE app_settings SET logs_db_path = @path";
+ command.Parameters.AddWithValue("@path", pathToJournalTextBox.Text);
+ command.ExecuteNonQuery();
+ }
+
+ }
+ }
+}
diff --git a/AdministrationForm.resx b/AdministrationForm.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/AdministrationForm.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/AwesomeEmailExtractor.csproj b/AwesomeEmailExtractor.csproj
index 35b5fad..488936e 100644
--- a/AwesomeEmailExtractor.csproj
+++ b/AwesomeEmailExtractor.csproj
@@ -76,6 +76,12 @@
+
+ Form
+
+
+ AdministrationForm.cs
+
Form
@@ -113,6 +119,9 @@
SettingsForm.cs
+
+ AdministrationForm.cs
+
AuthorizationForm.cs
diff --git a/MainForm.Designer.cs b/MainForm.Designer.cs
index 75c2d4b..19645ee 100644
--- a/MainForm.Designer.cs
+++ b/MainForm.Designer.cs
@@ -37,11 +37,11 @@
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.аккаунтToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.journalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.administrationToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.helpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.journalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resultStatusStrip.SuspendLayout();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
@@ -142,6 +142,13 @@
this.аккаунтToolStripMenuItem.Size = new System.Drawing.Size(63, 20);
this.аккаунтToolStripMenuItem.Text = "Аккаунт";
//
+ // journalToolStripMenuItem
+ //
+ this.journalToolStripMenuItem.Name = "journalToolStripMenuItem";
+ this.journalToolStripMenuItem.Size = new System.Drawing.Size(189, 22);
+ this.journalToolStripMenuItem.Text = "Журнал";
+ this.journalToolStripMenuItem.Click += new System.EventHandler(this.journalToolStripMenuItem_Click);
+ //
// settingsToolStripMenuItem
//
this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
@@ -154,6 +161,7 @@
this.administrationToolStripMenuItem.Name = "administrationToolStripMenuItem";
this.administrationToolStripMenuItem.Size = new System.Drawing.Size(189, 22);
this.administrationToolStripMenuItem.Text = "Администрирование";
+ this.administrationToolStripMenuItem.Click += new System.EventHandler(this.administrationToolStripMenuItem_Click);
//
// exitToolStripMenuItem
//
@@ -168,13 +176,6 @@
this.helpToolStripMenuItem.Size = new System.Drawing.Size(65, 20);
this.helpToolStripMenuItem.Text = "Справка";
//
- // journalToolStripMenuItem
- //
- this.journalToolStripMenuItem.Name = "journalToolStripMenuItem";
- this.journalToolStripMenuItem.Size = new System.Drawing.Size(189, 22);
- this.journalToolStripMenuItem.Text = "Журнал";
- this.journalToolStripMenuItem.Click += new System.EventHandler(this.journalToolStripMenuItem_Click);
- //
// MainForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
diff --git a/MainForm.cs b/MainForm.cs
index 4a6e3e8..acb76cb 100644
--- a/MainForm.cs
+++ b/MainForm.cs
@@ -74,5 +74,11 @@ namespace AwesomeEmailExtractor
JournalForm journalForm = FormManager.Current.CreateForm();
journalForm.ShowDialog(this);
}
+
+ private void administrationToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ AdministrationForm administrationForm = FormManager.Current.CreateForm();
+ administrationForm.ShowDialog(this);
+ }
}
}