Модуль Cs-cart 4.х.х , модули, патчи, настройка

Статус
В этой теме нельзя размещать новые ответы.
Друзья. Я правильно понимаю, что модуль приема платежей через Яндекс.Деньги для юр. лиц есть только в русской сборке? (на сайте яндекса написано что в cs-cart есть модуль, но в какой сборке не указано). Есть у меня каталог на cs-cart 4.2.1, работает во free режиме. Возможно ли выковырять из русской сборки cs-cart модуль "Яндекс.Деньги - Касса" и добавить себе на сайт (во фри режим)? Если такое возможно, то как это сделать?
 
Друзья. Я правильно понимаю, что модуль приема платежей через Яндекс.Деньги для юр. лиц есть только в русской сборке? (на сайте яндекса написано что в cs-cart есть модуль, но в какой сборке не указано). Есть у меня каталог на cs-cart 4.2.1, работает во free режиме. Возможно ли выковырять из русской сборки cs-cart модуль "Яндекс.Деньги - Касса" и добавить себе на сайт (во фри режим)? Если такое возможно, то как это сделать?
Зайди на Для просмотра ссылки Войди или Зарегистрируйся он бесплатный
 
  • Нравится
Реакции: dllx
мануал по выдергиваниюю ессть? интересует модули оплаты и и 1с
Принцип прост, устанавливаешь демку и оттуда вытягиваешь нужные файлы и папки при этом занулив их от ссылок и тому подобное оф.
 
Зайди на Для просмотра ссылки Войди или Зарегистрируйся он бесплатный
Благодарю! Когда искал - попадал на этот сайт, но как то не срослось у меня купить модуль за 0 рублей. Сейчас попробовал - купил бесплатно :D, скачал, поставил, подключил, всё работает.

Раз уж в эту тему пишу, может кто подскажет. Есть ли возможность в cs-cart 4.2.1 позволять пользователю оплачивать только после согласования заказа с менеджером магазина? На данный момент во время оформления заказа и выбора метода оплаты, если покупатель выбирает оплату картой, его сразу выкидывает на страницу яндекс.деньги для оплаты пластиковой картой. Специфика магазина такова, что заказ (услуга) нуждается в дополнительной договоренности между магазином и клиентом. Это может в том числе и цену изменить и привести к отказу/замене заказа. Поэтому надо сначала согласовать, а потом дать возможность оплатить.
 
РаЕсть ли возможность в cs-cart 4.2.1 позволять пользователю оплачивать только после согласования заказа с менеджером магазина?
Не знаю как на счет блокирования оплаты или подтверждения заказа со стороны менеджера через CMS, но можно сделать чтобы при оформлении заказа клиент подтверждал договор-оферт (что-то вроде лицензионного соглашения) в котором в первой строке прописать требование согласования заказа с менеджером перед оплатой. Это даже с юридической точки зрения правильно. Не буду излагать здесь всю информацию, все легко найдете сами. Будет очень полезно как владельцу интернет-магазина.
 
А подскажите, как можно решить проблему с валютами, мне нужно забивать разные позиции в разных валютах, может кто реализовывал?
Нашел такой модуль Для просмотра ссылки Войди или Зарегистрируйся может у кого есть?
 
А подскажите, как можно решить проблему с валютами, мне нужно забивать разные позиции в разных валютах, может кто реализовывал?
Нашел такой модуль Для просмотра ссылки Войди или Зарегистрируйся может у кого есть?
Есть решение для 3 версии. Возможно сможешь сам перенести на 4. Отдам бесплатно, с условием, что выложишь тут )))
 
  • Нравится
