Payment not tested rest done-ish
This commit is contained in:
+32
@@ -0,0 +1,32 @@
|
||||
using BadmintonBooker;
|
||||
using Microsoft.Playwright;
|
||||
|
||||
using var playwright = await Playwright.CreateAsync();
|
||||
var context = await BrowserManager.GetContextAsync(playwright);
|
||||
var page = context.Pages.Count > 0 ? context.Pages[0] : await context.NewPageAsync();
|
||||
await page.GotoAsync("https://my.hdc.mv/");
|
||||
await page.GetByRole(AriaRole.Link, new() { Name = "Login" }).ClickAsync();
|
||||
await page.GetByRole(AriaRole.Button, new() { Name = "eFaas" }).ClickAsync();
|
||||
await page.GetByRole(AriaRole.Tab, new() { Name = "Password Login" }).ClickAsync(new () { Delay = 1000 });
|
||||
await page.GetByPlaceholder("Username").FillAsync("A384347");
|
||||
var password = File.ReadAllText("password.txt");
|
||||
await page.GetByPlaceholder("Password").FillAsync(password);
|
||||
await page.GetByRole(AriaRole.Button, new() { Name = "LOGIN" }).ClickAsync();
|
||||
await page.GetByRole(AriaRole.Button, new() { Name = "CONTINUE" }).ClickAsync(new () { Delay = 1000 });
|
||||
await Task.Delay(5000);
|
||||
|
||||
var egovOtp = await OTPExtractor.GetEgovOTP(context, page);
|
||||
if (egovOtp != null)
|
||||
Console.WriteLine($"Extracted eGov OTP: {egovOtp}");
|
||||
else
|
||||
return;
|
||||
|
||||
await page.GetByPlaceholder("OTP").FillAsync(egovOtp);
|
||||
await page.GetByRole(AriaRole.Button, new() { Name = "CONTINUE" }).ClickAsync();
|
||||
await page.GetByText("Make a booking").ClickAsync();
|
||||
await page.GetByText("Fahiveni").ClickAsync();
|
||||
await page.GetByText("Sports and Leisure").ClickAsync();
|
||||
await page.GetByText(" Fahiveni Community Center ").First.ClickAsync(new () { Delay = 1500 });
|
||||
await page.GetByText("Badminton Court 1").ClickAsync(new () { Delay = 1500 });
|
||||
|
||||
Console.ReadLine();
|
||||
Reference in New Issue
Block a user