Addiction and Treatment Statistics for Bradford, Vermont
July 27, 2020
Bradford is a tiny town of just over 2,700 people located in east-central Vermont. The town is known for its scenic mountain views and its impressive historic district that is listed on the National Register of Historic Places. The Bradford Public Library and the Old Church Theater are also points of interest for anyone with a love of historic buildings.
//$startTime = microtime(true);
require_once 'inc/db.php';
require_once 'inc/lookups.php';
$requestLookup = $requestLookup ? $requestLookup : sanitize_text_field($_GET['lookup']);
$requestState = $requestState ? $requestState : sanitize_text_field($_GET['state']);
$requestCity = $requestCity ? $requestCity : sanitize_text_field($_GET['city']);
$requestLocation = $requestLocation? $requestLocation : sanitize_text_field($_GET['location']);
$dataOnly = $dataOnly ? $dataOnly : (bool) $_GET['dataonly'];
if ($requestLookup) {
if (array_key_exists($requestLookup, $lookupGroups)) {
$lookup = $requestLookup;
if (is_array($lookupGroups[$lookup])) {
$lookupGroup = $lookupGroups[$lookup];
}
$lookupName = $lookupTitles[$lookup];
}
if (!$lookup) {
$err['lookup'] = "Sorry, we couldn't find that category.";
}
}
if ($requestState && $lookup) {
$stateSlug = str_replace('-'.$requestLookup, '', $requestState);
$state = Model::factory('State')->where('url', $stateSlug)->find_one();
if (!$state) {
$err['state'] = "Sorry, we couldn't find that state.";
$is404 = true;
}
}
if ($requestCity && $state) {
$city = $state->city()->where('url', $requestCity)->find_one();
if (!$city) {
$err['city'] = "Sorry, we couldn't find that city.";
$is404 = true;
}
}
if ($requestLocation && $city ) {
/* Fetch Location Only under primary Lookup*/
if($lookup=='rehab-centers')
$location = $city->location()->where('url', $requestLocation)->find_one();
if (!$location) {
$err['location'] = "Sorry, we couldn't find that location.";
$is404 = true;
}
/* Special Header Addons - Locations Under Sub Lookups*/
if($lookup!='rehab-centers')
$sublookup_head = true;
}
/***
* Let's work backwards with what we have.
***/
// City Table Column Selector :: Num Locations by Lookup
switch($lookup){
case 'inpatient-rehab-centers' : $col = 'num_inpa'; break;
default : $col = 'num_locations';
}
if ($location) {
$attributes['S'] = $attributes['T'] = $attributes['D'] = $attributes['P'] = array();
foreach ($location->attribute()->find_many() as $attribute) {
$attributes[$attribute->type][] = $attribute;
}
$mapAddress = urlencode($location->location_street1 . ' ' . $location->location_street2 . ' ' . $city->name . ' ' . $state->abbr);
if ($dataOnly) {
// Reserved for location data-only
} else {
include_once 'templates/location.php';
}
}
else if ($city) {
if ($lookup == 'inpatient-rehab-centers') {
// Special case; exclude outpatient rehabs from inpatient list
$locations = ORM::for_table('location')
->raw_query('SELECT location.*
FROM location JOIN attribute_location ON location.id = attribute_location.location_id
WHERE location.city_id = ?
AND attribute_location.attribute_id IN (25,26,27)
AND location.id NOT IN (
SELECT location_id
FROM attribute_location
WHERE attribute_id = 23
)
GROUP BY location.id', array($city->id))
->find_many();
}
elseif ($lookupGroup) {
$built_re_state = explode('-'.$requestLookup,$requestState)[0];
$build_redirect = '/rehab-centers/'.$built_re_state.'-rehab-centers/'.$requestCity.'/';
header("HTTP/1.1 301 Moved Permanently");
header('Location: https://www.rehabcenter.net' . $build_redirect);
exit();
// Standard lookups
//$locations = ORM::for_table('location')->where('location.city_id', $city->id)->join('attribute_location', array('location.id', '=', 'attribute_location.location_id'))->where_in('attribute_location.attribute_id', $lookupGroup)->group_by('location.id')->find_many();
}
else {
// Show all rehab centers
$locations = $city->location()->find_many();
}
/* Show City Page Only if # Segments exist*/
if(count($segments)==3&&!$is404){
if ($dataOnly) {
// Reserved for city data-only
include_once 'templates/city-data.php';
} else {
include_once 'templates/city.php';
}
}
}elseif ($state) {
if ($lookup == 'inpatient-rehab-centers') {
// Special case; exclude outpatient rehabs from inpatient list
$cities = ORM::for_table('city')
->raw_query('SELECT city.*
FROM city
JOIN location ON city.id = location.city_id
JOIN attribute_location ON location.id = attribute_location.location_id
WHERE city.state_id = ?
AND attribute_location.attribute_id IN (25,26,27)
AND location.id NOT IN (
SELECT location_id
FROM attribute_location
WHERE attribute_id = 23
)
GROUP BY city.id', array($state->id))
->find_many();
}
else if ($lookupGroup) {
$cities = ORM::for_table('city')->select('city.*')->where('city.state_id', $state->id)->join('location', array('city.id', '=', 'location.city_id'))->join('attribute_location', array('location.id', '=', 'attribute_location.location_id'))->where_in('attribute_location.attribute_id', $lookupGroup)->group_by('city.id')->find_many();
}
else {
$cities = $state->city()->find_many();
}
// Let's make sure we only have # segments on the URL array(3)
if(count($segments)==2){
if ($dataOnly) {
include_once 'templates/state-data.php';
} else {
include_once 'templates/state.php';
}
}
}
else if ($lookup&&!$is404) {
$states = Model::factory('State')->find_many();
if ($dataOnly&&!$is404) {
include_once 'templates/lookup-data.php';
} else {
include_once 'templates/lookup.php';
}
}
else {
$is404 = true;
header('HTTP/1.0 404 Not Found');
}
// $endTime = microtime(true);
//echo '';
?>