Smaller fixes
This commit is contained in:
parent
f6bc09c661
commit
7b5b279e10
|
|
@ -67,10 +67,10 @@ public static class TiamConstClient
|
||||||
};
|
};
|
||||||
|
|
||||||
#if RELEASE
|
#if RELEASE
|
||||||
public static string SystemEmailAddress = "system@touriam.com";
|
public static string SystemEmailAddress = "test@touriam.com";
|
||||||
public static LogLevel DefaultLogLevelClient = LogLevel.Debug;
|
public static LogLevel DefaultLogLevelClient = LogLevel.Debug;
|
||||||
#else
|
#else
|
||||||
public static string SystemEmailAddress = "system@anataworld.com";
|
public static string SystemEmailAddress = "test@touriam.com";
|
||||||
public static LogLevel DefaultLogLevelClient = LogLevel.Detail;
|
public static LogLevel DefaultLogLevelClient = LogLevel.Detail;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ using AyCode.Core.Extensions;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
using TIAM.Entities.ServiceProviders;
|
using TIAM.Entities.ServiceProviders;
|
||||||
using TIAM.Entities.Addresses;
|
using TIAM.Entities.Addresses;
|
||||||
using DevExpress.Pdf.Native.BouncyCastle.Asn1.Ocsp;
|
//using DevExpress.Pdf.Native.BouncyCastle.Asn1.Ocsp;
|
||||||
|
|
||||||
namespace TIAM.Database.Test
|
namespace TIAM.Database.Test
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -23,10 +23,10 @@
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.10" />
|
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.10" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.10" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.11" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.10" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.11" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.10" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.11" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.10" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.11" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.1" />
|
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.1" />
|
||||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,7 @@ using AyCode.Interfaces.Entities;
|
||||||
using TIAM.Models;
|
using TIAM.Models;
|
||||||
using TIAM.Models.Dtos.Users;
|
using TIAM.Models.Dtos.Users;
|
||||||
using TIAM.Models.PageViewModels;
|
using TIAM.Models.PageViewModels;
|
||||||
|
using EmailMessage = TIAM.Entities.Emails.EmailMessage;
|
||||||
|
|
||||||
namespace TIAM.Database.DataLayers.Admins
|
namespace TIAM.Database.DataLayers.Admins
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ using TIAM.Entities.ServiceProviders;
|
||||||
using TIAM.Entities.Users;
|
using TIAM.Entities.Users;
|
||||||
using TIAM.Models;
|
using TIAM.Models;
|
||||||
using TIAM.Models.Dtos.Users;
|
using TIAM.Models.Dtos.Users;
|
||||||
|
using EmailMessage = TIAM.Entities.Emails.EmailMessage;
|
||||||
|
|
||||||
namespace TIAM.Database.DataLayers.Users
|
namespace TIAM.Database.DataLayers.Users
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -7,11 +7,11 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="DevExpress.Data" Version="24.1.3" />
|
<PackageReference Include="DevExpress.Data" Version="24.2.3" />
|
||||||
<PackageReference Include="MessagePack.Annotations" Version="2.5.187" />
|
<PackageReference Include="MessagePack.Annotations" Version="2.5.187" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.10" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.11" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.10" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.11" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.10" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.11" />
|
||||||
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
|
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,68 @@
|
||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="DevExpress.Data" Version="24.2.3" />
|
||||||
|
<PackageReference Include="MessagePack.Annotations" Version="2.5.187" />
|
||||||
|
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.10" />
|
||||||
|
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.10" />
|
||||||
|
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.10" />
|
||||||
|
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<Folder Include="DataLayers\DTOs\" />
|
||||||
|
<Folder Include="DataLayers\Permissions\" />
|
||||||
|
<Folder Include="DataLayers\Products\" />
|
||||||
|
<Folder Include="DbSets\Addresses\" />
|
||||||
|
<Folder Include="Extensions\" />
|
||||||
|
<Folder Include="ModelBuilders\Emails\" />
|
||||||
|
<Folder Include="ModelBuilders\Profiles\" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\TIAM.Core\TIAM.Core.csproj" />
|
||||||
|
<ProjectReference Include="..\TIAM.Entities.Server\TIAM.Entities.Server.csproj" />
|
||||||
|
<ProjectReference Include="..\TIAM.Entities\TIAM.Entities.csproj" />
|
||||||
|
<ProjectReference Include="..\TIAM.Models\TIAM.Models.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="AyCode.Core">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Core.Server">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.Server.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Database">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Database.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Entities">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Entities.Server">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.Server.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Interfaces">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Interfaces.Server">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.Server.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Models">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Models.Server">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.Server.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="AyCode.Utils">
|
||||||
|
<HintPath>..\..\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Utils.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
using AyCode.Blazor.Models.ViewModels;
|
using AyCode.Blazor.Models.ViewModels;
|
||||||
using TIAM.Entities.Emails;
|
using TIAM.Entities.Emails;
|
||||||
using TIAM.Models.PageViewModels;
|
using TIAM.Models.PageViewModels;
|
||||||
|
using EmailMessage = TIAM.Entities.Emails.EmailMessage;
|
||||||
|
|
||||||
namespace TIAM.Models;
|
namespace TIAM.Models;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
using System.Net;
|
using System.Net;
|
||||||
|
using System.Net.Mail;
|
||||||
using AyCode.Core.Helpers;
|
using AyCode.Core.Helpers;
|
||||||
using AyCode.Models.Enums;
|
using AyCode.Models.Enums;
|
||||||
using Microsoft.Extensions.Configuration;
|
using Microsoft.Extensions.Configuration;
|
||||||
|
|
@ -13,6 +14,11 @@ namespace TIAM.Services.Server
|
||||||
{
|
{
|
||||||
public class MessageSenderService(IConfiguration configuration, AdminDal adminDal) : IMessageSenderService
|
public class MessageSenderService(IConfiguration configuration, AdminDal adminDal) : IMessageSenderService
|
||||||
{
|
{
|
||||||
|
private readonly string smtpHost = "smtp.rackhost.hu";
|
||||||
|
private readonly int smtpPort = 587; // Change if needed
|
||||||
|
private readonly string smtpUser = "system@touriam.com";
|
||||||
|
private readonly string smtpPass = "Villany1";
|
||||||
|
|
||||||
public async Task<string> SendMessageAsync(EmailMessage message, int messageType)
|
public async Task<string> SendMessageAsync(EmailMessage message, int messageType)
|
||||||
{
|
{
|
||||||
var result = "";
|
var result = "";
|
||||||
|
|
@ -24,7 +30,8 @@ namespace TIAM.Services.Server
|
||||||
//var subject = emailMessage.Subject;
|
//var subject = emailMessage.Subject;
|
||||||
|
|
||||||
//adminDal.AddEmailMessageAsync(message).Forget();
|
//adminDal.AddEmailMessageAsync(message).Forget();
|
||||||
result = (await SendMailWithSendgrid(message)).ToString(); //?? HttpStatusCode.BadRequest.ToString();
|
//result = (await SendMailWithSendgrid(message)).ToString(); //?? HttpStatusCode.BadRequest.ToString();
|
||||||
|
result = (await SendMailWithSmtp(message)).ToString(); //?? HttpStatusCode.BadRequest.ToString();
|
||||||
break;
|
break;
|
||||||
case (int)MessageTypesEnum.sms:
|
case (int)MessageTypesEnum.sms:
|
||||||
//await SendSmsWithTwilio(message.Message);
|
//await SendSmsWithTwilio(message.Message);
|
||||||
|
|
@ -159,6 +166,197 @@ namespace TIAM.Services.Server
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//public async Task<HttpStatusCode> SendMailWithSmtp(EmailMessage message)
|
||||||
|
//{
|
||||||
|
// Console.WriteLine($"Sender: {message.SenderId}");
|
||||||
|
// Console.WriteLine($"Message: {message.Text}");
|
||||||
|
|
||||||
|
// if (message.Recipients == null || !message.Recipients.Any())
|
||||||
|
// {
|
||||||
|
// return HttpStatusCode.BadRequest;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// using (var smtpClient = new SmtpClient(smtpHost, smtpPort))
|
||||||
|
// {
|
||||||
|
// smtpClient.Credentials = new NetworkCredential(smtpUser, smtpPass);
|
||||||
|
// smtpClient.EnableSsl = true;
|
||||||
|
|
||||||
|
// var fromAddress = new MailAddress(smtpUser, "Your Mail Service");
|
||||||
|
|
||||||
|
// List<Task> sendTasks = new List<Task>();
|
||||||
|
|
||||||
|
// foreach (var recipient in message.Recipients)
|
||||||
|
// {
|
||||||
|
// var toAddress = new MailAddress(recipient.EmailAddress);
|
||||||
|
// var mailMessage = new MailMessage(fromAddress, toAddress)
|
||||||
|
// {
|
||||||
|
// Subject = message.Subject,
|
||||||
|
// Body = message.Text,
|
||||||
|
// IsBodyHtml = true
|
||||||
|
// };
|
||||||
|
|
||||||
|
// //sendTasks.Add(Task.Run(() => smtpClient.SendMailAsync(mailMessage)));
|
||||||
|
// sendTasks.Add(smtpClient.SendMailAsync(mailMessage));
|
||||||
|
// }
|
||||||
|
|
||||||
|
// try
|
||||||
|
// {
|
||||||
|
// await Task.WhenAll(sendTasks);
|
||||||
|
// Console.WriteLine("All emails sent successfully");
|
||||||
|
// return HttpStatusCode.OK;
|
||||||
|
// }
|
||||||
|
// catch (Exception ex)
|
||||||
|
// {
|
||||||
|
// Console.WriteLine($"Failed to send emails: {ex.Message}");
|
||||||
|
// return HttpStatusCode.InternalServerError;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//public async Task<HttpStatusCode> SendMailWithSmtp(EmailMessage message)
|
||||||
|
//{
|
||||||
|
// Console.WriteLine($"Sender: {message.SenderId}");
|
||||||
|
// Console.WriteLine($"Message: {message.Text}");
|
||||||
|
|
||||||
|
// if (message.Recipients == null || !message.Recipients.Any())
|
||||||
|
// {
|
||||||
|
// return HttpStatusCode.BadRequest;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// List<Task> sendTasks = new List<Task>();
|
||||||
|
|
||||||
|
// foreach (var recipient in message.Recipients)
|
||||||
|
// {
|
||||||
|
// var smtpClient = new SmtpClient(smtpHost, smtpPort)
|
||||||
|
// {
|
||||||
|
// Credentials = new NetworkCredential(smtpUser, smtpPass),
|
||||||
|
// EnableSsl = true,
|
||||||
|
// TargetName = $"SMTPS/{smtpHost}"
|
||||||
|
// };
|
||||||
|
|
||||||
|
// var fromAddress = new MailAddress(smtpUser, "Your Mail Service");
|
||||||
|
// var toAddress = new MailAddress(recipient.EmailAddress);
|
||||||
|
// var mailMessage = new MailMessage(fromAddress, toAddress)
|
||||||
|
// {
|
||||||
|
// Subject = message.Subject,
|
||||||
|
// Body = message.Text,
|
||||||
|
// IsBodyHtml = true
|
||||||
|
// };
|
||||||
|
|
||||||
|
// sendTasks.Add(Task.Run(async () =>
|
||||||
|
// {
|
||||||
|
// try
|
||||||
|
// {
|
||||||
|
// await smtpClient.SendMailAsync(mailMessage);
|
||||||
|
// }
|
||||||
|
// catch (Exception ex)
|
||||||
|
// {
|
||||||
|
// Console.WriteLine($"Failed to send email to {recipient.EmailAddress}: {ex.Message}");
|
||||||
|
// throw; // Ensure exceptions bubble up
|
||||||
|
// }
|
||||||
|
// finally
|
||||||
|
// {
|
||||||
|
// smtpClient.Dispose();
|
||||||
|
// }
|
||||||
|
// }));
|
||||||
|
// }
|
||||||
|
|
||||||
|
// var timeoutTask = Task.Delay(TimeSpan.FromSeconds(30)); // Prevent indefinite waiting
|
||||||
|
// var allTasks = Task.WhenAll(sendTasks);
|
||||||
|
// var completedTask = await Task.WhenAny(allTasks, timeoutTask);
|
||||||
|
|
||||||
|
// if (completedTask == timeoutTask)
|
||||||
|
// {
|
||||||
|
// Console.WriteLine("Email sending timed out.");
|
||||||
|
// return HttpStatusCode.RequestTimeout;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// try
|
||||||
|
// {
|
||||||
|
// await allTasks; // Rethrow if there were failures
|
||||||
|
// Console.WriteLine("All emails sent successfully");
|
||||||
|
// return HttpStatusCode.OK;
|
||||||
|
// }
|
||||||
|
// catch (Exception)
|
||||||
|
// {
|
||||||
|
// Console.WriteLine("Some emails failed to send");
|
||||||
|
// return HttpStatusCode.InternalServerError;
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
public async Task<HttpStatusCode> SendMailWithSmtp(EmailMessage message)
|
||||||
|
{
|
||||||
|
Console.WriteLine($"Sender: {message.SenderId}");
|
||||||
|
Console.WriteLine($"Message: {message.Text}");
|
||||||
|
|
||||||
|
if (message.Recipients == null || !message.Recipients.Any())
|
||||||
|
{
|
||||||
|
return HttpStatusCode.BadRequest;
|
||||||
|
}
|
||||||
|
|
||||||
|
List<Task> sendTasks = new List<Task>();
|
||||||
|
|
||||||
|
foreach (var recipient in message.Recipients)
|
||||||
|
{
|
||||||
|
sendTasks.Add(Task.Run(async () =>
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
using (var smtpClient = new SmtpClient(smtpHost, smtpPort))
|
||||||
|
{
|
||||||
|
smtpClient.Credentials = new NetworkCredential(smtpUser, smtpPass);
|
||||||
|
smtpClient.EnableSsl = true; // Try false for port 587
|
||||||
|
smtpClient.TargetName = $"SMTPS/{smtpHost}";
|
||||||
|
|
||||||
|
var fromAddress = new MailAddress(smtpUser, "Your Mail Service");
|
||||||
|
var toAddress = new MailAddress(recipient.EmailAddress);
|
||||||
|
var mailMessage = new MailMessage(fromAddress, toAddress)
|
||||||
|
{
|
||||||
|
Subject = message.Subject,
|
||||||
|
Body = message.Text,
|
||||||
|
IsBodyHtml = true
|
||||||
|
};
|
||||||
|
|
||||||
|
await smtpClient.SendMailAsync(mailMessage);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
Console.WriteLine($"Failed to send email to {recipient.EmailAddress}: {ex.Message}");
|
||||||
|
if (ex.InnerException != null)
|
||||||
|
{
|
||||||
|
Console.WriteLine($"Inner Exception: {ex.InnerException.Message}");
|
||||||
|
}
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
|
var timeoutTask = Task.Delay(TimeSpan.FromSeconds(30)); // Prevent indefinite waiting
|
||||||
|
var allTasks = Task.WhenAll(sendTasks);
|
||||||
|
var completedTask = await Task.WhenAny(allTasks, timeoutTask);
|
||||||
|
|
||||||
|
if (completedTask == timeoutTask)
|
||||||
|
{
|
||||||
|
Console.WriteLine("Email sending timed out.");
|
||||||
|
return HttpStatusCode.RequestTimeout;
|
||||||
|
}
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
await allTasks; // Rethrow if there were failures
|
||||||
|
Console.WriteLine("All emails sent successfully");
|
||||||
|
return HttpStatusCode.OK;
|
||||||
|
}
|
||||||
|
catch (Exception)
|
||||||
|
{
|
||||||
|
Console.WriteLine("Some emails failed to send");
|
||||||
|
return HttpStatusCode.InternalServerError;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public string GenerateWelcomeEmail(string userName, string activationCode)
|
public string GenerateWelcomeEmail(string userName, string activationCode)
|
||||||
{
|
{
|
||||||
string template = EmailTemplateHelper.GetTemplate(TiamConstClient.WelcomeEmailTemplateName);
|
string template = EmailTemplateHelper.GetTemplate(TiamConstClient.WelcomeEmailTemplateName);
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- https://go.microsoft.com/fwlink/?LinkID=208121. -->
|
||||||
|
<Project>
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Any CPU</Platform>
|
||||||
|
<PublishDir>D:\REPOS\TOURIAM_PUBLISH</PublishDir>
|
||||||
|
<PublishProtocol>FileSystem</PublishProtocol>
|
||||||
|
<_TargetId>Folder</_TargetId>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Project>
|
||||||
|
|
@ -53,7 +53,7 @@
|
||||||
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="8.0.1" />
|
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="8.0.1" />
|
||||||
<PackageReference Include="SkiaSharp" Version="2.88.8" />
|
<PackageReference Include="SkiaSharp" Version="2.88.8" />
|
||||||
<PackageReference Include="SkiaSharp.Views.Desktop.Common" Version="2.88.8" />
|
<PackageReference Include="SkiaSharp.Views.Desktop.Common" Version="2.88.8" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" VersionOverride="7.0.1" Version="8.0.2" />
|
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" VersionOverride="7.0.1" Version="9.0.3" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,8 @@
|
||||||
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<IsFirstTimeProjectOpen>False</IsFirstTimeProjectOpen>
|
<IsFirstTimeProjectOpen>False</IsFirstTimeProjectOpen>
|
||||||
<ActiveDebugFramework>net8.0-windows10.0.19041.0</ActiveDebugFramework>
|
<ActiveDebugFramework>net8.0-maccatalyst</ActiveDebugFramework>
|
||||||
<ActiveDebugProfile>Windows Machine</ActiveDebugProfile>
|
<ActiveDebugProfile>Mac Catalyst</ActiveDebugProfile>
|
||||||
<SelectedPlatformGroup>PhysicalDevice</SelectedPlatformGroup>
|
<SelectedPlatformGroup>PhysicalDevice</SelectedPlatformGroup>
|
||||||
<DefaultDevice>pixel_5_-_api_31</DefaultDevice>
|
<DefaultDevice>pixel_5_-_api_31</DefaultDevice>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
|
||||||
|
|
@ -276,6 +276,7 @@ else
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer p-4">
|
<div class="card-footer p-4">
|
||||||
<div class="d-flex justify-content-between">
|
<div class="d-flex justify-content-between">
|
||||||
|
<DxButton RenderStyle="ButtonRenderStyle.Warning" Click="@((e) => CancelTransferEventHandler(e, true))">Discard changes</DxButton>
|
||||||
<DxButton Click="@((e) => UpdateTransferEventHandler(e, true))">Save Changes</DxButton>
|
<DxButton Click="@((e) => UpdateTransferEventHandler(e, true))">Save Changes</DxButton>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -292,7 +293,7 @@ else
|
||||||
<div style="margin-top: 10px; margin-bottom: 10px;">
|
<div style="margin-top: 10px; margin-bottom: 10px;">
|
||||||
<DxButton Click="() => SendMail(_transfer)" Text="Send a message" RenderStyle="ButtonRenderStyle.Primary" />
|
<DxButton Click="() => SendMail(_transfer)" Text="Send a message" RenderStyle="ButtonRenderStyle.Primary" />
|
||||||
</div>
|
</div>
|
||||||
<MessageDetailGridComponent ContextId="transferId" IsSenderEmailVisible="false" IsMessageTextVisible="false"></MessageDetailGridComponent>
|
<MessageDetailGridComponent ContextId="_transfer.Id" GetAllMessageTag="SignalRTags.GetMessagesByContextId" IsSenderEmailVisible="false" IsMessageTextVisible="false"></MessageDetailGridComponent>
|
||||||
</DxTabPage>
|
</DxTabPage>
|
||||||
</DxTabs>
|
</DxTabs>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -527,6 +528,11 @@ else
|
||||||
navManager.NavigateTo("/mytransfers"); // Redirect to a list or another page after successful update
|
navManager.NavigateTo("/mytransfers"); // Redirect to a list or another page after successful update
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async Task CancelTransferEventHandler(MouseEventArgs e, bool shouldRedirect = false)
|
||||||
|
{
|
||||||
|
_editMode = false;
|
||||||
|
}
|
||||||
|
|
||||||
private async Task<Transfer?> UpdateTransfer(bool shouldRedirect = false)
|
private async Task<Transfer?> UpdateTransfer(bool shouldRedirect = false)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
|
||||||
|
|
@ -88,6 +88,6 @@
|
||||||
private void SendMail(string email)
|
private void SendMail(string email)
|
||||||
{
|
{
|
||||||
var sendResult = UserDataService.SendForgottenPasswordMail(emailAddress).Forget;
|
var sendResult = UserDataService.SendForgottenPasswordMail(emailAddress).Forget;
|
||||||
|
msg = "We have sent you an email, with instructions on how to renew your password. ";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -91,9 +91,10 @@
|
||||||
|
|
||||||
protected override async Task OnParametersSetAsync()
|
protected override async Task OnParametersSetAsync()
|
||||||
{
|
{
|
||||||
if(productId.IsNullOrEmpty())
|
if(!productId.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
var result = await _adminSignalRClient.GetByIdAsync<Product>(SignalRTags.GetCompaniesById, productId);
|
var result = await _adminSignalRClient.GetByIdAsync<Product>(SignalRTags.GetProductById, productId);
|
||||||
|
_logger.Debug($"Current product: {result.Name}");
|
||||||
if (result != null)
|
if (result != null)
|
||||||
{
|
{
|
||||||
SelectedHotel = result;
|
SelectedHotel = result;
|
||||||
|
|
@ -103,7 +104,7 @@
|
||||||
SelectedHotel = null;
|
SelectedHotel = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
_logger.Debug($"OnParameterSet, going forward");
|
||||||
if (!referralId.IsNullOrEmpty())
|
if (!referralId.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
//check if storage has some other referralId already TODO
|
//check if storage has some other referralId already TODO
|
||||||
|
|
|
||||||
|
|
@ -268,7 +268,6 @@
|
||||||
"UserId",
|
"UserId",
|
||||||
"ProductId",
|
"ProductId",
|
||||||
"PaymentId",
|
"PaymentId",
|
||||||
"TripDate",
|
|
||||||
"FirstName",
|
"FirstName",
|
||||||
"LastName",
|
"LastName",
|
||||||
"UserProductMappingId",
|
"UserProductMappingId",
|
||||||
|
|
@ -284,7 +283,6 @@
|
||||||
"UserId",
|
"UserId",
|
||||||
"ProductId",
|
"ProductId",
|
||||||
"PaymentId",
|
"PaymentId",
|
||||||
"TripDate",
|
|
||||||
"FirstName",
|
"FirstName",
|
||||||
"LastName",
|
"LastName",
|
||||||
"UserProductMappingId",
|
"UserProductMappingId",
|
||||||
|
|
@ -405,7 +403,7 @@
|
||||||
|
|
||||||
var transfer = await WizardProcessor.ProcessWizardAsync<TransferWizardModel>(result.GetType(), result);
|
var transfer = await WizardProcessor.ProcessWizardAsync<TransferWizardModel>(result.GetType(), result);
|
||||||
_logger.Info($"Submitted nested form: {result.GetType().FullName}");
|
_logger.Info($"Submitted nested form: {result.GetType().FullName}");
|
||||||
navManager.NavigateTo($"/transfer2/{resModel.Id}");
|
navManager.NavigateTo($"/mytransfers/{resModel.Id}");
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override Task OnInitializedAsync()
|
protected override Task OnInitializedAsync()
|
||||||
|
|
|
||||||
|
|
@ -116,7 +116,7 @@
|
||||||
|
|
||||||
void OnPasswordSet(string password)
|
void OnPasswordSet(string password)
|
||||||
{
|
{
|
||||||
msg = $"Password to set: {NewPassword}";
|
msg = $"Please type in again";
|
||||||
PasswordNotSet = false;
|
PasswordNotSet = false;
|
||||||
|
|
||||||
StateHasChanged();
|
StateHasChanged();
|
||||||
|
|
|
||||||
|
|
@ -103,6 +103,7 @@
|
||||||
}
|
}
|
||||||
</CellDisplayTemplate>
|
</CellDisplayTemplate>
|
||||||
</DxGridDataColumn>
|
</DxGridDataColumn>
|
||||||
|
<DxGridDataColumn FieldName="Appointment" SortOrder="GridColumnSortOrder.Descending" GroupIndex="0" GroupInterval="GridColumnGroupInterval.Custom" DisplayFormat="g" Width="125" />
|
||||||
<DxGridDataColumn FieldName="FullName" />
|
<DxGridDataColumn FieldName="FullName" />
|
||||||
<DxGridDataColumn FieldName="ContactPhone" Width="120" />
|
<DxGridDataColumn FieldName="ContactPhone" Width="120" />
|
||||||
<DxGridDataColumn FieldName="ContactEmail" Width="120" />
|
<DxGridDataColumn FieldName="ContactEmail" Width="120" />
|
||||||
|
|
|
||||||
|
|
@ -118,6 +118,7 @@
|
||||||
<DxGridDataColumn FieldName="Revenue" Caption="Revenue" Width="70" CaptionAlignment="GridTextAlignment.Center" />
|
<DxGridDataColumn FieldName="Revenue" Caption="Revenue" Width="70" CaptionAlignment="GridTextAlignment.Center" />
|
||||||
<DxGridDataColumn FieldName="FullName" />
|
<DxGridDataColumn FieldName="FullName" />
|
||||||
<DxGridDataColumn FieldName="ContactPhone" Width="120" />
|
<DxGridDataColumn FieldName="ContactPhone" Width="120" />
|
||||||
|
<DxGridDataColumn FieldName="ContactEmail" Width="120" />
|
||||||
<DxGridDataColumn FieldName="ContactEmail" Width="120">
|
<DxGridDataColumn FieldName="ContactEmail" Width="120">
|
||||||
<CellDisplayTemplate>
|
<CellDisplayTemplate>
|
||||||
@{
|
@{
|
||||||
|
|
@ -165,6 +166,9 @@
|
||||||
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.LastName) ColSpanMd="6">
|
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.LastName) ColSpanMd="6">
|
||||||
@editFormContext.GetEditor("LastName")
|
@editFormContext.GetEditor("LastName")
|
||||||
</DxFormLayoutItem>
|
</DxFormLayoutItem>
|
||||||
|
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.EmailAddress) ColSpanMd="6">
|
||||||
|
@editFormContext.GetEditor("ContactEmail")
|
||||||
|
</DxFormLayoutItem>
|
||||||
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.DestinationAddress) ColSpanMd="6">
|
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.DestinationAddress) ColSpanMd="6">
|
||||||
@editFormContext.GetEditor("ToAddress")
|
@editFormContext.GetEditor("ToAddress")
|
||||||
</DxFormLayoutItem>
|
</DxFormLayoutItem>
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@
|
||||||
@inject AdminSignalRClient AdminSignalRClient;
|
@inject AdminSignalRClient AdminSignalRClient;
|
||||||
@inject ISessionService sessionService
|
@inject ISessionService sessionService
|
||||||
@inject IComponentUpdateService ComponentUpdateService
|
@inject IComponentUpdateService ComponentUpdateService
|
||||||
|
@inject ITransferDataService transferDataService
|
||||||
|
|
||||||
<MessageDetailGrid CssClass="my-grid" @ref="_messageGrid"
|
<MessageDetailGrid CssClass="my-grid" @ref="_messageGrid"
|
||||||
Logger="_logger"
|
Logger="_logger"
|
||||||
|
|
@ -163,11 +164,25 @@
|
||||||
|
|
||||||
private Guid? myUserId;
|
private Guid? myUserId;
|
||||||
|
|
||||||
protected override void OnInitialized()
|
protected override async Task OnInitializedAsync()
|
||||||
{
|
{
|
||||||
_logger = new LoggerClient<MessageDetailGridComponent>(LogWriters.ToArray());
|
_logger = new LoggerClient<MessageDetailGridComponent>(LogWriters.ToArray());
|
||||||
|
if(sessionService.User != null)
|
||||||
|
{
|
||||||
myUserId = _sessionService.User.UserId;
|
myUserId = _sessionService.User.UserId;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(ContextId != null)
|
||||||
|
{
|
||||||
|
//should be transfer because in any other way, the user must be logged in
|
||||||
|
myUserId = Guid.Empty; //TODO get userId by transfer
|
||||||
|
var transfer = await AdminSignalRClient.GetTransferById((Guid)ContextId);
|
||||||
|
myUserId = transfer.UserId;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void CustomizeElement(GridCustomizeElementEventArgs e)
|
private void CustomizeElement(GridCustomizeElementEventArgs e)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<TiamErrorBoundaryComponent LoggerCategory="AdminLayout" OnError="HandleError">
|
<TiamErrorBoundaryComponent LoggerCategory="AdminLayout" OnError="HandleError">
|
||||||
|
<AppLaunchComponent />
|
||||||
<AdminNavMenu />
|
<AdminNavMenu />
|
||||||
<NavHelperComponent />
|
<NavHelperComponent />
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@
|
||||||
@inject NavigationManager NavigationManager
|
@inject NavigationManager NavigationManager
|
||||||
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
|
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
|
||||||
@inject IJSRuntime jsRuntime
|
@inject IJSRuntime jsRuntime
|
||||||
|
@inject IComponentUpdateService componentUpdateService
|
||||||
|
|
||||||
|
|
||||||
<div class="w-100" style="height:40px; position:fixed; z-index: 10000;">
|
<div class="w-100" style="height:40px; position:fixed; z-index: 10000;">
|
||||||
|
|
@ -153,6 +154,7 @@
|
||||||
private bool expandHotelAdminNav = false;
|
private bool expandHotelAdminNav = false;
|
||||||
private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null;
|
private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null;
|
||||||
|
|
||||||
|
private bool myUser = false;
|
||||||
private bool userHasCompany;
|
private bool userHasCompany;
|
||||||
private bool userHasHotels;
|
private bool userHasHotels;
|
||||||
private bool IsDriver;
|
private bool IsDriver;
|
||||||
|
|
@ -237,4 +239,56 @@
|
||||||
SessionService.ClearAll();
|
SessionService.ClearAll();
|
||||||
NavigationManager.NavigateTo("/");
|
NavigationManager.NavigateTo("/");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override void OnAfterRender(bool firstRender)
|
||||||
|
{
|
||||||
|
base.OnAfterRender(firstRender);
|
||||||
|
|
||||||
|
if (firstRender)
|
||||||
|
componentUpdateService.GetOrAddComponent<AdminNavMenu>().RefreshRequested += RefreshMe;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void RefreshMe()
|
||||||
|
{
|
||||||
|
_logger.Debug($"Navbar refresh called! {DateTime.Now} ");
|
||||||
|
|
||||||
|
//OnInitialized();
|
||||||
|
InitUser();
|
||||||
|
StateHasChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void InitUser()
|
||||||
|
{
|
||||||
|
if (SessionService.User != null)
|
||||||
|
{
|
||||||
|
myUser = true;
|
||||||
|
userId = SessionService.User.UserId;
|
||||||
|
userEmail = SessionService.User.Email;
|
||||||
|
|
||||||
|
if (SessionService.User.UserModelDto.ProfileDto.FullName != null)
|
||||||
|
{
|
||||||
|
userFullName = SessionService.User.UserModelDto.ProfileDto.FullName!;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_logger.Debug($"Navbar myUser false! {DateTime.Now} ");
|
||||||
|
myUser = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
var properties = SessionService.User?.HasProperties;
|
||||||
|
if (properties == null) return;
|
||||||
|
|
||||||
|
userHasCompany = SessionService.HasCompany;
|
||||||
|
userHasHotels = properties.Count > 0;
|
||||||
|
IsSysAdmin = SessionService.IsSysAdmin;
|
||||||
|
IsDevAdmin = SessionService.IsDevAdmin;
|
||||||
|
IsDriver = SessionService.IsDriver;
|
||||||
|
driverPermissionId = SessionService.DriverPersmissionId;
|
||||||
|
|
||||||
|
foreach (var property in properties)
|
||||||
|
{
|
||||||
|
_logger.Detail($"First property: {property.Value} ");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Blazor.AnimateOnScroll" Version="1.1.0" />
|
<PackageReference Include="Blazor.AnimateOnScroll" Version="1.1.0" />
|
||||||
<PackageReference Include="BlazorAnimation" Version="2.2.0" />
|
<PackageReference Include="BlazorAnimation" Version="2.2.0" />
|
||||||
<PackageReference Include="DevExpress.Blazor" Version="24.1.3" />
|
<PackageReference Include="DevExpress.Blazor" Version="24.2.3" />
|
||||||
<PackageReference Include="MessagePack" Version="2.5.187" />
|
<PackageReference Include="MessagePack" Version="2.5.187" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="8.0.10" />
|
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="8.0.10" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Localization" Version="8.0.10" />
|
<PackageReference Include="Microsoft.Extensions.Localization" Version="8.0.10" />
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,11 @@
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<Content Remove="Pages\Utility\DynamicForm.razor" />
|
||||||
|
<Content Remove="Shared\Users\NavigationHelperComponent.razor" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<SupportedPlatform Include="browser" />
|
<SupportedPlatform Include="browser" />
|
||||||
|
|
@ -14,10 +19,10 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Blazor.AnimateOnScroll" Version="1.1.0" />
|
<PackageReference Include="Blazor.AnimateOnScroll" Version="1.1.0" />
|
||||||
<PackageReference Include="BlazorAnimation" Version="2.2.0" />
|
<PackageReference Include="BlazorAnimation" Version="2.2.0" />
|
||||||
<PackageReference Include="DevExpress.Blazor" Version="23.2.3" />
|
<PackageReference Include="DevExpress.Blazor" Version="24.1.3" />
|
||||||
<PackageReference Include="MessagePack" Version="2.5.168" />
|
<PackageReference Include="MessagePack" Version="2.5.187" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="8.0.6" />
|
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="8.0.10" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Localization" Version="8.0.6" />
|
<PackageReference Include="Microsoft.Extensions.Localization" Version="8.0.10" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
@ -74,9 +79,39 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Content Update="Pages\RoadmapPage.razor">
|
||||||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
|
||||||
|
</Content>
|
||||||
|
<Content Update="Pages\User\CardComponents\CompanyCardComponent.razor">
|
||||||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
|
||||||
|
</Content>
|
||||||
|
<Content Update="Pages\User\Drivers\DriverManageCars.razor">
|
||||||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
|
||||||
|
</Content>
|
||||||
|
<Content Update="Pages\User\Hotels\HotelEditTransfers.razor">
|
||||||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
|
||||||
|
</Content>
|
||||||
<Content Update="Pages\User\SysAdmins\AddressDetailGridComponent.razor">
|
<Content Update="Pages\User\SysAdmins\AddressDetailGridComponent.razor">
|
||||||
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
|
||||||
</Content>
|
</Content>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<_ContentIncludedByDefault Remove="Pages\Utility\DynamicForm.razor" />
|
||||||
|
<_ContentIncludedByDefault Remove="Shared\Users\NavigationHelperComponent.razor" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Pages\Utility\DynamicForm.razor" />
|
||||||
|
<None Include="Shared\Users\NavigationHelperComponent.razor" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<UpToDateCheckInput Remove="Pages\Utility\DynamicForm.razor" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<UpToDateCheckInput Remove="Shared\Users\NavigationHelperComponent.razor" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- https://go.microsoft.com/fwlink/?LinkID=208121. -->
|
||||||
|
<Project>
|
||||||
|
<PropertyGroup>
|
||||||
|
<DeleteExistingFiles>true</DeleteExistingFiles>
|
||||||
|
<ExcludeApp_Data>false</ExcludeApp_Data>
|
||||||
|
<LaunchSiteAfterPublish>true</LaunchSiteAfterPublish>
|
||||||
|
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
|
||||||
|
<LastUsedPlatform>Any CPU</LastUsedPlatform>
|
||||||
|
<PublishProvider>FileSystem</PublishProvider>
|
||||||
|
<PublishUrl>D:\REPOS\AYCODE\Publish\ServerRelease</PublishUrl>
|
||||||
|
<WebPublishMethod>FileSystem</WebPublishMethod>
|
||||||
|
<_TargetId>Folder</_TargetId>
|
||||||
|
<SiteUrlToLaunchAfterPublish />
|
||||||
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
|
<RuntimeIdentifier>browser-wasm</RuntimeIdentifier>
|
||||||
|
<ProjectGuid>2091d897-ba49-4fc1-808f-036fa040376e</ProjectGuid>
|
||||||
|
<SelfContained>true</SelfContained>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Project>
|
||||||
|
|
@ -3,6 +3,7 @@ using TIAM.Entities.Emails;
|
||||||
//using TIAM.Entities.TransferDestinations;
|
//using TIAM.Entities.TransferDestinations;
|
||||||
using TIAMWebApp.Shared.Application.Interfaces;
|
using TIAMWebApp.Shared.Application.Interfaces;
|
||||||
using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels;
|
using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels;
|
||||||
|
using EmailMessage = TIAM.Entities.Emails.EmailMessage;
|
||||||
|
|
||||||
namespace TIAMWebApp.Client.Services
|
namespace TIAMWebApp.Client.Services
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ActiveDebugProfile>http</ActiveDebugProfile>
|
<ActiveDebugProfile>https</ActiveDebugProfile>
|
||||||
|
<NameOfLastUsedPublishProfile>D:\REPOS\AYCODE\source\TourIAm\TIAMWebApp\Client\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>
|
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>
|
||||||
|
|
|
||||||
|
|
@ -115,7 +115,13 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
if (!loggedInModel.IsLoggedIn)
|
if (!loggedInModel.IsLoggedIn)
|
||||||
{
|
{
|
||||||
_logger.Warning(@"User not valid! errorCode: " + loggedInModel.LoginErrorCode);
|
_logger.Warning(@"User not valid! errorCode: " + loggedInModel.LoginErrorCode);
|
||||||
return null;
|
//return null;
|
||||||
|
return new MainResponse
|
||||||
|
{
|
||||||
|
Content = loggedInModel.LoginErrorCode,
|
||||||
|
IsSuccess = false,
|
||||||
|
ErrorMessage = "Not valid login."
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
var response = new MainResponse
|
var response = new MainResponse
|
||||||
|
|
@ -550,7 +556,7 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
//send email
|
//send email
|
||||||
|
|
||||||
_logger.Info($"Created transfer, send emailMessage!!!");
|
_logger.Info($"Created transfer, send emailMessage!!!");
|
||||||
var message = new MessageSenderModel<EmailMessage>();
|
var message = new MessageSenderModel<TIAM.Entities.Emails.EmailMessage>();
|
||||||
message.Message = new EmailMessage();
|
message.Message = new EmailMessage();
|
||||||
message.Message.EmailAddress = email;
|
message.Message.EmailAddress = email;
|
||||||
message.Message.Id = Guid.NewGuid();
|
message.Message.Id = Guid.NewGuid();
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,8 @@ builder.Services.AddCors(options =>
|
||||||
{
|
{
|
||||||
options.AddPolicy(myAllowSpecificOrigins, policy =>
|
options.AddPolicy(myAllowSpecificOrigins, policy =>
|
||||||
{
|
{
|
||||||
policy.AllowAnyOrigin();
|
policy.WithOrigins("http://touriam.com",
|
||||||
|
"http://www.touriam.com");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="8.0.10" />
|
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="8.0.10" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="8.0.10" />
|
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="8.0.10" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.SignalR.Common" Version="8.0.10" />
|
<PackageReference Include="Microsoft.AspNetCore.SignalR.Common" Version="8.0.10" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.10" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.11" />
|
||||||
<PackageReference Include="Microsoft.OpenApi" Version="1.6.22" />
|
<PackageReference Include="Microsoft.OpenApi" Version="1.6.22" />
|
||||||
<PackageReference Include="QRCoderNetCore" Version="1.0.0" />
|
<PackageReference Include="QRCoderNetCore" Version="1.0.0" />
|
||||||
<PackageReference Include="SendGrid" Version="9.29.3" />
|
<PackageReference Include="SendGrid" Version="9.29.3" />
|
||||||
|
|
@ -27,6 +27,7 @@
|
||||||
<PackageReference Include="Swashbuckle.AspNetCore.Swagger" Version="6.9.0" />
|
<PackageReference Include="Swashbuckle.AspNetCore.Swagger" Version="6.9.0" />
|
||||||
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerGen" Version="6.9.0" />
|
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerGen" Version="6.9.0" />
|
||||||
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerUI" Version="6.9.0" />
|
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerUI" Version="6.9.0" />
|
||||||
|
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="7.1.2" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ActiveDebugProfile>https</ActiveDebugProfile>
|
<ActiveDebugProfile>https</ActiveDebugProfile>
|
||||||
<NameOfLastUsedPublishProfile>C:\REPOS\AYCODE\source\TourIAm\TIAMWebApp\Server\Properties\PublishProfiles\ReleaseDeployProfile.pubxml</NameOfLastUsedPublishProfile>
|
<NameOfLastUsedPublishProfile>D:\REPOS\AYCODE\source\TourIAm\TIAMWebApp\Server\Properties\PublishProfiles\ReleaseDeployProfile.pubxml</NameOfLastUsedPublishProfile>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>
|
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
"ConnectionStrings": {
|
"ConnectionStrings": {
|
||||||
"DeveloperDbConnection": "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
|
//"DeveloperDbConnection": "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
|
||||||
|
"DeveloperDbConnection": "Data Source=194.164.235.47;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
|
||||||
},
|
},
|
||||||
"Logging": {
|
"Logging": {
|
||||||
"LogLevel": {
|
"LogLevel": {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
using TIAM.Entities.Emails;
|
using TIAM.Entities.Emails;
|
||||||
|
using EmailMessage = TIAM.Entities.Emails.EmailMessage;
|
||||||
|
|
||||||
namespace TIAMWebApp.Shared.Application.Interfaces
|
namespace TIAMWebApp.Shared.Application.Interfaces
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -8,10 +8,10 @@ namespace TIAMWebApp.Shared.Application.Models.ClientSide
|
||||||
//public static string BaseUrl = "https://touriam.mangoweb.hu";
|
//public static string BaseUrl = "https://touriam.mangoweb.hu";
|
||||||
//public static string ApiBaseUrl = "https://touriam.mangoweb.hu";
|
//public static string ApiBaseUrl = "https://touriam.mangoweb.hu";
|
||||||
#if RELEASE
|
#if RELEASE
|
||||||
public static string BaseUrl = "https://test.touriam.com";
|
//public static string BaseUrl = "https://test.touriam.com";
|
||||||
public static string ApiBaseUrl = "https://test.touriam.com";
|
//public static string ApiBaseUrl = "https://test.touriam.com";
|
||||||
//public static string BaseUrl = "https://touriam.com";
|
public static string BaseUrl = "https://touriam.com";
|
||||||
//public static string ApiBaseUrl = "https://touriam.com";
|
public static string ApiBaseUrl = "https://touriam.com";
|
||||||
//public static string BaseUrl = "https://qa.touriam.com";
|
//public static string BaseUrl = "https://qa.touriam.com";
|
||||||
//public static string ApiBaseUrl = "https://qa.touriam.com";
|
//public static string ApiBaseUrl = "https://qa.touriam.com";
|
||||||
#else
|
#else
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ using System.Net.Http.Json;
|
||||||
//using AyCode.Models.Messages;
|
//using AyCode.Models.Messages;
|
||||||
using TIAM.Entities.Emails;
|
using TIAM.Entities.Emails;
|
||||||
using TIAMWebApp.Shared.Application.Models.ClientSide.Messages;
|
using TIAMWebApp.Shared.Application.Models.ClientSide.Messages;
|
||||||
|
using EmailMessage = TIAM.Entities.Emails.EmailMessage;
|
||||||
|
|
||||||
namespace TIAMWebApp.Shared.Application.Services
|
namespace TIAMWebApp.Shared.Application.Services
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -80,8 +80,8 @@ public abstract class UserDataServiceClientBase : IUserDataService
|
||||||
public async Task<MainResponse?> AuthenticateUser(LoginModel loginModel)
|
public async Task<MainResponse?> AuthenticateUser(LoginModel loginModel)
|
||||||
{
|
{
|
||||||
Logger.Debug($"AuthenticateUser; email: {loginModel.Email}");
|
Logger.Debug($"AuthenticateUser; email: {loginModel.Email}");
|
||||||
|
var result = await AdminSignalRClient.PostDataAsync<LoginModel, MainResponse>(SignalRTags.AuthenticateUser, loginModel);
|
||||||
return await AdminSignalRClient.PostDataAsync<LoginModel, MainResponse>(SignalRTags.AuthenticateUser, loginModel);
|
return result;
|
||||||
|
|
||||||
//var result = string.Empty;
|
//var result = string.Empty;
|
||||||
//var url = $"{Setting.ApiBaseUrl}/{APIUrls.AuthenticateUser}";
|
//var url = $"{Setting.ApiBaseUrl}/{APIUrls.AuthenticateUser}";
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue