@page "/settings" @using DiscordBotCore @inject NotificationService NotificationService Discord Bot requires a Bot Token, a prefix for normal commands and the server Ids on the servers it will be in Discord Bot Token Bot prefix Bot Server Ids: @code { private string _Token = string.Empty; private string _Prefix = string.Empty; private string _ServerIds = string.Empty; protected override void OnInitialized() { base.OnInitialized(); if(Application.CurrentApplication.ApplicationEnvironmentVariables.TryGetValue("token", out var token)) { _Token = token as string; } if(Application.CurrentApplication.ApplicationEnvironmentVariables.TryGetValue("prefix", out var prefix)) { _Prefix = prefix as string; } if(Application.CurrentApplication.ApplicationEnvironmentVariables.TryGetValue("ServerID", out var serverIds)) { if (serverIds is List listServerIds) { foreach(var item in listServerIds) { _ServerIds += $"{item}\n"; } _ServerIds.TrimEnd(); } } StateHasChanged(); } private async Task SaveChanges() { Application.CurrentApplication.ApplicationEnvironmentVariables.Set("token", _Token); Application.CurrentApplication.ApplicationEnvironmentVariables.Set("prefix", _Prefix); List serverIds = new List(); string[] values = _ServerIds.Split('\n'); foreach(var value in values) { string clearValue = value.TrimEnd().Replace("\r", ""); if(ulong.TryParse(clearValue, out ulong actualValue)) { serverIds.Add(actualValue); } } Application.CurrentApplication.ApplicationEnvironmentVariables.Set("ServerID", serverIds); await Application.CurrentApplication.ApplicationEnvironmentVariables.SaveToFile(); NotificationService.Notify(NotificationSeverity.Success, "Configuration", "Configuration has been saved !", 4000); } private void ServerIDsValueChanged(string obj) { _ServerIds = obj; } private void PrefixValueChanged(string obj) { _Prefix = obj; } private void TokenValueChanged(string obj) { _Token = obj; } }