public static Address LookupUser(String userName, String password) { Address returnValue = new Address(); returnValue.Success = true; try { // Assume this was created previously. Hashtable hashTable = new Hashtable(); AdminKeys key = new AdminKeys() { Password= "******", UserName= "******" }; Address address = new Address() { Name = "My Address", PhoneNumber = "816-555-1212", State = "MO", Street = "1221 Harrison Street", Zip = "64106" }; hashTable.Add(key, address); // Now look for thekey AdminKeys tryKey = new AdminKeys() { UserName = userName, Password = password }; Address foundAddress = (Address)hashTable[tryKey]; if (foundAddress != null) { foundAddress.Success = true; return foundAddress; } else { returnValue.Success = false; returnValue.ErrorString = "Could not find the username and password you supplied"; } } catch (Exception ex) { returnValue.Success = false; returnValue.ErrorString = ex.Message; } return returnValue; }
public static bool UserIsAdmin(HttpContextBase httpContext) { var adminCookie = CookieService.Get(httpContext, "admin"); if (adminCookie == null) { return(false); } return(AdminKeys.ValidateAdminKey(adminCookie.Value)); }
public static IMvcBuilder AddTideEndpoint(this IServiceCollection services, AdminKeys keys) { services.AddSingleton(keys.CreateVendorConfig()); //services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(options => //{ // options.TokenValidationParameters = new TokenValidationParameters // { // ValidateIssuerSigningKey = true, // IssuerSigningKey = config.GetSessionKey(), // ValidateIssuer = false, // ValidateAudience = false // }; //}); var assembly = typeof(VendorController).Assembly; return(services.AddControllers().AddApplicationPart(assembly)); }
public async Task <IHttpActionResult> withdraw(txencrypted txdetails) { if (StkHelper.checkTxHash(txdetails)) { thashdetails thashresp = new thashdetails(); var txHash = ""; var context = new stakingapiEntities(); var keys = context.stk_admin.FirstOrDefault(); AdminKeys keystosend = new AdminKeys { }; var metamaskdetails = context.stk_users.Where(x => x.metamask == txdetails.metamask).FirstOrDefault(); if (metamaskdetails == null) { return(BadRequest("Invalid Wallet address")); } var account = new Account(keys.private_key); var web3 = new Nethereum.Web3.Web3(account, "https://mainnet.infura.io/v3/14063be7fce843b18bfbd7beae73caca"); try { string apiUrl = "https://api.etherscan.io/api?module=account&action=txlist&address=0xfE276a83012Ff9C199109137BBCe864a225cefE9&startblock=" + txdetails.blockNumber.BN + "&endblock=" + txdetails.blockNumber.BN + "&sort=asc&apikey=98RSH7SEW3Z77D683QTJCU5M447IRD7S6I"; using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(apiUrl); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage response = await client.GetAsync(apiUrl); if (response.IsSuccessStatusCode) { var data = await response.Content.ReadAsStringAsync(); thashresp = Newtonsoft.Json.JsonConvert.DeserializeObject <thashdetails>(data); } } if (thashresp != null) { //System.DateTime txTimestamp = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); //txTimestamp = txTimestamp.AddSeconds(Convert.ToDouble(thashresp.result[0].timeStamp)).ToUniversalTime(); //if (thashresp.result[0].from == txdetails.metamask.ToLower() && thashresp.result[0].to == keys.stkcontractAddress && thashresp.result[0].value == txdetails.transactionFee.Transactionfee /*&& txTimestamp.AddMinutes(30) >= DateTime.UtcNow*/) //{ var receiverAddress = txdetails.metamask; var transferHandler = web3.Eth.GetContractTransactionHandler <TransferFunction>(); var transfer = new TransferFunction() { To = receiverAddress, TokenAmount = Web3.Convert.ToWei((BigDecimal)metamaskdetails.total_reward), GasPrice = Nethereum.Web3.Web3.Convert.ToWei(txdetails.gasPrice.GasPrice, UnitConversion.EthUnit.Gwei), Gas = txdetails.gasLimit.GasLimit }; var transactionReceipt = await transferHandler.SendRequestAndWaitForReceiptAsync(keys.zinTokenAddress, transfer); txHash = transactionReceipt.TransactionHash; using (DbContextTransaction dbTran = context.Database.BeginTransaction()) { try { keystosend.rewards = metamaskdetails.total_reward; metamaskdetails.zin_in_wallet = metamaskdetails.zin_in_wallet + metamaskdetails.total_reward; metamaskdetails.total_reward = 0; context.SaveChanges(); dbTran.Commit(); } catch (Exception ex) { dbTran.Rollback(); return(BadRequest(ex.Message)); } } //} } return(Json(new { status = 200, message = "success", result = txHash })); } catch (Exception Ex) { var message = Ex.Message; return(BadRequest(Ex.InnerException.Message)); } //return Json(new { status = 200, message = "success", result = "Ok" }); } else { return(BadRequest("Transaction details does not match with the blockchain provider")); } }
public override void Execute() { AdminKeys.ClearUnused(); }