Перейти к содержимому


Ajax-корзина ZZX-Cart


  • Вы не можете ответить в тему
Сообщений в теме: 9

#1 noy

    Пользователь

  • Заблокированные
  • PipPip
  • 24 сообщений
Репутация: 0
Начинающий

Отправлено 24 August 2011 - 08:41 AM

Для версии магазина ShopCMS 3.1.1 и 3.1.2

1. В админ-панели: Настройки=>Общие настройки.
- Задать в параметре "URL магазина" правильный адрес сайта
- Поставить галочку "Принудительная очистка кэша"
- Поставить галочку "Возможность заказа товаров с главной страницы"
- Выбрать пункт "AjaxCart" в "Метод работы корзины товаров"
- Выбрать пункт "Обязательна" "Регистрация пользователей"

2. В админ-панели: Информация=>Форма регистрации
- Выбрать пункт "Обязательно" напротив поля "Адрес"
- Выбрать пункт "Обязательно" напротив поля "Город"
- Выбрать пункт "Обязательно" напротив поля "Область (город)"

3. Закачать файлы (заменить):
core/tpl/user/default/index.tpl.html
core/tpl/user/default/register.tpl.html
core/tpl/user/default/shopping_cart.tpl.html
core/tpl/user/default/blocks/shopping_cart_info.tpl.html
4. Перенести папку zzx в корень сайта.
Дизайн корзины настрайвается в папке zzx. В папке расположены css файлы и gif картинки дизайна.

5. Отредактировать файл /core/tpl/user/default/head.tpl.html Найдите строчку в файле:
 
После этой строчки вставить код:
{literal}







{/literal}
Если у вас другой путь к шаблону, то главное прописать этот код в файле head.tpl.html, то есть в шапке сайта.

Найти строчки:
 function doCart(req) {literal}{{/literal}
if(document.getElementById('cart') && req["shopping_cart_value"] > 0){literal}{{/literal}
document.getElementById('cart').innerHTML = '' + doCart_act1 + ':<\/b>  ' + req["shopping_cart_items"] +
' ' + doCart_act2 + '
' + doCart_act3 + ':<\/b>  ' + req["shopping_cart_value_shown"] +
'<\/div>
# Заменить на:
function doCart(req) {literal}{{/literal}
if(document.getElementById('cart') && req["shopping_cart_value"] > 0){literal}{{/literal}
document.getElementById('cart').innerHTML = '' + doCart_act1 + ':<\/b>  ' + req["shopping_cart_items"] +
' ' + doCart_act2 + '
' + doCart_act3 + ':<\/b>  ' + req["shopping_cart_value_shown"] +
'<\/div>
' + doCart_act4 + '<\/a><\/td><\/tr><\/table><\/td><\/tr><\/table><\/div>';
document.getElementById('axcrt').innerHTML = doCart_act5;
{literal}}}{/literal} 6. В следующих файлах:
core/includes/register.php
core/includes/order3_billing.php
core/includes/order4_confirmation.php
core/includes/shopping_cart.php
Нуждо дописать строчку:
$smarty->assign( "zzx", 1 );  
Строчка дописывается в самом конце файла, но перед:
}
?>
7. В файле core/includes/order2_shipping.php

Нужно дописать строчки:
$q = db_query("select a.customerID, b.zoneID FROM ptqg_customers a, ptqg_customer_addresses b WHERE a.Login='$_SESSION[log]' AND b.customerID=a.customerID");
$r = db_fetch_row($q);
$qqq = $r[1];
$smarty->assign( "zzx", 1 );
$smarty->assign( "zzxx", $qqq );
Строчка дописывается в самом конце файла, но перед:
}
?>
8. В файле /core/tpl/user/default/order2_shipping.tpl.html
Найти строчку:
{if $shipping_costs[i] ne "n/a"}  
Ниже дописать строчку:
{if $shipping_methods[i].SID eq "2" and $zzxx eq "77"}   {else}  
Чуть ниже закрывается вся секция, при закрытии {/section}
добавить {/if}

Число 77 - означает город по-умолчанию, то есть если магазин находится в Моcкве, значит пишите число 77
Число города берется из базы магазина, в таблице городов.

Скачать:
[HIDE="1"][ATTACH]135.vB[/ATTACH][/HIDE]

