crazyyy
8/2/2017 - 1:16 PM

ajax.php

<?php

session_start();
error_reporting(E_WARNING || E_ERROR);
//error_reporting(E_ALL);

include ($_SERVER["DOCUMENT_ROOT"]."/sturtup.inc.php");
include (LIBS_PATH."functions.php");

  $calс_region = (int) $_POST["calсRegion"];
  $calс_sub_region = (int) $_POST["calсSubRegion"];
  $calс_category = (int) $_POST["calсCategory"];
  $calс_rooms = (int) $_POST["calсRooms"];
  $square_flat = (int) $_POST["squareFlat"];
  $square_land = (int) $_POST["squareLand"];

  $domain = 'http://olimp.vn.ua';

  // check, if search apartments (not buildings) - search with rooms, else - search without nubmers of rooms
  if ($calс_category == 777) {
    $select_category ='category_id IN ("6","8") AND';
    $select_rooms ='';
  } else if ($calс_category == 6) {
    $select_category = 'category_id = '.$calс_category.' AND';
    $select_rooms ='count_rooms = '. $calс_rooms .' AND';
      if ($calс_rooms === 0 ){
        $select_rooms ='count_rooms IN ("0","1","2","3","4","5","6","7") AND';
      }
  } else {
    $select_category = 'category_id = '.$calс_category.' AND';
    $select_rooms ='';
  }

  if ($calс_sub_region == 777) {
    $select_subregion ='region_id IN ("153","9","3","15","11","6","7","19","4","12","13","14","26","32") AND';
  } else {
    $select_subregion ='region_id = '. $calс_sub_region .' AND';
  }

  $calс_query_min =  $db -> select("SELECT * FROM products WHERE ". $select_category ." ". $select_subregion ." ". $select_rooms ." show_etalon = 'y' AND display = 'y' AND moderated = 'y' AND deleted = 'n' ORDER BY price_etalon ASC LIMIT 1;");

  $calc_query_avg = $db -> select("
    SELECT
      *, price_etalon, ABS(price_etalon - (SELECT AVG(price_etalon) FROM products)) AS deviation
    FROM products
    WHERE
      ". $select_category ." ". $select_subregion ." ". $select_rooms ." show_usd = 'y' AND display = 'y' AND moderated = 'y' AND deleted = 'n'
    ORDER BY deviation ASC
    LIMIT 1;
    ");

  $calс_query_max =  $db -> select("SELECT * FROM products WHERE ". $select_category. " ". $select_subregion ." ". $select_rooms ." show_etalon = 'y' AND display = 'y' AND moderated = 'y' AND deleted = 'n' ORDER BY price_etalon DESC LIMIT 1;");

  $calc_min_image =  $db -> select("SELECT * FROM products_photo WHERE product_id = ".$calс_query_min[0]['id']." AND display = 'y';");
  if ($calc_min_image[0]['url'] == NULL ) { $computed_image = $domain.'/upload/products/small/noimage.jpg'; } else {
    $computed_image = $domain.'/upload/products/small/'.$calc_min_image[0]['url'];
  }
  $calc_min_type =  $db -> select("SELECT name2 FROM category_ext WHERE category_id = ".$calс_query_min[0]['category_id']." AND lang = 1 LIMIT 1;");
  $calc_min_region_name =  $db -> select("SELECT title FROM regions_ext WHERE region_id = ".$calс_query_min[0]['region_id']." AND lang = 1 LIMIT 1;");
  $property_min->id = $calс_query_min[0]['id'];
  $property_min->href = $domain.'/object/'.$calс_query_min[0]['id'];
  $property_min->price = $calс_query_min[0]['price_etalon'];
  $property_min->categoryId = $calс_query_min[0]['category_id'];
  $property_min->type = $calc_min_type[0]['name2'];
  $property_min->regionId = $calс_query_min[0]['region_id'];
  $property_min->regionName = $calc_min_region_name[0]['title'];
  $property_min->regionLink = $domain.'/board/?region_id='.$calс_query_min[0]['category_id'];
  $property_min->square = $calс_query_min[0]['all_square'];
  $property_min->squarePlot = $calс_query_min[0]['square_plot'];
  $property_min->rooms = $calс_query_min[0]['count_rooms'];
  $property_min->numberFloor = $calс_query_min[0]['number_floor'];
  $property_min->allFloor = $calс_query_min[0]['all_floor'];
  $property_min->image = $computed_image;
  $property_min->squareString = '';

  $calc_avg_image =  $db -> select("SELECT * FROM products_photo WHERE product_id = ".$calc_query_avg[0]['id']." AND display = 'y';");
  if ($calc_avg_image[0]['url'] == NULL ) { $computed_image = $domain.'/upload/products/small/noimage.jpg'; } else {
    $computed_image = $domain.'/upload/products/small/'.$calc_avg_image[0]['url'];
  }
  $calc_avg_type =  $db -> select("SELECT name2 FROM category_ext WHERE category_id = ".$calc_query_avg[0]['category_id']." AND lang = 1 LIMIT 1;");
  $calc_avg_region_name =  $db -> select("SELECT title FROM regions_ext WHERE region_id = ".$calc_query_avg[0]['region_id']." AND lang = 1 LIMIT 1;");
  $property_avg->id = $calc_query_avg[0]['id'];
  $property_avg->href = $domain.'/object/'.$calc_query_avg[0]['id'];
  $property_avg->price = $calc_query_avg[0]['price_etalon'];
  $property_avg->categoryId = $calc_query_avg[0]['category_id'];
  $property_avg->type = $calc_avg_type[0]['name2'];
  $property_avg->regionId = $calc_query_avg[0]['region_id'];
  $property_avg->regionName = $calc_avg_region_name[0]['title'];
  $property_avg->regionLink = $domain.'/board/?region_id='.$calc_query_avg[0]['category_id'];
  $property_avg->square = $calc_query_avg[0]['all_square'];
  $property_avg->squarePlot = $calc_query_avg[0]['square_plot'];
  $property_avg->rooms = $calc_query_avg[0]['count_rooms'];
  $property_avg->numberFloor = $calc_query_avg[0]['number_floor'];
  $property_avg->allFloor = $calc_query_avg[0]['all_floor'];
  $property_avg->image = $computed_image;
  $property_avg->squareString = '';

  $calc_max_image =  $db -> select("SELECT * FROM products_photo WHERE product_id = ".$calс_query_max[0]['id']." AND display = 'y';");
  if ($calc_max_image[0]['url'] == NULL ) { $computed_image = $domain.'/upload/products/small/noimage.jpg'; } else {
    $computed_image = $domain.'/upload/products/small/'.$calc_max_image[0]['url'];
  }
  $calc_max_type =  $db -> select("SELECT name2 FROM category_ext WHERE category_id = ".$calс_query_max[0]['category_id']." AND lang = 1 LIMIT 1;");
  $calc_max_region_name =  $db -> select("SELECT title FROM regions_ext WHERE region_id = ".$calс_query_max[0]['region_id']." AND lang = 1 LIMIT 1;");
  $property_max->id = $calс_query_max[0]['id'];
  $property_max->href = $domain.'/object/'.$calс_query_max[0]['id'];
  $property_max->price = $calс_query_max[0]['price_etalon'];
  $property_max->categoryId = $calс_query_max[0]['category_id'];
  $property_max->type = $calc_max_type[0]['name2'];
  $property_max->regionId = $calс_query_max[0]['region_id'];
  $property_max->regionName = $calc_max_region_name[0]['title'];
  $property_max->regionLink = $domain.'/board/?region_id='.$calс_query_max[0]['category_id'];
  $property_max->square = $calс_query_max[0]['all_square'];
  $property_max->squarePlot = $calс_query_max[0]['square_plot'];
  $property_max->rooms = $calс_query_max[0]['count_rooms'];
  $property_max->numberFloor = $calс_query_max[0]['number_floor'];
  $property_max->allFloor = $calс_query_max[0]['all_floor'];
  $property_max->image = $computed_image;
  $property_max->squareString = '';

  echo ('[');
  echo json_encode($property_min);
  echo (',');
  echo json_encode($property_avg);
  echo (',');
  echo json_encode($property_max);
  echo (']');

?>