function cw_clean_url_get_html_page_url($params) { global $app_web_dir, $tables, $current_language, $config; $language = !empty($current_language) ? $current_language : $config['default_customer_language']; $pages_types = array('product' => array('item_type' => 'P', 'item_id' => 'product_id'), 'index' => array('item_type' => 'C', 'item_id' => 'cat'), 'manufacturers' => array('item_type' => 'M', 'item_id' => 'manufacturer_id'), 'pages' => array('item_type' => 'AB', 'item_id' => 'page_id'), 'cms' => array('item_type' => 'AB', 'item_id' => 'contentsection_id'), 'search' => array('item_type' => 'Q', 'item_id' => '0')); $pt = $pages_types[$params['var']]; if ($pt) { $att = cw_call('cw_attributes_filter', array(array('field' => 'clean_url', 'item_type' => $pt['item_type']), true)); $url = cw_call('cw_attribute_get_value', array($att['attribute_id'], $params[$pt['item_id']], $language)); $url = cw_clean_url_adjust($url); $clean_url_html_attribute_ids = cw_call('cw_clean_url_html_attribute_ids', array()); if (in_array($att['attribute_id'], $clean_url_html_attribute_ids) && !empty($url)) { $url .= ".html"; } if ($url) { unset($params[$pt['item_id']]); return cw_core_assign_addition_params($app_web_dir . '/' . $url, $params, array(), $params['delimiter']); } } else { // owner clean urls $url = cw_clean_url_get_redirect_url_in_owner_urls('target=' . $params['var'], $language); if ($url) { unset($params[$pt['item_id']]); return cw_core_assign_addition_params($app_web_dir . '/' . $url . '?', $params, array(), $params['delimiter']); } } return null; }
/** * function build correct url from base URL and GET parameters * get parameters can be passed separately as params of {build_url} tag or as array in parameter "params" * * @param url - base url * @param assign - optional name of smarty var * @param params - array of get params * other params considered as part of "params" * * @example {build_url url='http://www.domain.com/cw/index.php?target=orders' mode='list' page='1' params=$array_of_get_params assign='order_url'} */ function smarty_function_build_url($params, &$smarty) { $base_url = $params['url']; $get_params = $params['params']; $assign = $params['assign']; $force_sign = $params['force_sign']; cw_unset($params, 'url', 'params', 'assign', 'force_sign'); foreach ($params as $k => $v) { $get_params[$k] = $v; } $url = cw_core_assign_addition_params($base_url, $get_params); if ($force_sign) { if (strpos($url, '?') === false) { $url .= '?'; } else { $url .= '&'; } } if (empty($assign)) { return $url; } $smarty->assign($assign, $url); return null; }
$items_per_page_targets =& cw_session_register('items_per_page_targets', array()); if (!empty($_GET['items_per_page']) || !empty($items_per_page) || !empty($_GET['view_all']) || !empty($view_all)) { if ((!empty($_GET['view_all']) || !empty($view_all)) && !empty($app_config_file['interface']['max_count_view_products']) && $current_area == 'C') { $items_per_page_targets[$target] = $app_config_file['interface']['max_count_view_products']; } else { $items_per_page_targets[$target] = empty($_GET['items_per_page']) ? intval($items_per_page) : intval($_GET['items_per_page']); } cw_core_save_navigation($customer_id, $items_per_page_targets); } if (AREA_TYPE == 'A' && $_POST['action'] == 'update_settings' && is_array($_POST['configuration']) && $_POST['category']) { global $top_message; cw_load('config'); cw_config_update($_POST['category'], $_POST['configuration']); // TOFIX: Move to addon as hook if ($_POST['category'] == 'Watermarks') { cw_load('in_images'); $watermark_url = cw_in_images_assign('watermark_url'); $watermark_url = $watermark_url['image_path']; touch($watermark_url); } $_tmp = parse_url($_POST['l_redirect']); parse_str($_tmp['query'], $merge_arr); if (!is_array($merge_arr)) { $merge_arr = array(); } $l_redirect = cw_core_assign_addition_params($_tmp['path'], $merge_arr, array(), '&', false); $top_message = array('content' => cw_get_langvar_by_name('txt_settings_was_updated'), 'type' => 'I'); if ($target != 'configuration' && $target != 'settings') { cw_header_location($l_redirect); } }
function cw_core_get_html_page_url($params) { global $app_web_dir, $tables, $current_language, $app_catalogs, $area; if ($ret = cw_get_return()) { return $ret; } # kornev, disable language for now; // $language = strtolower($params['language']?$params['language']:$current_language); return cw_core_assign_addition_params($app_web_dir . '/index.php?target=' . $params['var'], $params, array(), $params['delimiter'], isset($params['is_exclude']) ? $params['is_exclude'] : true); }
parse_str($url_info['query'], $arr); $_att = $arr['att']; if (is_array($_att[$request_prepared['att_id']])) { foreach ($_att[$request_prepared['att_id']] as $k => $v) { if (in_array($v, $request_prepared['value_selected'])) { unset($_att[$request_prepared['att_id']], $k); $ns = preg_replace("|att\\[{$request_prepared['att_id']}\\]\\[\\w*\\]={$v}|", '', $ns); } } } else { $ns = preg_replace("|att\\[{$request_prepared['att_id']}\\]\\[\\w*\\]={$request_prepared['value_id']}|", '', $ns); unset($_att[$request_prepared['att_id']]); } $att = $_att; } $url = urldecode(htmlspecialchars_decode(cw_core_assign_addition_params($ns, array('att' => $att)))); cw_ajax_add_block(array('id' => 'url', 'content' => cw_call('cw_clean_url_get_seo_url', array($url)))); } /* TODO: rework AJAX to use XML */ // Old style AJAX JSON requests if (in_array($action, array('load_address', 'update_address', 'delete_address', 'load_addresses'))) { global $user, $self_modification; $user = $customer_id; $self_modification = 1; } if ($mode == 'get_css') { header('Content-Type: text/css'); echo $config['CSS']['store']; exit; } if ($mode == 'cart_update') {