Реакции: rgrg
(Никто не ответил, решил сам дописать, может кому пригодится.
Проблема: Есть основная валюта, товар приходит в другой валюте, курс меняется, все цены менять сложно.
Что делает модуль: Дает возможность заполнять цены в одной из 4х валют (евро, дол, грн, руб), но клиенту выводить в основной валюте.
Установка:
1. Скопировать содержимое архива сюда \app\addons
2. Заходим в модули и активируем его.
3. Пару правок в файлах
\design\backend\templates\views\products\update.tpl (86)
Находим строку
Код:
<input type="text" name="product_data[price]" id="elm_price_price" size="10" value="{$product_data.price|default:"0.00"|fn_format_price:$primary_currency:null:false}" class="input-long" />
После этого вставляем
Код:
<select name="product_data[product_currency]">
    <option {if $product_data.product_currency=="0"}selected="selected"{/if} value="0">Гривна</option>
    <option {if $product_data.product_currency=="1"}selected="selected"{/if} value="1">Доллар</option>
    <option {if $product_data.product_currency=="2"}selected="selected"{/if} value="2">Евро</option>
    <option {if $product_data.product_currency=="3"}selected="selected"{/if} value="3">Рубль</option>
</select>

\app\controllers\frontend\products.php (96)
Находим
Код:
if (!empty($products)) {
      $_SESSION['continue_url'] = Registry::get('config.current_url');
}
После этого вставляем
Код:
for ($i=0; $i < count($products); $i++) {
           switch($products[$i]['product_currency'])
            {
                case 0:
                    $products[$i]['price'] = $products[$i]['price']*Registry::get('addons.extra_currencies.currency_uah');
                    break;
                case 1:
                    $products[$i]['price'] = $products[$i]['price']*Registry::get('addons.extra_currencies.currency_usd');
                    break;
                case 2:
                    $products[$i]['price'] = $products[$i]['price']*Registry::get('addons.extra_currencies.currency_eur');
                    break;
                case 3:
                    $products[$i]['price'] = $products[$i]['price']*Registry::get('addons.extra_currencies.currency_rub');
                    break;
            }
        }

Ниже находим
Код:
if (empty($product)) {
        return array(CONTROLLER_STATUS_NO_PAGE);
    }
После этого вставляем
Код:
switch($product['product_currency'])
        {
            case 0:
                $product['price'] = $product['price']*Registry::get('addons.extra_currencies.currency_uah');
                break;
            case 1:
                $product['price'] = $product['price']*Registry::get('addons.extra_currencies.currency_usd');
                break;
            case 2:
                $product['price'] = $product['price']*Registry::get('addons.extra_currencies.currency_eur');
                break;
            case 3:
                $product['price'] = $product['price']*Registry::get('addons.extra_currencies.currency_rub');
                break;
        }

\app\controllers\frontend\categories.php (93)
Находим
Код:
fn_gather_additional_products_data($products, array(
            'get_icon' => true,
            'get_detailed' => true,
            'get_additional' => true,
            'get_options' => true,
            'get_discounts' => true,
            'get_features' => false
        ));
После этого вставляем
Код:
for ($i=0; $i < count($products); $i++) {
           switch($products[$i]['product_currency'])
            {
                case 0:
                    $products[$i]['price'] = $products[$i]['price']*Registry::get('addons.extra_currencies.currency_uah');
                    break;
                case 1:
                    $products[$i]['price'] = $products[$i]['price']*Registry::get('addons.extra_currencies.currency_usd');
                    break;
                case 2:
                    $products[$i]['price'] = $products[$i]['price']*Registry::get('addons.extra_currencies.currency_eur');
                    break;
                case 3:
                    $products[$i]['price'] = $products[$i]['price']*Registry::get('addons.extra_currencies.currency_rub');
                    break;
            }
        }

\app\functions\fn.catalog.php (2246)
Находим
Код:
shipping_params = array();
        if (!empty($product_id)) {
            $shipping_params = db_get_field('SELECT shipping_params FROM ?:products WHERE product_id = ?i', $product_id);
            if (!empty($shipping_params)) {
                $shipping_params = unserialize($shipping_params);
            }
        }
После этого вставляем
Код:
if (!empty($product_data['product_currency'])) {
            $_data['product_currency'] = $product_data['product_currency'];
        }

UPD: Что бы работало в корзине нужно еще вставить сюда
\app\functions\fn.cart.php (35)

Находим
Код:
        $fields = array(
            '?:products.product_id',
            '?:products.company_id',
            "GROUP_CONCAT(IF(?:products_categories.link_type = 'M', CONCAT(?:products_categories.category_id, 'M'), ?:products_categories.category_id)) as category_ids",
Добавляем
Код:
        $fields = array(
            '?:products.product_id',
            '?:products.company_id',
            '?:products.product_currency',
            "GROUP_CONCAT(IF(?:products_categories.link_type = 'M', CONCAT(?:products_categories.category_id, 'M'), ?:products_categories.category_id)) as category_ids",

Ниже еще находим (175)
Код:
$_pdata['weight'] = fn_apply_options_modifiers($product['product_options'], $_pdata['weight'], 'W', array(), array('product_data' => $product));
$_pdata['amount'] = $product['amount'];
После этого вставляем
Код:
switch($_pdata['product_currency'])
        {
            case 0:
                $product['price'] = $product['price']*Registry::get('addons.extra_currencies.currency_uah');
                break;
            case 1:
                $product['price'] = $product['price']*Registry::get('addons.extra_currencies.currency_usd');
                break;
            case 2:
                $product['price'] = $product['price']*Registry::get('addons.extra_currencies.currency_eur');
                break;
            case 3:
                $product['price'] = $product['price']*Registry::get('addons.extra_currencies.currency_rub');
                break;
        }

Строки могут не совпадать у меня 4.1.х тема responsive
 

Вложения

  • extra_currencies.rar
    731 байт · Просмотры: 35
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху