Skip to content

Instantly share code, notes, and snippets.

@iggyvolz
Created September 6, 2020 17:34
Show Gist options
  • Save iggyvolz/fda7a1efde795e4d24868e815c6c07fb to your computer and use it in GitHub Desktop.
Save iggyvolz/fda7a1efde795e4d24868e815c6c07fb to your computer and use it in GitHub Desktop.
<?php
libxml_use_internal_errors(true);
$dom = new DOMDocument();
$dom->loadHTMLFile("https://www.rit.edu/ready/dashboard");
$x = new DOMXPath($dom);
$alertLevel = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[1]/div/div/div/div/div/div[3]/div/div/div/div/div/a")[0]->textContent);
$lastUpdate = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[1]/div/div/div/div/div/div[4]/div/div/p/strong")[0]->textContent);
$newPositiveStudents = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[2]/div/div/div/div[2]/div/div[2]/div/div/div/div/div[1]/div/p")[0]->textContent);
$newPositiveEmployees = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[2]/div/div/div/div[2]/div/div[2]/div/div/div/div/div[2]/div/p")[0]->textContent);
$totalPositiveStudents = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[2]/div/div/div/div[2]/div/div[4]/div/div/div/div/div[1]/div/p")[0]->textContent);
$totalPositiveEmployees = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[2]/div/div/div/div[2]/div/div[4]/div/div/div/div/div[2]/div/p")[0]->textContent);
$quarantinedOnCampus = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[3]/div/div/div/div[2]/div/div[3]/div/div/div/div/div[1]/div/p")[0]->textContent);
$quarantinedOffCampus = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[3]/div/div/div/div[2]/div/div[3]/div/div/div/div/div[2]/div/p")[0]->textContent);
$isolatedOnCampus = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[3]/div/div/div/div[2]/div/div[5]/div/div/div/div/div[1]/div/p")[0]->textContent);
$isolatedOffCampus = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[3]/div/div/div/div[2]/div/div[5]/div/div/div/div/div[2]/div/p")[0]->textContent);
$bedsAvailable = trim($x->query("/html/body/div[3]/main/div[2]/div[4]/div[4]/div/div/div/div[2]/div/div[2]/div/p")[0]->textContent);
if(file_exists(__DIR__ . "/lastdashboardupdate") && trim(file_get_contents(__DIR__ . "/lastdashboardupdate") === $lastUpdate)) die();
file_put_contents(__DIR__ . "/lastdashboardupdate", $lastUpdate);
ob_start();
?>
RIT Ready dashboard has been updated!
Last updated: <?= $lastUpdate ?>
RIT Covid Level: <?= $alertLevel ?>
New Positive Cases from past 14 days: <?= $newPositiveStudents ?> students, <?= $newPositiveEmployees ?> employees
Total Positive Cases since August 19th: <?= $totalPositiveStudents ?> students, <?= $totalPositiveEmployees ?> employee
Number of students in quarantine: <?= $quarantinedOnCampus ?> on campus, <?= $quarantinedOffCampus ?> off campus
Number of students in isolation: <?= $isolatedOnCampus ?> on campus, <?= $isolatedOffCampus ?> off campus
Beds available: <?= $bedsAvailable ?>
<?php
$conts = ob_get_clean();
$curl = curl_init(trim(file_get_contents(__DIR__ . "/webhookurl")));
curl_setopt($curl, CURLOPT_HTTPHEADER, ["Content-Type:application/json"]);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true );
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
"text" => $conts
]));
curl_exec($curl);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment