/*==================================================================*\ ###################################################################### # eDirectory 4.0.1 - Licence Number L62338e2 # # ------------------------------------------------------------------ # # Copyright 2005 Arca Solutions, Inc. All Rights Reserved. # # # # This file may not be redistributed in whole or part. # # # # ---------------- eDirectory IS NOT FREE SOFTWARE ----------------- # # # # http://www.edirectory.com | http://www.edirectory.com/license.html # ###################################################################### \*==================================================================*/ # ---------------------------------------------------------------------------------------------------- # * FILE: /conf/preconfig.inc.php # ---------------------------------------------------------------------------------------------------- error_reporting(E_ALL ^ E_NOTICE); # ---------------------------------------------------------------------------------------------------- # SUPPORT HTACCESS # ---------------------------------------------------------------------------------------------------- define(SUPPORT_HTACCESS, true); # ---------------------------------------------------------------------------------------------------- # INCLUDE GENERAL CONFIG # ---------------------------------------------------------------------------------------------------- include("config.inc.php"); ?> /*==================================================================*\ ###################################################################### # eDirectory 4.0.1 - Licence Number L62338e2 # # ------------------------------------------------------------------ # # Copyright 2005 Arca Solutions, Inc. All Rights Reserved. # # # # This file may not be redistributed in whole or part. # # # # ---------------- eDirectory IS NOT FREE SOFTWARE ----------------- # # # # http://www.edirectory.com | http://www.edirectory.com/license.html # ###################################################################### \*==================================================================*/ # ---------------------------------------------------------------------------------------------------- # * FILE: /listingresults.php # ---------------------------------------------------------------------------------------------------- # ---------------------------------------------------------------------------------------------------- # LOAD CONFIG # ---------------------------------------------------------------------------------------------------- include("./conf/loadconfig.inc.php"); # ---------------------------------------------------------------------------------------------------- # MOD-REWRITE (Must be the first include loaded) # ---------------------------------------------------------------------------------------------------- include(EDIRECTORY_ROOT."/includes/code/mod_rewrite.inc"); # ---------------------------------------------------------------------------------------------------- # VALIDATION # ---------------------------------------------------------------------------------------------------- include(EDIRECTORY_ROOT."/includes/code/validate_querystring.php"); # ---------------------------------------------------------------------------------------------------- # AUX # ---------------------------------------------------------------------------------------------------- extract($_GET); # ---------------------------------------------------------------------------------------------------- # RESULTS # ---------------------------------------------------------------------------------------------------- #################################################################################################### ### PAY ATTENTION - SAME SIMPLE SEARCH ### PAY ATTENTION - SAME KEYWORD SEARCH ### PAY ATTENTION - SAME CATEGORY SEARCH ### - RESULTS.PHP ### - LISTINGRESULTS.PHP ### - PROMOTIONRESULTS.PHP ### - EVENTRESULTS.PHP ### - CLASSIFIEDRESULTS.PHP ### - ARTICLERESULTS.PHP #################################################################################################### // Page Browsing ///////////////////////////////////////// $table = "Listing"; // Category auxiliar code -------------------- if($category_id) { $sql_aux = " (Listing_Category.category_id = '$category_id' "; $sql_aux .= " OR Listing_Category.parent_level1 = '$category_id' "; $sql_aux .= " OR Listing_Category.parent_level2 = '$category_id' "; $sql_aux .= " OR Listing_Category.parent_level3 = '$category_id' "; $sql_aux .= " OR Listing_Category.parent_level4 = '$category_id')"; $sql_category[] = $sql_aux; $sql_category[] = " Listing.id = Listing_Category.listing_id "; $sql_where[] = "(".implode(" AND ", $sql_category).")"; // THIS LINE //$table = "Listing, Listing_Category USE INDEX (category_id, category_search)"; // WAS REPLACED BY THIS LINE $table = "Listing, Listing_Category"; // BECAUSE THAT WAS BROKEN DOWN THE MYSQL SERVER } // ------------------------------------------- // Location --------------------------------- if ($country_id) $sql_location[] = " Listing.country_id = '$country_id' "; if ($state_id) $sql_location[] = " Listing.state_id = '$state_id' "; if ($region_id) $sql_location[] = " Listing.region_id = '$region_id' "; if ($city_id) $sql_location[] = " Listing.city_id = '$city_id' "; if ($area_id) $sql_location[] = " Listing.area_id = '$area_id' "; if ($sql_location) $sql_where[] = "(".implode(" AND ", $sql_location).")"; // ------------------------------------------- // Keyword ----------------------------------- if ($keyword) { $keyword = str_replace("\\", "", $keyword); $_GET["keyword"] = $keyword; // Retrieve full text minimum word length $dbObj = db_getDBObject(); $sql= "SHOW VARIABLES LIKE 'ft_min_word_len'"; if(mysql_num_rows($dbObj->query($sql))>0){ $ft_min_word_len = mysql_result($dbObj->query($sql),0,1); // Check if mysql can perform full text search or not. if(is_numeric($ft_min_word_len)) { $words_arr = explode(" ",$keyword); if(count($words_arr) >= 2){ foreach($words_arr as $each_word) { if(strlen($each_word) <= $ft_min_word_len-1) { $force_text_search = true; break; } } } } } /* if keyword has 3 letters or less than it */ if (strlen($keyword) <= 3) { $skeyword = Inflector::singularize($keyword); $pkeyword = Inflector::pluralize($keyword); $formated_keyword = substr(db_formatString($keyword), 1, strlen(db_formatString($keyword))-2); $formated_skeyword = substr(db_formatString($skeyword), 1, strlen(db_formatString($skeyword))-2); $formated_pkeyword = substr(db_formatString($pkeyword), 1, strlen(db_formatString($pkeyword))-2); unset($sql_aux); if($formated_keyword) { $sql_aux[] = "Listing.title = '$formated_keyword'"; $sql_aux[] = "Listing.title LIKE '$formated_keyword %'"; $sql_aux[] = "Listing.title LIKE '% $formated_keyword'"; $sql_aux[] = "Listing.title LIKE '% $formated_keyword %'"; $sql_aux[] = "Listing.keywords = '$formated_keyword'"; $sql_aux[] = "Listing.keywords LIKE '$formated_keyword %'"; $sql_aux[] = "Listing.keywords LIKE '% $formated_keyword'"; $sql_aux[] = "Listing.keywords LIKE '% $formated_keyword %'"; } if($formated_skeyword) { $sql_aux[] = "Listing.title = '$formated_skeyword'"; $sql_aux[] = "Listing.title LIKE '$formated_skeyword %'"; $sql_aux[] = "Listing.title LIKE '% $formated_skeyword'"; $sql_aux[] = "Listing.title LIKE '% $formated_skeyword %'"; $sql_aux[] = "Listing.keywords = '$formated_skeyword'"; $sql_aux[] = "Listing.keywords LIKE '$formated_skeyword %'"; $sql_aux[] = "Listing.keywords LIKE '% $formated_skeyword'"; $sql_aux[] = "Listing.keywords LIKE '% $formated_skeyword %'"; } if($formated_pkeyword) { $sql_aux[] = "Listing.title = '$formated_pkeyword'"; $sql_aux[] = "Listing.title LIKE '$formated_pkeyword %'"; $sql_aux[] = "Listing.title LIKE '% $formated_pkeyword'"; $sql_aux[] = "Listing.title LIKE '% $formated_pkeyword %'"; $sql_aux[] = "Listing.keywords = '$formated_pkeyword'"; $sql_aux[] = "Listing.keywords LIKE '$formated_pkeyword %'"; $sql_aux[] = "Listing.keywords LIKE '% $formated_pkeyword'"; $sql_aux[] = "Listing.keywords LIKE '% $formated_pkeyword %'"; } $sql_aux[] = "Listing.category_search LIKE '% $formated_keyword %'"; $sql_where[] = "(".(implode(" OR ", $sql_aux)).")"; /* if mysql can't perform full text search with current keyword. */ } elseif($force_text_search) { $pkeyword = Inflector::pluralize($keyword); $skeyword = Inflector::singularize($keyword); $thesaurus = ($word_amount = count(explode(" ",$keyword)) == 2) ? str_replace(" ", "", $keyword) : false; $formated_keyword = substr(db_formatString($keyword), 1, strlen(db_formatString($keyword))-2); $formated_pkeyword = substr(db_formatString($pkeyword), 1, strlen(db_formatString($pkeyword))-2); $formated_skeyword = substr(db_formatString($skeyword), 1, strlen(db_formatString($skeyword))-2); $formated_thesaurus = substr(db_formatString($thesaurus), 1, strlen(db_formatString($thesaurus))-2); unset($sql_aux); if($formated_keyword) { $sql_aux[] = "Listing.title LIKE '$formated_keyword%'"; $sql_aux[] = "Listing.title LIKE '%$formated_keyword'"; $sql_aux[] = "Listing.title LIKE '%$formated_keyword%'"; $sql_aux[] = "Listing.keywords LIKE '$formated_keyword%'"; $sql_aux[] = "Listing.keywords LIKE '%$formated_keyword'"; $sql_aux[] = "Listing.keywords LIKE '%$formated_keyword%'"; } if($formated_pkeyword) { $sql_aux[] = "Listing.title LIKE '$formated_pkeyword%'"; $sql_aux[] = "Listing.title LIKE '%$formated_pkeyword'"; $sql_aux[] = "Listing.title LIKE '%$formated_pkeyword%'"; $sql_aux[] = "Listing.keywords LIKE '$formated_pkeyword%'"; $sql_aux[] = "Listing.keywords LIKE '%$formated_pkeyword'"; $sql_aux[] = "Listing.keywords LIKE '%$formated_pkeyword%'"; } if($formated_skeyword) { $sql_aux[] = "Listing.title LIKE '$formated_skeyword%'"; $sql_aux[] = "Listing.title LIKE '%$formated_skeyword'"; $sql_aux[] = "Listing.title LIKE '%$formated_skeyword%'"; $sql_aux[] = "Listing.keywords LIKE '$formated_skeyword%'"; $sql_aux[] = "Listing.keywords LIKE '%$formated_skeyword'"; $sql_aux[] = "Listing.keywords LIKE '%$formated_skeyword%'"; } if($formated_thesaurus) { $sql_aux[] = "Listing.title LIKE '$formated_thesaurus%'"; $sql_aux[] = "Listing.title LIKE '%$formated_thesaurus'"; $sql_aux[] = "Listing.title LIKE '%$formated_thesaurus%'"; $sql_aux[] = "Listing.keywords LIKE '$formated_thesaurus%'"; $sql_aux[] = "Listing.keywords LIKE '%$formated_thesaurus'"; $sql_aux[] = "Listing.keywords LIKE '%$formated_thesaurus%'"; } $sql_aux[] = "Listing.category_search LIKE '% $formated_keyword %'"; $sql_where[] = "(".(implode(" OR ", $sql_aux)).")"; /* If mysql can perform full text search with current keyword */ } else { $thesaurus = ($word_amount = count(explode(" ",$keyword)) == 2) ? str_replace(" ", "", $keyword) : false; unset($keyword_arr); foreach(explode(" ", $keyword) as $each_keyword) { $keyword_arr[] = $each_keyword."*"; $keyword_arr[] = Inflector::singularize($each_keyword); $keyword_arr[] = Inflector::pluralize($each_keyword); } $keyword_arr[] = $thesaurus; $formated_keywords = db_formatString(implode(" ",$keyword_arr)); //$priority_sql = " MATCH (Listing.title, Listing.keywords) AGAINST (".$formated_keywords." IN BOOLEAN MODE) as search_priority1"; $priority_sql = " MATCH (Listing.title, Listing.keywords, Listing.category_search, Listing.description) AGAINST (".$formated_keywords.") as search_priority1"; $sql_where[] = " MATCH (Listing.title, Listing.keywords, Listing.category_search, Listing.description) AGAINST (".$formated_keywords.")"; } } // ------------------------------------------- // Zip --------------------------------------- if ($zip) { $zip = str_replace("\\", "", $zip); $_GET["zip"] = $zip; $miles = str_replace("\\", "", $miles); $_GET["miles"] = $miles; if (ZIPCODE_PROXIMITY == "on") { if (zipproximity_getWhereZipCodeProximity($zip, $miles, $whereZipCodeProximity)) $sql_where[] = $whereZipCodeProximity; else $sql_where[] = "Listing.zip_code = '".$zip."'"; } else { $sql_where[] = "Listing.zip_code = '".$zip."'"; } } // ------------------------------------------- // ID ------------------------------------ if ($id) $sql_where[] = "Listing.id = $id"; // ------------------------------------------- // Status ------------------------------------ $sql_where[] = "Listing.status = 'A'"; // ------------------------------------------- if ($sql_where) $where .= " ".implode(" AND ", $sql_where)." "; $order = ($formated_keywords) ? "Listing.level DESC, search_priority1 DESC" : "Listing.level DESC, Listing.random_number, Listing.title"; $return_columns = ($priority_sql) ? "Listing.*, $priority_sql" : "Listing.*"; if ($category_id) { $pageObj = new pageBrowsing($table, $screen, 10, $order, "Listing.title", $letter, $where, $return_columns, "Listing", "Listing.id"); } else { $pageObj = new pageBrowsing($table, $screen, 10, $order, "Listing.title", $letter, $where, $return_columns, "Listing"); } $listings = $pageObj->retrievePage(); $paging_url = DEFAULT_URL."/listingresults.php"; // get URL - $_GET not sent in constructor because system structure exclude vars named screen and letter $urlQuery = new UrlQueryGenerator(); foreach ($_GET as $name => $value){ if ($name != "screen" && $name != "letter"){ $urlQuery->setParameter($name, $value); } } $url_search_params = $urlQuery->buildUrlQuery(false); // Letters Menu $letters = $pageObj->getString("letters"); foreach($letters as $each_letter) { if ($each_letter == "#") { $letters_menu .= "".strtoupper($each_letter).""; } else { $letters_menu .= "".strtoupper($each_letter).""; } } # PAGES DROP DOWN ---------------------------------------------------------------------------------------------- $pagesDropDown = $pageObj->getPagesDropDown($_GET, $paging_url, $screen, "Go to page: ", "this.form.submit();"); # -------------------------------------------------------------------------------------------------------------- # ---------------------------------------------------------------------------------------------------- # FORMS DEFINES # ---------------------------------------------------------------------------------------------------- $categoryDropDown = html_objectArraySelectBox("category_id", $categories, $category_id, "", "class='input-dd-form-searchlisting'", "All Categories"); $array = Array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'); $letterDropDown = html_selectBox("letter", $array, $array, $letter, "", "class='input-dd-simplesearch'", "All Letters"); # ---------------------------------------------------------------------------------------------------- # HEADER # ---------------------------------------------------------------------------------------------------- $extrastyle = array(DEFAULT_URL."/layout/listing_result.css", DEFAULT_URL."/layout/listing_color.css"); $banner_section = "listing"; include(EDIRECTORY_ROOT."/layout/header.php"); $user = true; ?>
if ($listings) { include("listingsearch.php"); } include("browsecategories.php"); ?> if(GOOGLE_ADS_ENABLED == "on") { echo ""; include(INCLUDES_DIR."/code/google_ads.php"); echo " "; } ?>
$contentObj = new Content(); $content = $contentObj->retrieveContentByType("Listing Results"); if ($content) { echo "".$content.""; } ?> if (!$listings) { // related categories if ($keyword) { include(INCLUDES_DIR."/views/view_related_categories.inc"); } } elseif ($listings){ // subcategories if ($_GET["category_id"]) { include(INCLUDES_DIR."/views/view_subcategories.php"); } // related categories if (!$_GET["category_id"] && $keyword) { include(INCLUDES_DIR."/views/view_related_categories.inc"); } } ?> if ($keyword) $str_search = " for ".htmlspecialchars($keyword).""; if ($category_id) { $search_category = new Category($category_id); $str_search.= " in category ".$search_category->getString("title").""; } if ($state_id || $region_id) $str_search.= " in "; if ($region_id) { $search_city = new LocationRegion($region_id); $str_search.= "".$search_city->getString("name").""; } if ($state_id && $region_id) $str_search.= ", "; if ($state_id) { $search_state = new LocationState($state_id); $str_search.= "".$search_state->getString("name").""; } if (!$search_menu){ include(INCLUDES_DIR."/views/view_categories_results.php"); } else { if ($str_search){ ?>Search results =$str_search?>} } if (!$listings) { $db = db_getDBObject(); if ($db->getRowCount("Listing") > 0) { ?>No results were found for the search criteria you requested.
$position = "advanced"; include(EDIRECTORY_ROOT."/listingsearch.php"); } else { ?>
Please try your search again.No listings registered yet.
} } elseif ($listings) { include(INCLUDES_DIR."/tables/table_paging.inc"); $control_level = 0; $level = new Level(); $locationManager =& new LocationManager(); foreach($listings as $listing) { $listing->setLocationManager($locationManager); $objReports = new Reports(); $objReports->setString("listing_id", $listing->getString("id")); $objReports->setString("report_type", LISTING_REPORT_SUMMARY_VIEW); $objReports->setString("ip", $_SERVER["REMOTE_ADDR"]); $objReports->Save(); unset($objReports); if ($listing->getNumber("level") != $control_level) { $control_level = $listing->getNumber("level"); } include(INCLUDES_DIR . "/views/view_listing_summary_" . $listing->getNumber("level") . ".inc"); } include(INCLUDES_DIR."/tables/table_paging.inc"); } ?>
if (BANNER_FEATURE == "on") { ?> $banner_section = "listing"; $banner = system_showBanner("FEATURED", $category_id, $banner_section, $amount = 2); if ($banner) { ?># ---------------------------------------------------------------------------------------------------- # FOOTER # ---------------------------------------------------------------------------------------------------- $banner_section = "listing"; include(EDIRECTORY_ROOT."/layout/footer.php"); ?>} ?> } ?> if (BANNER_FEATURE == "on") { ?> $banner_section = "listing"; $banner = system_showBanner("TEXT_AD", $category_id, $banner_section, $amount = 3); if ($banner) { ?> } ?> } ?>Advertisers
=$banner?>