$error = true; $messageStack->add('search', ERROR_INVALID_KEYWORDS); } } if (empty($dfrom) && empty($dto) && empty($pfrom) && empty($pto) && empty($keywords)) { $error = true; $messageStack->add('search', ERROR_AT_LEAST_ONE_INPUT); } } // if ($error == true) { // xos_redirect(xos_href_link(FILENAME_ADVANCED_SEARCH_AND_RESULTS, xos_get_all_get_params())); // } $site_trail->add(NAVBAR_TITLE_2, xos_href_link(FILENAME_ADVANCED_SEARCH_AND_RESULTS, xos_get_all_get_params(array('lnc', 'cur', 'tpl', 'x', 'y')))); } ////////////////////////////////// $categories_array = xos_get_categories(array(array('id' => '', 'text' => TEXT_ALL_CATEGORIES)), '', '', false); // This is a small helper function used in xos_js_manufacturers_list() function xos_get_categories_string($parent_id = '', $entrance = false, $categories_string = '') { if ($entrance) { $categories_string = " p2c.categories_or_pages_id = '" . $parent_id . "'"; } $child_category_query = xos_db_query("select categories_or_pages_id from " . TABLE_CATEGORIES_OR_PAGES . " where parent_id = '" . (int) $parent_id . "' and categories_or_pages_status = '1'"); while ($categories = xos_db_fetch_array($child_category_query)) { $categories_string .= " or p2c.categories_or_pages_id = '" . $categories['categories_or_pages_id'] . "'"; $categories_string = xos_get_categories_string($categories['categories_or_pages_id'], '', $categories_string); } return $categories_string; } // javascript to dynamically update the manufacturers list when the category is changed function xos_js_manufacturers_list($category, $form, $field)
function xos_get_categories($categories_array = '', $parent_id = '', $indent = '', $include_empty_categories = true) { if (!is_array($categories_array)) { $categories_array = array(); } if ($parent_id == '') { $parent_id = '0'; } $categories_query = xos_db_query("select c.categories_or_pages_id, cpd.categories_or_pages_name from " . TABLE_CATEGORIES_OR_PAGES . " c, " . TABLE_CATEGORIES_OR_PAGES_DATA . " cpd where parent_id = '" . (int) $parent_id . "' and c.categories_or_pages_id = cpd.categories_or_pages_id and c.categories_or_pages_status = '1' and cpd.language_id = '" . (int) $_SESSION['languages_id'] . "' order by sort_order, cpd.categories_or_pages_name"); if ($include_empty_categories) { while ($categories = xos_db_fetch_array($categories_query)) { $categories_array[] = array('id' => $categories['categories_or_pages_id'], 'text' => $indent . $categories['categories_or_pages_name']); if ($categories['categories_or_pages_id'] != $parent_id) { $categories_array = xos_get_categories($categories_array, $categories['categories_or_pages_id'], $indent . ' '); } } } else { while ($categories = xos_db_fetch_array($categories_query)) { if (xos_count_products_in_category($categories['categories_or_pages_id']) > 0) { $categories_array[] = array('id' => $categories['categories_or_pages_id'], 'text' => $indent . $categories['categories_or_pages_name']); if ($categories['categories_or_pages_id'] != $parent_id) { $categories_array = xos_get_categories($categories_array, $categories['categories_or_pages_id'], $indent . ' ', false); } } } } return $categories_array; }