fn_save_cart_content($wishlist, $auth['user_id'], 'W'); exit; } elseif ($mode == 'view_details_compact') { if ($_REQUEST['variant_id']) { $fieldsOptionsVariantsLinksToProducts = "d.product_id AS linked_product_id"; $conditionOptionsVariantsLinksToProducts = db_quote(' (?:product_options.product_id = ?i OR (?:product_options.product_id=0 AND n.product_id = ?i))', $_REQUEST['product_id'], $_REQUEST['product_id']); $conditionOptionsVariantsLinksToProducts .= db_quote(' AND d.option_variant_id =?i', $_REQUEST['variant_id']); $joinOptionsVariantsLinksToProducts = db_quote(' LEFT JOIN ?:product_global_option_links n ON ?:product_options.option_id = n.option_id '); $joinOptionsVariantsLinksToProducts .= db_quote(' JOIN ?:product_option_variants c ON ?:product_options.option_id = c.option_id'); $joinOptionsVariantsLinksToProducts .= db_quote(' JOIN ?:product_option_variants_link d ON c.variant_id = d.option_variant_id'); $optsVariantsLinksToProducts = db_get_field("SELECT " . $fieldsOptionsVariantsLinksToProducts . " FROM ?:product_options " . $joinOptionsVariantsLinksToProducts . " WHERE " . $conditionOptionsVariantsLinksToProducts . " GROUP BY c.variant_id, ?:product_options.option_id" . " LIMIT 1"); $productIds = array($optsVariantsLinksToProducts); } else { $productIds = array($_REQUEST['product_id']); } $productDataToView = fn_get_product_data_for_compare($productIds); $product_data = fn_get_product_data($productIds[0], $auth, CART_LANGUAGE, '', false, true, false, false); fn_gather_additional_product_data($product_data, false, false, false, true, false); if (!empty($product_data['product_features'])) { foreach ($product_data['product_features'] as $k => $v) { if ($v['feature_type'] == 'G' && empty($v['subfeatures'])) { continue; } $_features = $v['feature_type'] == 'G' ? $v['subfeatures'] : array($k => $v); $group_id = $v['feature_type'] == 'G' ? $k : 0; $productDataToView['feature_groups'][$k] = $v['description']; foreach ($_features as $_k => $_v) { if (in_array($_k, $_SESSION['excluded_features'])) { if (empty($productDataToView['hidden_features'][$_k])) { $productDataToView['hidden_features'][$_k] = $_v['description']; }
Tygh::$app['view']->assign('compared_products', array()); Tygh::$app['view']->display('blocks/static_templates/feature_comparison.tpl'); exit; } return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'delete_product' && !empty($_REQUEST['product_id'])) { $key = array_search($_REQUEST['product_id'], $_SESSION['comparison_list']); unset($_SESSION['comparison_list'][$key]); return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'delete_feature') { $_SESSION['excluded_features'][] = $_REQUEST['feature_id']; return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'compare') { fn_add_breadcrumb(__('feature_comparison')); if (!empty($_SESSION['comparison_list'])) { Tygh::$app['view']->assign('comparison_data', fn_get_product_data_for_compare($_SESSION['comparison_list'], $action)); Tygh::$app['view']->assign('total_products', count($_SESSION['comparison_list'])); } Tygh::$app['view']->assign('list', $list); Tygh::$app['view']->assign('action', $action); if (!empty($_SESSION['continue_url'])) { Tygh::$app['view']->assign('continue_url', $_SESSION['continue_url']); } } if ($mode == 'view_all') { $filter_id = !empty($_REQUEST['filter_id']) ? $_REQUEST['filter_id'] : 0; if (empty($filter_id)) { return array(CONTROLLER_STATUS_NO_PAGE); } list($filters) = fn_get_filters_products_count($_REQUEST); if (empty($filters[$filter_id]) || $filters[$filter_id]['feature_type'] != ProductFeatures::EXTENDED) {
Registry::get('view')->assign('compared_products', array()); Registry::get('view')->display('blocks/static_templates/feature_comparison.tpl'); exit; } return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'delete_product' && !empty($_REQUEST['product_id'])) { $key = array_search($_REQUEST['product_id'], $_SESSION['comparison_list']); unset($_SESSION['comparison_list'][$key]); return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'delete_feature') { $_SESSION['excluded_features'][] = $_REQUEST['feature_id']; return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'compare') { fn_add_breadcrumb(__('feature_comparison')); if (!empty($_SESSION['comparison_list'])) { Registry::get('view')->assign('comparison_data', fn_get_product_data_for_compare($_SESSION['comparison_list'], $action)); Registry::get('view')->assign('total_products', count($_SESSION['comparison_list'])); } Registry::get('view')->assign('list', $list); Registry::get('view')->assign('action', $action); if (!empty($_SESSION['continue_url'])) { Registry::get('view')->assign('continue_url', $_SESSION['continue_url']); } } if ($mode == 'view_all') { $filter_id = !empty($_REQUEST['filter_id']) ? $_REQUEST['filter_id'] : 0; if (empty($filter_id)) { return array(CONTROLLER_STATUS_NO_PAGE); } list($filters) = fn_get_filters_products_count($_REQUEST); if (empty($filters[$filter_id])) {
Tygh::$app['view']->assign('compared_products', array()); Tygh::$app['view']->display('blocks/static_templates/feature_comparison.tpl'); exit; } return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'delete_product' && !empty($_REQUEST['product_id'])) { $key = array_search($_REQUEST['product_id'], Tygh::$app['session']['comparison_list']); unset(Tygh::$app['session']['comparison_list'][$key]); return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'delete_feature') { Tygh::$app['session']['excluded_features'][] = $_REQUEST['feature_id']; return array(CONTROLLER_STATUS_REDIRECT); } elseif ($mode == 'compare') { fn_add_breadcrumb(__('feature_comparison')); if (!empty(Tygh::$app['session']['comparison_list'])) { Tygh::$app['view']->assign('comparison_data', fn_get_product_data_for_compare(Tygh::$app['session']['comparison_list'], $action)); Tygh::$app['view']->assign('total_products', count(Tygh::$app['session']['comparison_list'])); } Tygh::$app['view']->assign('list', $list); Tygh::$app['view']->assign('action', $action); if (!empty(Tygh::$app['session']['continue_url'])) { Tygh::$app['view']->assign('continue_url', Tygh::$app['session']['continue_url']); } } if ($mode == 'view_all') { $filter_id = !empty($_REQUEST['filter_id']) ? $_REQUEST['filter_id'] : 0; if (empty($filter_id)) { return array(CONTROLLER_STATUS_NO_PAGE); } list($filters) = fn_get_filters_products_count($_REQUEST); if (empty($filters[$filter_id]) || $filters[$filter_id]['feature_type'] != ProductFeatures::EXTENDED) {