summaryrefslogtreecommitdiff
path: root/src/browser/web_browser.rs
diff options
context:
space:
mode:
authorSanto Cariotti <santo@dcariotti.me>2021-08-23 14:57:59 +0200
committerSanto Cariotti <santo@dcariotti.me>2021-08-23 14:57:59 +0200
commitc14904124c0d3bc13b8f0739eb174ee5aa7c8b50 (patch)
treee0ddf726e656d6f030a344321bc29a602d4ee6b5 /src/browser/web_browser.rs
parent9b229737e671fba989191409e927e677a4c960f7 (diff)
feat: reserve a study hour
Diffstat (limited to 'src/browser/web_browser.rs')
-rw-r--r--src/browser/web_browser.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/browser/web_browser.rs b/src/browser/web_browser.rs
index 5a855d5..10dacb7 100644
--- a/src/browser/web_browser.rs
+++ b/src/browser/web_browser.rs
@@ -188,6 +188,27 @@ impl Browser {
Ok(None)
}
+
+ // Select the row for the timetable booking
+ pub async unsafe fn select_timetable_row(&self, index: &str) -> WebDriverResult<bool> {
+ if let Some(_d) = &self.driver {
+ _d.find_element(By::Css(
+ &format!("#slotContainerTable tr:nth-child({}) td", index).to_owned()[..],
+ ))
+ .await?
+ .click()
+ .await?;
+ thread::sleep(time::Duration::from_millis(2000));
+ _d.find_element(By::Css("#partialQuestionYesNoConfirmButton:last-child"))
+ .await?
+ .click()
+ .await?;
+
+ return Ok(true);
+ }
+
+ Ok(false)
+ }
}
/// The static unsafe variable used to open a web browser