/// <summary> /// Connect Doge account to the Neblio Account /// </summary> /// <param name="baseInfo"></param> /// <param name="dto"></param> /// <param name="verifyActive"></param> /// <returns></returns> public static async Task <bool> ConnectDogeAccount(AdminActionBase baseInfo, ConnectDogeAccountDto dto, bool verifyActive = false) { if (verifyActive) { var vres = await VerifyAdminAction(baseInfo.Admin, baseInfo.Signature, baseInfo.Message); if (vres == null) { return(false); } } try { if (!VEDLDataContext.Accounts.TryGetValue(dto.AccountAddress, out var account)) { return(false); } if (!VEDLDataContext.DogeAccounts.TryGetValue(dto.dogeAccountAddress, out var doge)) { return(false); } await account.ConnectDogeAccount(doge.Address); return(true); } catch (Exception ex) { Console.WriteLine($"Cannot connect doge account {dto.dogeAccountAddress} to the neblio account {dto.AccountAddress}. " + ex.Message); return(false); } }
public async Task <string> DisconnectDogeAccount([FromBody] ConnectDogeAccountDto data) { try { var res = await AccountHandler.DisconnectDogeAccount(data.adminCredentials, data, MainDataContext.IsAPIWithCredentials); if (res) { return("OK"); } else { return("Cannot Disconnect doge account."); } } catch (Exception ex) { throw new HttpResponseException((HttpStatusCode)501, $"Cannot Disconnect doge account. " + ex.Message); } }
public async Task <string> DisconnectDogeAccount([FromBody] ConnectDogeAccountDto data) { try { if (MainDataContext.IsAPIWithCredentials) { var vres = await AccountHandler.VerifyAdminAction(data.adminCredentials.Admin, data.adminCredentials.Signature, data.adminCredentials.Message); if (vres == null) { return("Wrong signature or missing action request."); } } await WooCommerceHelpers.Shop.DisconnectDogeAccount(); return("OK"); } catch (Exception ex) { throw new HttpResponseException((HttpStatusCode)501, $"Cannot Disconnect doge account. " + ex.Message); } }