$product_id, ':os_id' => $os_id)); // did we get a valid location? if (!empty($location)) { $mirror = DB::get_one("SELECT mirror_mirrors.mirror_id, mirror_baseurl FROM mirror_mirrors JOIN mirror_location_mirror_map ON mirror_mirrors.mirror_id = mirror_location_mirror_map.mirror_id WHERE mirror_location_mirror_map.location_id = :location_id AND mirror_active='1' AND location_active ='1' AND mirror_baseurl LIKE :baseurl_prefix ORDER BY rand()*(1.0/mirror_rating)", PDO::FETCH_ASSOC, array( ':location_id' => $location['location_id'], ':baseurl_prefix' => $baseurl_prefix, )); // did we get a valid mirror? if (!empty($mirror)) { // if logging is enabled, insert log if (LOGGING) { DB::query("UPDATE mirror_mirrors SET mirror_count=mirror_count+1 WHERE mirror_id=?", [$mirror['mirror_id']]); DB::query("UPDATE mirror_products SET product_count=product_count+1 WHERE product_id=?", [$product_id]); } // LANGUAGE HACK if (!empty($_GET['lang'])) { //// $location['location_path'] = str_replace('x86',$_GET['lang'],$location['location_path']); $location['location_path'] = str_replace('en-US',$_GET['lang'],$location['location_path']); } // BitTorrent HACK - robbat2 if (!empty($_GET['extra'])) { $extra = $_GET['extra']; $location['location_path'] .= preg_replace('/\?.*|&.*/','',$extra); } // if we are just testing, then just print and exit. if (!empty($_GET['print'])) { print('Location: '.$mirror['mirror_baseurl'].$location['location_path']); exit; } // otherwise, by default, redirect them and exit header('Location: '.$mirror['mirror_baseurl'].$location['location_path']); exit; } } } } } catch (Exception $ex) { header("Status: 500", true, 500); echo "An unexpected error has occurred."; trigger_error($ex->getMessage() . ' ' . $ex->getTraceAsString(), E_USER_WARNING); exit(); } // if we get here, the request was invalid; redirect to Gentoo home header('Location: https://www.gentoo.org/');