public function __construct($url, $sourceHash) { $this->url = $url; $this->uptodate = -1; if ($sourceHash !== false) { $hash = readExternalFile($url . '?hash'); if ($hash === $sourceHash) { $this->uptodate = 1; } elseif ($hash !== false) { $this->uptodate = 0; } } }
$totals['savers'] += 1; } } } } // ignore maximum saved diff when it's surpassed by the maximum unsaved diff foreach ($statkeys as $key) { if ($highest[$key . 'Diff'] > $highest[$key . 'SavedDiff']) { $highest[$key . 'SavedDiff'] = 0; } } // now we're going to check whether or not the mirrors are up to date $ownVersion = filemtime(__FILE__); $mirrors = array(); $mirrorValidate = true; $sourceStr = readExternalFile($sourceUrl); $sourceHash = sha1Newline($sourceStr); // if somehow github is down; don't bother validating if ($sourceStr === false) { $mirrorValidate = false; } foreach ($scriptUrls as $url) { $mirrors[] = new Mirror($url, $sourceHash); } shuffle($mirrors); // Because all mirrors are created equal. # -------------------------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------------------------- # We now have all the information we need :) #