#2 bratoz

    Новичок

  • Пользователи
  • Pip
  • 2 сообщений
Репутация: 0
Начинающий

Отправлено 30 August 2011 - 09:31 PM

Эхх, пример бы увидеть.
  • 0

#3 ruter

    Продвинутый пользователь

  • VIP
  • 334 сообщений
Репутация: 151
Мастер

Отправлено 30 August 2011 - 09:35 PM

Чем она отличается от встроенной ajax-корзины? Есть пример в жизни? А то мучиться, менять кучу кода, как-то не хочется не зная как и что выглядит
  • 0

#4 R.Sergey

    Администратор

  • Администраторы
  • 2810 сообщений
Репутация: 332
Мастер

Отправлено 30 August 2011 - 09:58 PM

Чем она отличается от встроенной ajax-корзины? Есть пример в жизни? А то мучиться, менять кучу кода, как-то не хочется не зная как и что выглядит


согласен, тоже хотелось бы увидеть.
  • 0

#5 Madmess

    Новичок

  • Пользователи
  • Pip
  • 2 сообщений
Репутация: 0
Начинающий

Отправлено 31 August 2011 - 10:52 AM

Никто не ставил?
  • 0

#6 Dbus

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 1116 сообщений
Репутация: 174
Мастер
  • ГородОдесса

Отправлено 31 August 2011 - 12:01 PM

слишком много скиптов, prototype... имхо фтопку.
  • 0
502 Bad Gateway

#7 R.Sergey

    Администратор

  • Администраторы
  • 2810 сообщений
Репутация: 332
Мастер

Отправлено 22 December 2011 - 03:49 AM

А может кто-нить таки попробует? )) интересно ведь чем отличается то...
  • 0

#8 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 22 December 2011 - 04:53 AM

noy, как я успел заметить, выкладывает исключительно полезные (и платные изначально) модули. Но я тоже не понял, ЗАЧЕМ нужен этот модуль, в чем фишка. Просплюсь - сейчас во мне литр водки, зуб болит, плохо соображаю - попробую поставить на тестовый сайтик.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#9 mpcom

    Пользователь

  • Пользователи
  • PipPip
  • 10 сообщений
Репутация: 0
Начинающий

Отправлено 08 February 2012 - 06:24 PM

Захотелось АПнуть тему, мало ли кто поставил, но забыл отписаться. Мне это очень интересно... Сейчас собираю грамотный магазин =)
  • 0

#10 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 08 February 2012 - 08:32 PM

Просплюсь - сейчас во мне литр водки, зуб болит, плохо соображаю - попробую поставить на тестовый сайтик.

Естественно, я проспался и забыл. Поставил. Пару раз проверил - вроде, все правильно сделал. Не работает.
------
Сведения об ошибке на веб-странице
Агент пользователя: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET4.0C; .NET4.0E)
штамп времени: Wed, 8 Feb 2012 17:42:53 UTC
Сообщение: Объект не поддерживает это свойство или метод
Строка: 5736
Символ: 7
Код: 0
URI-код: http://shop2.badisof...zx/prototype.js
-------

Лезем в строку 5736 файла prototype.js и видим там fireEvent, который из jquery. Причем jquery-1.4.4.min.js в каталоге /zzx есть, но в инструкции про нее ни слова. А у меня jquery.js подключена "ниже по тексту", чем prototype.js. Ладно, перенес jquery выше. Получил

-------
Сведения об ошибке на веб-странице
Агент пользователя: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET4.0C; .NET4.0E)
штамп времени: Wed, 8 Feb 2012 17:46:07 UTC
Сообщение: 'undefined' - есть null или не является объектом
Строка: 46
Символ: 1
Код: 0
URI-код: http://shop2.badisoft.ru/
---------

И вот тут я уже не знаю, куда дальше копать, т.к. в index.php 46-я строка содержит вызов некой функции и напрочь не может давать такой ошибки.

В общем, мне установить не удалось.

---------- Сообщение объединено ----------

Перепроверил еще раз. Нашел место, где я ошибся (не в тот файл вставил изменения). Заработало. Но с той же ошибкой (второй). Ошибку вызывает функция win.show(), которая win = new Window из window.js. Дальше я уж разбираться не стал.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)