';
}
} else {
$cont_menu_link_footer = '';
}
$template = str_replace('###cont_menu_link_footer###', $cont_menu_link_footer, $template);
/* Fara astea, pagina de 404 iesea cu `--mc:###main_color###`, adica o
declaratie CSS invalida: browserul arunca variabila, iar tot ce foloseste
var(--mc) ramanea fara culoarea de brand. */
/* sexlab tine culoarea in $main_color (din /www/config_personalizat.php),
naturo si denysa in $config['main_color']. Acceptam ambele forme, ca
functia sa fie identica pe toate trei site-urile. */
$_mc = isset($main_color) ? $main_color : (isset($config['main_color']) ? $config['main_color'] : '');
$template = str_replace('###main_color###', $_mc, $template);
$template = str_replace('###logo_alt_1###', ucwords($config['domeniu_magazin']), $template);
$template = str_replace('###logo_alt_2###', ucwords($config['domeniu_magazin']), $template);
$template = str_replace('###cost_livrare_header###', '', $template);
$template = str_replace('###description###', '', $template);
$template = str_replace('###keywords###', '', $template);
$template = str_replace('###breadcrumb_snippet###', '', $template);
$template = str_replace('###og###', '', $template);
$template = str_replace('###orase_links###', '', $template);
$template = str_replace('###link_tags###', '', $template);
$template = str_replace('###info_nou_veniti###', '', $template);
$template = str_replace('###mesaj_universal###', '', $template);
$template = str_replace('###cart_link###', '/cart/', $template);
$template = str_replace('###cart_no_items###', '0', $template);
$template = str_replace('###cart_no_items2###', '0', $template);
$template = str_replace('###cart_total_price###', '0', $template);
$template = str_replace('###year###', date('Y'), $template);
$template = str_replace('###title###', 'Aceasta pagina nu poate fi afisata', $template);
ob_start();
include_once($config['path']['pages'] . '404.php');
$content = ob_get_clean();
$template = str_replace('###content###', $content, $template);
if (e_bot_google_bot()) {
$menu_dir = 'google/';
if (e_mobile()) {
$template = str_replace('###main_menu###', '', $template);
$template = str_replace('###vertical_menu_list###', '', $template);
} else {
$template = str_replace('###new_vertical_menu_list###', '', $template);
}
} else {
$menu_dir = 'visitors/';
}
$template = baga_meniurile_pentru_categorie(0, $menu_dir, $template);
echo $template;
}
/* Etapa 2b: includes/products.php vine acum de la denysa si nu le mai
defineste local, deci versiunile denysa devin cele in vigoare. */
function egalitate_filtru($filtru, $valoare_cautata, $valoare_master) {
global $matrice_masuri;
if ($filtru == 'pret') {
$valoare_master = explode('-', $valoare_master);
if ($valoare_cautata > $valoare_master[0] AND isset($valoare_master[1]) AND $valoare_cautata <= $valoare_master[1]) {
return TRUE;
} else {
return FALSE;
}
}
if (filtru_este_interval_numeric($filtru)) {
return filtru_intervale_se_intersecteaza($valoare_cautata, $valoare_master);
}
if ($filtru == 'material') {
return in_array($valoare_master, filtru_material_din_produs($valoare_cautata));
}
if (in_array($filtru, Array('power', 'control'))) {
return in_array($valoare_master, filtru_categoric_special_din_produs($filtru, $valoare_cautata));
}
if ($filtru == 'waterproof') {
return strval($valoare_cautata) === strval($valoare_master);
}
if ($filtru == 'marime') {
if (isset($matrice_masuri[$valoare_master]) AND in_array($valoare_cautata, $matrice_masuri[$valoare_master])) return TRUE;
}
if ($valoare_cautata == $valoare_master) return TRUE;
// toleranta la diacritice si majuscule: valorile din URL vin adesea fara
// diacritice (feed-ul Google Ads, useri), iar colatia DB oricum le
// echivaleaza - comparatia PHP trebuie sa faca la fel ("Rosu" == "Roșu")
if (strtolower(replaceDiacritice(strval($valoare_cautata))) == strtolower(replaceDiacritice(strval($valoare_master)))) return TRUE;
return FALSE;
}
function make_filters($filters, $url_vars) {
global $campuri_filtre;
$campuri_filtre2 = filtru_campuri_pentru_categorie($url_vars['catid']);
//if ($_SERVER['REMOTE_ADDR'] != '86.123.185.101') return '';
$str_out = '
';
$nr = 0; //calculam nr de coloane
foreach($campuri_filtre2 AS $cf) {
if (isset($filters[$cf])) $nr++;
}
if (!$nr) return '';
$nr = max(2, ceil(12 / ($nr + 1)));
$filtre_selectate = 0;
$campuri_selectate = Array();
foreach($campuri_filtre2 AS $cf) {
if (filtru_url_var_setata($url_vars, $cf)) {
$filtre_selectate++;
$campuri_selectate[$cf] = filtru_url_value_to_filter_value($cf, $url_vars[$cf]);
// URL-urile pot veni fara diacritice (ex. feed-ul Google Ads trimite
// /culoare/Rosu/ desi valoarea reala e "Roșu"); canonicalizam la
// valoarea-master din filtre, altfel comparatiile pe bytes de mai jos
// pica si dropdown-urile raman goale / neselectate
if (isset($filters[$cf]) AND is_array($filters[$cf]) AND !isset($filters[$cf][$campuri_selectate[$cf]])) {
$valoare_cautata_fd = strtolower(replaceDiacritice($campuri_selectate[$cf]));
foreach($filters[$cf] AS $valoare_master_fd => $nvm_fd) {
if (strtolower(replaceDiacritice($valoare_master_fd)) == $valoare_cautata_fd) {
$campuri_selectate[$cf] = $valoare_master_fd;
break;
}
}
}
}
}
// Filtrele active, afisate ca etichete cu ✕ pentru eliminare dintr-un tap
if ($filtre_selectate) {
$str_chips = '';
foreach($campuri_selectate AS $cf => $valoare) {
$url_fara = '/products/catid/'.$url_vars['catid'];
foreach($campuri_filtre2 AS $cf2) {
if ($cf2 == $cf) continue;
if (filtru_url_var_setata($url_vars, $cf2)) $url_fara .= '/'.$cf2.'/'.$url_vars[$cf2];
}
if (isset($url_vars['order']) AND $url_vars['order']) $url_fara .= '/order/'.$url_vars['order'];
$url_fara .= '/';
$eticheta_chip = filtru_label_optiune($cf, $valoare) . filtru_suffix_optiune($cf);
if (filtru_chip_are_prefix($cf)) $eticheta_chip = filtru_label_select($cf) . ': ' . $eticheta_chip;
$str_chips .= ''.$eticheta_chip.' ×';
}
$str_out .= '
'.$str_chips.'
';
}
$coloane = Array();
foreach($campuri_filtre2 AS $cf) {
$ucf = ucwords($cf);
if (isset($filters[$cf])) {
$nr_optiuni = 0;
$str_out2 = '';
$str_out2 .= '';
if ($nr_optiuni) $coloane[] = $str_out2;
}
}
// Pe mobil aratam primele 4 filtre, restul intra sub "Mai multe filtre"
$i_col = 0;
foreach($coloane AS $col) {
$str_out .= '