From eb27dfd6bf05c9c118fded3513d9681a8b53a4c9 Mon Sep 17 00:00:00 2001 From: Derek Holloway Date: Tue, 5 Aug 2025 20:45:47 -0700 Subject: [PATCH] Add Email Token to company --- database/mistox.sql | 1 + src/Server/Controllers/CompanyController.cs | 1 + src/Server/Entities/Company.cs | 1 + src/Server/Services/DatabaseService/Company.cs | 8 ++++++-- 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/database/mistox.sql b/database/mistox.sql index 72c979b..bcf7be0 100755 --- a/database/mistox.sql +++ b/database/mistox.sql @@ -129,6 +129,7 @@ CREATE TABLE IF NOT EXISTS `Company` ( `Name` varchar(100) DEFAULT NULL, `Email` varchar(255) DEFAULT NULL, `EmailVerified` boolean DEFAULT 0, + `EmailToken` char(36) DEFAULT NULL, `WebsiteURL` varchar(255) DEFAULT NULL, `Logo` mediumblob DEFAULT NULL, `JobsClosedSuccessful` int DEFAULT 0, diff --git a/src/Server/Controllers/CompanyController.cs b/src/Server/Controllers/CompanyController.cs index c546bf8..695b90a 100644 --- a/src/Server/Controllers/CompanyController.cs +++ b/src/Server/Controllers/CompanyController.cs @@ -15,6 +15,7 @@ namespace BoredCareers.Controllers { if (isLoggedIn()) { Company? company = await _databaseService.GetCompany(CompanyID); if (company != null) { + company.EmailToken = ""; return Ok(company); } return NotFound("Company doesn't exist"); diff --git a/src/Server/Entities/Company.cs b/src/Server/Entities/Company.cs index c6fbcb8..f30d2e1 100644 --- a/src/Server/Entities/Company.cs +++ b/src/Server/Entities/Company.cs @@ -5,6 +5,7 @@ namespace BoredCareers.Entities { public string Name { get; set; } = ""; public string Email { get; set; } = ""; public bool EmailVerified { get; set; } = false; + public string EmailToken { get; set; } = ""; public string WebsiteURL { get; set; } = ""; public string Logo { get; set; } = ""; public int JobsClosedSuccessful { get; set; } diff --git a/src/Server/Services/DatabaseService/Company.cs b/src/Server/Services/DatabaseService/Company.cs index 5aaad81..5e6d334 100644 --- a/src/Server/Services/DatabaseService/Company.cs +++ b/src/Server/Services/DatabaseService/Company.cs @@ -26,6 +26,7 @@ namespace BoredCareers.Services.DatabaseService { string _name = reader.GetString("Name"); string _email = reader.GetString("Email"); bool _emailVerified = reader.GetBoolean("EmailVerified"); + string _emailtoken = reader.GetString("EmailToken"); string _websiteurl = reader.GetString("WebsiteURL"); string _logo = Encoding.UTF8.GetString((byte[])reader["Logo"]); int _jobsclosedsuccessful = reader.GetInt32("JobsClosedSuccessful"); @@ -42,6 +43,7 @@ namespace BoredCareers.Services.DatabaseService { Name = _name, Email = _email, EmailVerified = _emailVerified, + EmailToken = _emailtoken, WebsiteURL = _websiteurl, Logo = _logo, JobsAutoClosed = _jobsautoclosed, @@ -64,13 +66,14 @@ namespace BoredCareers.Services.DatabaseService { await connection.OpenAsync(); string command = @" INSERT INTO Company - (ID,Name,Email,EmailVerified,WebsiteURL,Logo,JobsClosedSuccessful,JobsAutoClosed,Phone,PostalCode,Country,StateOrRegion,City,Description) + (ID,Name,Email,EmailVerified,EmailToken,WebsiteURL,Logo,JobsClosedSuccessful,JobsAutoClosed,Phone,PostalCode,Country,StateOrRegion,City,Description) VALUES - (@ID,@Name,@Email,@EmailVerified,@WebsiteURL,@Logo,@JobsClosedSuccessful,@JobsAutoClosed,@Phone,@PostalCode,@Country,@StateOrRegion,@City,@Description) + (@ID,@Name,@Email,@EmailVerified,@EmailToken,@WebsiteURL,@Logo,@JobsClosedSuccessful,@JobsAutoClosed,@Phone,@PostalCode,@Country,@StateOrRegion,@City,@Description) ON DUPLICATE KEY UPDATE Name = @Name, Email = @Email, EmailVerified = @EmailVerified, + EmailToken = @EmailToken, WebsiteURL = @WebsiteURL, Logo = @Logo, JobsClosedSuccessful = @JobsClosedSuccessful, @@ -90,6 +93,7 @@ namespace BoredCareers.Services.DatabaseService { cmd.Parameters.AddWithValue("@Name", company.Name); cmd.Parameters.AddWithValue("@Email", company.Email); cmd.Parameters.AddWithValue("@EmailVerified", company.EmailVerified); + cmd.Parameters.AddWithValue("@EmailToken", company.EmailToken); cmd.Parameters.AddWithValue("@WebsiteURL", company.WebsiteURL); cmd.Parameters.AddWithValue("@Logo", Encoding.UTF8.GetBytes(company.Logo)); cmd.Parameters.AddWithValue("@JobsClosedSuccessful", company.JobsClosedSuccessful);