В файле admin_order_sms.php в строке 81 отсутствуют кавычки вокруг sms_sent. Должно быть так:
PHP код:$oe->set_value("event_type", "sms_sent");
admin/styles/admin.css, строка 432:
Должно быть:Код HTML:.popup-descr {padding: 0px 35px 20px 30px; font-size: 14px, sans-serif; text-align:justify;}
Код HTML:.popup-descr {padding: 0px 35px 20px 30px; font-size: 14px; font-family: sans-serif; text-align:justify;}
Не определена константа SHIPPING_CONTROL_TYPE_MSG, из-за этого в админке в настройке оформления заказа там, где выбирается вид отображения типов доставки - пусто:
Нужно прописать в admin_messages.php что-то типа:
PHP код:define("SHIPPING_CONTROL_TYPE_MSG", "Показ типа доставки");
В файле block_categories_list.php в самом верху есть строка:
CHARSET равен utf-8.PHP код:header("Content-Type: text/html; charset=" . CHARSET);
У меня из-за нее неправильно отображается страница с результатами поиска - видны только колонтитулы и меню. Остальное содержимое не видно, хотя при просмотре исходного кода все есть. Выяснил, что это происходит из-за 3-х байт EFBBBF в начале страницы.
Такой глюк происходит в FF и IE9 на локальном компе. На реальном сайте все нормально.
При удалении этой строки на локальном компе все отображается нормально.
Нужна ли вообще эта строка и зачем?
При расширенном поиске по значениям опций и с указанием ценового диапазона скриптом не учитываются цены значений опций. В случае, если цена товара формируется за счет цен значений опций, а основная цена продажи товара равна 0 - не будет найден ни один товар.
Строки выборки товара из БД по ценам формируются в файле block_products_list.php в районе строки 340 этим кодом:
Из него видно, что поле additional_price таблицы va_items_properties_values вообще не участвует в выборке.PHP код:if (strlen($lprice)) {
if (strlen($sql_where)) $sql_where .= " AND ";
$conv_price = $lprice / $currency["rate"];
$sql_where .= " ( ";
$sql_where .= " (i.is_sales=1 AND (i." . $sales_field . "+i.".$properties_field.")>=" . $db->tosql($conv_price, NUMBER) . ") ";
$sql_where .= " OR ((i.is_sales<>1 OR i.is_sales IS NULL) AND (i." . $price_field . "+i.".$properties_field.")>= " . $db->tosql($conv_price, NUMBER) . ") ";
$sql_where .= ") ";
}
if (strlen($hprice)) {
if (strlen($sql_where)) $sql_where .= " AND ";
$conv_price = $hprice / $currency["rate"];
$sql_where .= " ( ";
$sql_where .= " (i.is_sales=1 AND (i." . $sales_field . "+i.".$properties_field.")<=" . $db->tosql($conv_price, NUMBER) . ") ";
$sql_where .= " OR ((i.is_sales<>1 OR i.is_sales IS NULL) AND (i." . $price_field . "+i.".$properties_field.")<= " . $db->tosql($conv_price, NUMBER) . ") ";
$sql_where .= ") ";
}
Для решения проблемы и сохранения существующего функционала нужно вышеприведенной код заменить на следующий:
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 50 сообщение(ий)):У вас нет прав чтобы видеть скрытый текст, содержащийся здесь.
Этот код подходит для случая, когда поиск осуществляется только по одной опции, например "Размер". Для реализации поиска одновременно по нескольким опциям код усложнится.
-------------------------
Также не реализован поиск значений опций с указанием диапазона веса.
Код выборки по весу расположен в этом же файле сразу за кодом выборки по ценам, и в нем учитывается только вес самого товара (i.weight), а вес значений опций additional_weight не учитывается.
Последний раз редактировалось Aleksey; 22.11.2011 в 22:50.
После добавления фильтра ("Default filter" в дистрибутиве) на страницу (например, "Список товаров") вываливается ошибка при обращении к этой странице:
При добавленииКод:Fatal error: Call to undefined function get_filter_sql() in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\ViartShop407RE_utf8_original\blocks\block_filter.php on line 156
в начало файла block_filter.php вываливается куча сообщений:PHP код:include_once("./includes/filter_functions.php");
Вставляем в начало файла block_filter.phpКод:Notice: Undefined variable: show_sub_products in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\ViartShop407RE_utf8_original\blocks\block_filter.php on line 156 Notice: Undefined variable: category_path in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\ViartShop407RE_utf8_original\blocks\block_filter.php on line 156 Notice: Undefined variable: show_sub_products in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\ViartShop407RE_utf8_original\blocks\block_filter.php on line 195 Notice: Undefined variable: category_path in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\ViartShop407RE_utf8_original\blocks\block_filter.php on line 195
и фильтр таки появляется на странице.PHP код:error_reporting(0);