function widget($args, $instance) { $price_min = PropertiesManager::getPriceMin(); $price_max = PropertiesManager::getPriceMax(); $types = PropertiesManager::getAllTypes(); $types_selected = array(); $types_filtered = array(); $features = PropertiesManager::getAllFeatures(); $features_selected = array(); $features_filtered = array(); if (isset($_GET['feature'])) { $features_selected = explode(',', $_GET['feature']); } $features_filtered = PropertiesManager::getFeaturesFiltered($_GET); if (isset($_GET['type'])) { $types_selected = explode(',', $_GET['type']); } $types_filtered = PropertiesManager::getTypesFiltered($_GET); if (isset($_GET['price'])) { $price = explode(',', $_GET['price']); $price_min_value = $price[0]; $price_max_value = $price[1]; } else { if (isset($_GET['min_price'])) { $price_min_value = $_GET['min_price']; } else { $price_min_value = $price_min; } if (isset($_GET['max_price'])) { $price_max_value = $_GET['max_price']; } else { $price_max_value = $price_max; } } $bedrooms_min = $bedrooms_min_value = 0; $bedrooms_max = $bedrooms_max_value = 20; if (isset($_GET['bedrooms'])) { if (strpos($_GET['bedrooms'], ',') !== false) { $bedrooms = explode(',', $_GET['bedrooms']); $bedrooms_min_value = $bedrooms[0]; $bedrooms_max_value = $bedrooms[1]; } else { $bedrooms_min_value = $_GET['bedrooms']; } } $bathrooms_min = $bathrooms_min_value = 0; $bathrooms_max = $bathrooms_max_value = 20; if (isset($_GET['bathrooms'])) { if (strpos($_GET['bathrooms'], ',') !== false) { $bathrooms = explode(',', $_GET['bathrooms']); $bathrooms_min_value = $bathrooms[0]; $bathrooms_max_value = $bathrooms[1]; } else { $bathrooms_min_value = $_GET['bathrooms']; } } $sq_feet_min = $sq_feet_min_value = 0; $sq_feet_max = $sq_feet_max_value = PropertiesManager::getSqFeetMax(); if (isset($_GET['sq_feet'])) { if (strpos($_GET['sq_feet'], ',') !== false) { $sq_feet = explode(',', $_GET['sq_feet']); $sq_feet_min_value = $sq_feet[0]; $sq_feet_max_value = $sq_feet[1]; } else { $sq_feet_min_value = $_GET['sq_feet']; } } $year_built_min = $year_built_min_value = PropertiesManager::getYearBuiltMin(); $year_built_max = $year_built_max_value = date('Y'); if (isset($_GET['year_built'])) { $years = explode(',', $_GET['year_built']); $year_built_min_value = $years[0]; $year_built_max_value = $years[1]; } $main_properties_page = estetico_get_properties_page_id(); $reset_url = estetico_get_properties_page_url_wpml($main_properties_page); $args = array('price_min' => $price_min, 'price_max' => $price_max, 'price_min_value' => $price_min_value, 'price_max_value' => $price_max_value, 'bedrooms_min' => $bedrooms_min, 'bedrooms_max' => $bedrooms_max, 'bedrooms_min_value' => $bedrooms_min_value, 'bedrooms_max_value' => $bedrooms_max_value, 'bathrooms_min' => $bathrooms_min, 'bathrooms_max' => $bathrooms_max, 'bathrooms_min_value' => $bathrooms_min_value, 'bathrooms_max_value' => $bathrooms_max_value, 'year_built_min' => $year_built_min, 'year_built_max' => $year_built_max, 'year_built_min_value' => $year_built_min_value, 'year_built_max_value' => $year_built_max_value, 'sq_feet_min' => $sq_feet_min, 'sq_feet_max' => $sq_feet_max, 'sq_feet_min_value' => $sq_feet_min_value, 'sq_feet_max_value' => $sq_feet_max_value, 'types' => $types, 'types_filtered' => $types_filtered, 'types_selected' => $types_selected, 'features' => $features, 'features_selected' => $features_selected, 'features_filtered' => $features_filtered, 'distance' => isset($_GET['distance']) ? $_GET['distance'] : 0, 'city' => isset($_GET['city']) ? $_GET['city'] : '', 'beds' => isset($_GET['beds']) ? $_GET['beds'] : 0, 'location_latitude' => isset($_GET['lat']) ? $_GET['lat'] : '', 'location_longitude' => isset($_GET['lng']) ? $_GET['lng'] : '', 'location' => isset($_GET['location']) ? $_GET['location'] : '', 'distances_config' => explode(',', estetico_get_setting('distances')), 'keywords' => isset($_GET['keywords']) ? $_GET['keywords'] : '', 'for_sale_rent' => isset($_GET['for_sale_rent']) ? $_GET['for_sale_rent'] : 'both', 'property_status' => isset($_GET['property_status']) ? $_GET['property_status'] : '', 'pets_allowed' => isset($_GET['pets_allowed']) ? $_GET['pets_allowed'] : '', 'reset_url' => $reset_url); estetico_load_component('widgets/properties_filter', $args); }