Обновился недавно до последней версии. Появились небольшие проблемы с корзиной.
1. Пропала ссылка у картинки товара. Раньше она вела на сам товар, а сейчас там href=""
2. Было название товара (ссылка), а сейчас вместо него - пустота.
/personal/basket/index.php:
1. Пропала ссылка у картинки товара. Раньше она вела на сам товар, а сейчас там href=""
2. Было название товара (ссылка), а сейчас вместо него - пустота.
/personal/basket/index.php:
Код |
---|
<? require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php"); $APPLICATION->SetTitle("Корзина"); if ($USER->IsAuthorized()) { $rsUser = CUser::GetByID($USER->GetID()); $arUser = $rsUser->Fetch(); $street = explode('/', $arUser['PERSONAL_STREET']); if (!is_array($street) || count($street) == 0) unset($street); } $arBasketItems = array(); $dbBasketItems = CSaleBasket::GetList( array( "NAME" => "ASC", "ID" => "ASC" ), array( "FUSER_ID" => CSaleBasket::GetBasketUserID(), "LID" => SITE_ID, "ORDER_ID" => "NULL" ), false, false, array("ID", "CALLBACK_FUNC", "MODULE", "PRODUCT_ID", "QUANTITY", "DELAY", "CAN_BUY", "PRICE", "WEIGHT") ); $price = 0; $arProds = array(); //$weight = 0; while ($arItems = $dbBasketItems->Fetch()) { if (strlen($arItems["CALLBACK_FUNC"]) > 0) { CSaleBasket::UpdatePrice($arItems["ID"], $arItems["CALLBACK_FUNC"], $arItems["MODULE"], $arItems["PRODUCT_ID"], $arItems["QUANTITY"]); $arItems = CSaleBasket::GetByID($arItems["ID"]); } $arProds[] = $arItems['PRODUCT_ID']; $price += $arItems['PRICE'] * $arItems['QUANTITY']; $arBasketItems[] = $arItems; // $weight += $arItems['WEIGHT'] * $arItems['QUANTITY']; } if (is_array($arBasketItems) && count($arBasketItems) > 0) { $arProdArr = array(); $arSelect = Array("ID", "NAME", "DETAIL_PAGE_URL", "PREVIEW_TEXT", "PREVIEW_PICTURE", "PROPERTY_free_delivery_moscow", "PROPERTY_free_delivery_region", "PROPERTY_free_delivery_russia"); $arFilter = Array("IBLOCK_ID" => 2, "ACTIVE_DATE" => "Y", "ACTIVE" => "Y", "ID" => $arProds); $res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize" => 300), $arSelect); while ($ob = $res->GetNextElement()) { $arFields = $ob->GetFields(); $arProdArr[$arFields['ID']] = $arFields; } ?> <fo rm name="order" method="post" action="/personal/order/"> <div id="step1" class="cart_step cart_step1"> <ul class="cart_step_ul"> <li><span>1</span><div>Покупки</div></li> <li class="no_act" style="display: list-item;"><span>2</span><div>Авторизация</div></li> <li class="no_act" style="display: list-item;"><span>3</span><div>Доставка</div></li> <li class="no_act" style="display: list-item;"><span>4</span><div>Оплата</div></li> </ul> <div class="cart_ul_clear"></div> <div class="cart_step_content"> <table class="cart_step1_table"> <thead> <tr><th colspan="2">Товар</th> <th class="th3">Цена</th> <th>Количество</th> <th>Стоимость</th> <th></th> </tr></thead> <tbody> <? foreach ($arBasketItems as $item) { ?> <tr> <td class="td1"><a class="a_img" href="<?= $item['DETAIL_PAGE_URL'] ?>"><?= CFile::ShowImage($arProdArr[$item['PRODUCT_ID']]['PREVIEW_PICTURE'], 105, 105); ?></a></td> <td class="td2"><div class="dp"><a href="<?= $item['DETAIL_PAGE_URL'] ?>"><?= $item['NAME'] ?></a></div><p><?= $arProdArr[$item['PRODUCT_ID']]['PREVIEW_TEXT'] ?></p></td> <td class="td4"> <div class="cs_cena1"><?= FormatCurrency($item['PRICE'], 'RUB'); ?></div> </td> <td class="td3"><input type="text" value="<?= intval($item['QUANTITY']) ?>" rel="<?= $item['ID'] ?>" class="input_kol_vo cart_col" name="item[<?= $item['PRODUCT_ID'] ?>]"></td> <td class="td6"><span rel="<?= $item['ID'] ?>" class="item_cost"><?= FormatCurrency($item['PRICE'] * $item['QUANTITY'], 'RUB'); ?></span></td> <td class="td5"><a rel="<?= $item['ID'] ?>" class="cart_del" href="#"><img alt="" src="/images/cart_del.gif"></a></td> </tr> <? } ?> </tbody></table> <div class="cob_stoim">Общая стоимость: <b><span class="total_cost"><?= FormatCurrency($price, 'RUB') ?></span></b></div> <? if ($USER->IsAuthorized()) { ?> <a rel="auth" class="but1 step_next" href="#step3" oncl ick="$('#to_delivery').click(); location.href='#step3';" id="auth_order_btn"><span>оформить ></span></a> <? } else { ?> <a rel="auth" class="but1 step_next" href="#step2" id="auth_order_btn"><span>оформить ></span></a> <? } ?> <div class="clear"></div> </div> <div class="cart_step_mask" style="display: none;"></div> </div> <!-- step1 end --> <div id="step2" class="cart_step cart_step2" style="display: none;"> <a name="step2"></a> <ul class="cart_step_ul"> <li><span>2</span><div>Авторизация</div></li> <li class="no_act" style="display: list-item;"><span>3</span><div>Доставка</div></li> <li class="no_act" style="display: list-item;"><span>4</span><div>Оплата</div></li> </ul> <div class="cart_ul_clear"></div> <div class="cart_step_content"> <table class="step2_table"> <tbody><tr> <td><label for="email"><b>Ваша электронная почта</b></label> </td> <td><input type="text" autocomplete="off" value="<?= $USER->GetEmail() ?>" class="lp_input1 email" id="email" name="order_email"></td> <td style="display:none;" class="order_reg"><div style="display:none"><input type="checkbox" value="1" name="order_reg"> Зарегистрироваться с этим e-mail</div></td> </tr> <tr style="display:none" class="order_login"> <td><label for="passwd"><b>Ваш пароль</b></label> </td> <td><input type="password" value="" class="lp_input1 required" id="passwd" name="order_passwd"></td> </tr> <tr style="display:none" class="order_regist"> <td><label for="npasswd"><b>Введите пароль</b></label> </td> <td> <input type="password" autocomplete="off" value="" class="lp_input1 required" id="passwd" name="new_passwd"> <input type="text" style="display:none;" autocomplete="off" value="" class="lp_input1 required" id="passwd2" name="new_passwd2"> </td> <td><input type="checkbox" name="passwd_hide" value="1"> Показать пароль</td> </tr> </tbody></table> <a class="but1 step_prev" href="#step1"><span>< вернуться к покупкам</span></a> <a rel="delivery" class="but1 step_next" id="to_delivery" href="#step3"><span>к доставке ></span></a> <div class="clear"></div> </div> <div class="cart_step_mask" style="display: none;"></div> </div> <!-- step2 end --> <div id="step3" class="cart_step cart_step3" style="display: none;"> <ul class="cart_step_ul"> <li><span>3</span><div>Доставка</div></li> <li class="no_act"><span>4</span><div>Оплата</div></li> </ul> <div class="cart_ul_clear"></div> <div class="cart_step_content"> <table class="step3_table"> <tbody><tr class="tr_no_brd tr1 deliverym"> <td class="td1">Способ доставки</td> <td class="td2"> <table> <tr> <td><input type="radio" name="delivery" id="delivery2" val="0" oncha nge="$('#russia_delivery').hide();$('#podm_delivery').hide();$('.delivery_plus').html(''); $('#tr_middlename').hide(); $('#middlename').removeClass('required');$('.delivery_plus_text').hide();" value="2"></td> <td><label for="delivery2">Москва</label></td> </tr> <tr> <td><input type="radio" name="delivery" id="delivery3" val="0" oncha nge="$('#podm_delivery').show(); $('#russia_delivery').hide();$('.delivery_plus').html(''); $('#tr_middlename').hide(); $('#middlename').removeClass('required');$('#moscow_region').val('default');$('.delivery_plus_text').hide();" value="podmosk"></td> <td><label for="delivery3">Подмосковье</label></td> </tr> <tr> <td><input type="radio" name="delivery" id="delivery4" val="290" oncha nge="$('#podm_delivery').hide(); $('#russia_delivery').show(); $('#tr_middlename').show(); $('#middlename').addClass('required');$('#regions').val('default');$('.delivery_plus_text').html('(до транспортной компании)');$('.delivery_plus_text').show();" value="45"></td> <td><label for="delivery4">Россия</label></td> </tr> </table> <input type="hidden" id="delivery_price" name="delivery_price" val="0"/> <div style="display:none" id="podm_delivery"> <select id="moscow_region" onCha nge="(delivery_info.free_region == true) ? show_delivery_price(0) : get_delivery(this.value, delivery_info.weight_region);" name="city"> <option value="default" SELECTED DISABLED>Выберите расстояние от МКАД</option> <? $db_vars = CSaleLocation::GetList( array( "SORT" => "ASC", "COUNTRY_NAME_LANG" => "ASC", "CITY_NAME_LANG" => "ASC", ), array("LID" => LANGUAGE_ID, "COUNTRY_ID" => 1208), false, false, array() ); while ($vars = $db_vars->Fetch()): if (strlen(trim($vars["CITY_NAME"])) == 0) Continue; ?> <option value="<?= $vars["ID"] ?>"><?= $vars["CITY_NAME"] ?></option> <? endwhile; ?> </select> </div> <? /* <div style="display:none" id="russia_delivery"> <select id="regions" onCha nge="(delivery_info.free_russia == true) ? show_delivery_price(0) : get_delivery2(this.value, delivery_info.weight_russia, '<?= $price ?>')" name="city"> <option value="default" SELECTED DISABLED>Выберите город</option> <? $db_vars = CSaleLocation::GetList( array( "SORT" => "ASC", "COUNTRY_NAME_LANG" => "ASC", "CITY_NAME_LANG" => "ASC", ), array("LID" => LANGUAGE_ID, "COUNTRY_ID" => 17), false, false, array() ); while ($vars = $db_vars->Fetch()): if (strlen(trim($vars["CITY_NAME"])) == 0) Continue; ?> <option value="<?= $vars["ID"] ?>"><?= $vars["CITY_NAME"] ?></option> <? endwhile; ?> </select> </div> /* $GLOBALS["APPLICATION"]->IncludeComponent( 'bitrix:sale.ajax.locations', '', array( "AJAX_CALL" => "N", "COUNTRY_INPUT_NAME" => "COUNTRY", "CITY_INPUT_NAME" => 'CITY', "CITY_OUT_LOCATION" => "Y", "LOCATION_VALUE" => $value, "ONCITYCHANGE" => "get_delivery()", ), null, array('HIDE_ICONS' => 'Y') ); ?> */ ?> <div id="delivery_div"> </div> </td> </tr> <tr> <td class="td1">Стоимость доставки</td> <td class="td2"> <div class="stoim_it"><span class="delivery_cost">0</span> руб. <span class="delivery_plus"></span><div class="delivery_plus_text"></div></div> </td> </tr> <tr> <td class="td1">Сумма к оплате</td> <td class="td2"><div class="stoim_it"><span class="total_cost_del"><?= $price ?></span> руб.</div></td> </tr> <tr> <? $arCoupons = CCatalogDiscount::GetCoupons(); if (is_array($arCoupons)) $coupon = $arCoupons[0]; else $coupon = ''; ?> <td class="td1">Купон для скидки</td> <td class="td2"><input type="text" id="coupon-input" value="<?= $coupon ?>" autocomplete="off" class="lp_input1" name="coupon" /> <div id="coupon-text"><? if ($arCoupons[0]) { ?>Купон будет использован<? } ?></div> </td> </tr> <? //CP-7V91M-OQ9L2WO?> <tr> <td style="vertical-align: top;" class="td1"><b>Способ оплаты</b></td> <td class="td2"> <table> <tbody> <? $db_ptype = CSalePaySystem::GetList($arOrder = Array("SORT" => "ASC", "PSA_NAME" => "ASC"), Array("ACTIVE" => "Y", "PERSON_TYPE_ID" => 1)); $bFirst = True; $i = 0; while ($ptype = $db_ptype->Fetch()) { $i++; //echo '<pre>'; print_r($ptype); echo '</pre>'; ?> <tr> <td><input class="paysystem" type="radio" <? if ($bFirst) { ?>checked="checked"<? } ?> id="pay<?= $i ?>" value="<? echo $ptype["ID"] ?>" name="pay" /></td> <?if($ptype['NAME'] == RbkMoney):?> <td><label for="pay<?= $i ?>"><? echo $ptype["DESCRIPTION"] ?></label></td> <?else:?> <td><label for="pay<?= $i ?>"><? echo $ptype["PSA_NAME"] ?></label></td> <?endif;?> </tr> <? $bFirst = false; } ?> </tbody></table> </td> </tr> <tr id="step3_sub"> <td style="width:240px;" class="td1">Получатель</td> <td class="td2"> <table> <tbody><tr> <td style="width: 200px;"><label for="surname">Фамилия</label> <span class="e">*</span></td> <td><input type="text" class="lp_input1 required" id="surname" name="surname" value="<?= $USER->GetLastName() ?>" /></td> </tr> <tr> <td><label for="name">Имя</label> <span class="e">*</span></td> <td><input type="text" class="lp_input1 required" id="name" name="name" value="<?= $USER->GetFirstName() ?>" /></td> </tr> <tr id="tr_middlename" style="display:none;"> <td><label for="middlename">Отчество</label> <span class="e">*</span></td> <td><input type="text" class="lp_input1 required" id="middlename" name="middlename" value="<?= $USER->GetParam('SECOND_NAME') ?>" /></td> </tr> <tr> <td><label for="phone">Номер телефона</label> <span class="e">*</span></td> <td> <table> <tbody> <tr> <td><strong class='stoim_it'>8</strong><input type="text" class="lp_input2 required" id="code" value="<?= $arUser['PERSONAL_PHONE'] ?>" name="code"></td> <td><input type="text" class="lp_input3 required" id="phone" value="<?= $arUser['PERSONAL_MOBILE'] ?>" name="phone"></td> </tr> </tbody> </table> </td> </tr> </tbody></table> </td> </tr> <tr id="schet_tr" style="display:none;"> <td class="td1" style="width:240px;">Реквизиты компании</td> <td class="td2"> <? $ar_rek_val = explode('&@', $arUser['WORK_PROFILE']); ?> <table> <tbody><tr> <td style="width: 200px;"><label for="company_name">Наименование компании</label></td> <td><input type="text" class="lp_input1" id="company_name" value="<?= $ar_rek_val[0] ?>" name="company_name"></td> </tr> <tr> <td style="width: 200px;"><label for="company_adres">Юридический адрес</label></td> <td><input type="text" class="lp_input1" id="company_adres" value="<?= $ar_rek_val[1] ?>" name="company_adres"></td> </tr> <tr> <td style="width: 200px;"><label for="company_inn">ИНН компании</label></td> <td><input type="text" class="lp_input1" id="company_inn" value="<?= $ar_rek_val[2] ?>" name="company_inn"></td> </tr> <tr> <td style="width: 200px;"><label for="company_kpp">КПП компании</label></td> <td><input type="text" class="lp_input1" id="company_kpp" value="<?= $ar_rek_val[3] ?>" name="company_kpp"></td> </tr> <tr> <td style="width: 200px;"><label for="company_bik">БИК</label></td> <td><input type="text" class="lp_input1" id="company_bik" value="<?= $ar_rek_val[4] ?>" name="company_bik"></td> </tr> <tr> <td style="width: 200px;"><label for="company_schet">Расчётный счёт</label></td> <td><input type="text" class="lp_input1" id="company_schet" value="<?= $ar_rek_val[5] ?>" name="company_schet"></td> </tr> <tr> <td style="width: 200px;"><label for="company_cor_schet">Корр. счёт</label></td> <td><input type="text" class="lp_input1" id="company_cor_schet" value="<?= $ar_rek_val[6] ?>" name="company_cor_schet"></td> </tr> </tbody></table> </td> </tr> <tr id="address_tr"> <td class="td1">Адрес доставки</td> <td class="td2"> <table> <tbody><tr> <td style="width: 200px;"><label for="city">Город</label> <span class="e">*</span></td> <td><input type="text" class="lp_input1 required" id="city" name="city" value="<?= $arUser['PERSONAL_CITY'] ?>"></td> </tr> <tr> <td style="width: 200px;"><label for="street">Улица</label> <span class="e">*</span></td> <td><input type="text" class="lp_input1 required" id="street" value="<?= $street[0] ?>" name="a_str"></td> </tr> <tr> <td>Дом <span class="e">*</span></td> <td> <table class="house_numb"> <tbody><tr> <td><input type="text" class="lp_input2 required" id="a_dom" value="<?= $street[1] ?>" name="a_dom"></td> <td><input type="text" class="lp_input2" id="a_cor" value="<?= $street[2] ?>" name="a_cor"></td> <td><input type="text" class="lp_input2" id="a_pod" value="<?= $street[3] ?>" name="a_pod"></td> <td><input type="text" class="lp_input2" id="a_eta" value="<?= $street[4] ?>" name="a_eta"></td> <td><input type="text" class="lp_input2" id="a_kva" value="<?= $street[5] ?>" name="a_kva"></td> </tr> <tr> <td><div class="std_podp"><label for="a_dom">номер</label></div></td> <td><div class="std_podp"><label for="a_cor">корпус</label></div></td> <td><div class="std_podp"><label for="a_pod">подъезд</label></div></td> <td><div class="std_podp"><label for="a_eta">этаж</label></div></td> <td><div class="std_podp"><label for="a_kva">квартира</label></div></td> </tr> </tbody></table> </td> </tr> <tr> <td>Дополнительная информация<br><div style="color: #cccccc; font-size: 12px; font-family: Arial;">дверной замок, код, домофон, и т.п.</div> </td> <td> <textarea class="step_area1" name="desc"><?= $arUser['PERSONAL_NOTES'] ?></textarea> </td> </tr> </tbody></table> </td> </tr> </tbody></table> <a class="but1 step_prev" href="#step2"><span>< вернуться к авторизации</span></a> <a rel="order" class="but1 step_next" href="#step4"><span>заказать ></span></a> <div class="clear"></div> </div> <div class="cart_step_mask"></div> </div> <!-- step3 end --> <div id="step4" class="cart_step cart_step4"> <ul class="cart_step_ul"> <li><span>4</span><div>Оплата</div></li> </ul> <div class="cart_ul_clear"></div> <div class="cart_step_content"> <table class="step4_table"> <tbody><tr> <td class="td1">Сумма заказа</td> <td class="td2"><span><span class="total_cost">17 600</span>,-</span></td> </tr> <tr> <td class="td1">Стоимость доставки</td> <td class="td2">бесплатно</td> </tr> <tr> <td class="td1">Сумма к оплате</td> <td class="td2"><span><span class="total_cost">17 600</span>,-</span></td> </tr> <tr> <td style="vertical-align: top;" class="td1"><b>Способ оплаты</b></td> <td class="td2"> <table> <tbody><tr> <td><input type="radio" id="op_rad1" name="5"></td> <td><label for="op_rad1">наличными</label></td> </tr> <tr> <td><input type="radio" id="op_rad2" name="5"></td> <td><label for="op_rad2">в кредит</label></td> </tr> <tr> <td><input type="radio" id="op_rad3" name="5"></td> <td><label for="op_rad3">банковским переводом (для физических лиц)</label></td> </tr> <tr> <td><input type="radio" id="op_rad4" name="5"></td> <td><label for="op_rad4">подарочной картой</label></td> </tr> <tr> <td><input type="radio" id="op_rad5" name="5"></td> <td><label for="op_rad5">электронными деньгами</label></td> </tr> <tr> <td><input type="radio" id="op_rad6" name="5"></td> <td><label for="op_rad6">пластиковой картой</label></td> </tr> </tbody></table> </td> </tr> </tbody></table> <a class="but1 step_prev" href="#step3"><span>< вернуться к доставке</span></a> <a rel="order" class="but1 step_next" href="#"><span>оформить заказ ></span></a> <div class="clear"></div> </div> <div class="cart_step_mask"></div> </div> <div class="clear"></div> </form> <sc ript type="text/javascript"> $("input[name=passwd_hide]").change(function(){ if($(this).attr('checked')==false){ $("input[name=new_passwd]").show(); $("input[name=new_passwd2]").hide(); }else{ $("input[name=new_passwd2]").show(); $("input[name=new_passwd]").hide(); } }); $("input[name=new_passwd]").keyup(function(){ $("input[name=new_passwd2]").val($(this).val()); }); $("input[name=new_passwd2]").keyup(function(){ $("input[name=new_passwd]").val($(this).val()); }); $(".delivery_cost").html(number_format($(".delivery_cost").html(),0,'',' ')); $(".total_cost_del").html(number_format($(".total_cost_del").html(),0,'',' ')); </sc ript> <? } else { ?> <? ShowError('Ваша корзина пуста'); ?> <? } ?> <? if ($_REQUEST['auth']) { ?> <sc ript> $(function(){ $('#auth_order_btn').click(); <? if ($USER->IsAuthorized()) { ?> $('#to_delivery').click(); <? } ?> }); </sc ript> <? } ?> <? require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/footer.php"); ?> |