-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathForm1.cs
171 lines (151 loc) · 6.47 KB
/
Form1.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
using Microsoft.VisualBasic.FileIO;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Group_11___COSC_31112
{
public partial class Log : Form
{
public Log()
{
InitializeComponent();
}
private Dictionary<string, string> userCredentials;
private void Log_Load(object sender, EventArgs e)
{
string csvFilePath = @"Resources\Login_Details.csv";
// Check if the CSV file exists
if (File.Exists(csvFilePath))
{
userCredentials = new Dictionary<string, string>();
using (TextFieldParser parser = new TextFieldParser(csvFilePath))
{
parser.TextFieldType = FieldType.Delimited;
parser.SetDelimiters(",");
while (!parser.EndOfData)
{
string[] fields = parser.ReadFields();
if (fields.Length >= 2)
{
string username = fields[0];
string password = fields[1];
userCredentials[username] = password;
}
}
}
}
else
{
// Handle the case where the CSV file doesn't exist
MessageBox.Show("CSV file not found.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
public int flag;
private void Logbtn_Click(object sender, EventArgs e)
{
string enteredUsername = usernameTxt.Text;
string enteredPassword = passwordTxt.Text;
try
{
// Check if the entered username exists in the userCredentials dictionary
if (userCredentials.ContainsKey(enteredUsername) != null)
{
// Username exists, now check the password
if (userCredentials[enteredUsername] == enteredPassword)
{
// Successful login
MessageBox.Show("Login successful!", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
flag = 1;
Home form2 = new Home();
form2.Show();
usernameTxt.Clear();
passwordTxt.Clear();
}
else
{
// Password is incorrect
MessageBox.Show("Password is incorrect.", "Error", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
// Clear the password textbox
passwordTxt.Clear();
}
}
else
{
// Both username and password are incorrect
MessageBox.Show("Incorrect Login Credentials.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
// Clear both username and password textboxes
usernameTxt.Clear();
passwordTxt.Clear();
}
this.Hide();
}
catch(Exception ex)
{
MessageBox.Show("Incorrect Login Credentials.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
usernameTxt.Clear();
passwordTxt.Clear();
}
}
private void Signbtn_Click(object sender, EventArgs e)
{
string enteredUsername = usernameTxt.Text;
string enteredPassword = passwordTxt.Text;
try
{
// Check if the entered username exists in the userCredentials dictionary
if (userCredentials.ContainsKey(enteredUsername))
{
// Username exists, show a message about existing account
MessageBox.Show($"Username '{enteredUsername}' is already registered. Enter the correct password.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
// Clear the password textbox
passwordTxt.Clear();
}
else
{
if (AcceptBx.Checked)
{
// Username doesn't exist, add it to the dictionary and CSV file
userCredentials[enteredUsername] = enteredPassword;
// Save the updated userCredentials dictionary to the CSV file
SaveUserCredentialsToCSV();
// Show a message about successful sign-up
MessageBox.Show($"Account for '{enteredUsername}' is created. You are now logged in as '{enteredUsername}'.", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MessageBox.Show("Please accept the Terms and Conditions", "Terms and Conditions", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
}
}
}catch(Exception ex)
{
MessageBox.Show("Error Occured :"+ex.Message.ToString(), "Error", MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
private void SaveUserCredentialsToCSV()
{
string csvFilePath = @"Resources\Login_Details.csv";
try
{
// Create or overwrite the CSV file with the updated userCredentials
using (StreamWriter sw = new StreamWriter(csvFilePath, false))
{
foreach (var entry in userCredentials)
{
sw.WriteLine($"{entry.Key},{entry.Value}");
}
}
}catch(Exception ex)
{
MessageBox.Show("Error Occured :" + ex.Message.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
}