Code Monkey home page Code Monkey logo

cms-opencart3's Introduction

yoomoney-cms-opencart3

Что такое ЮMoney

ЮMoney — это модуль для интеграции интернет-магазина с сервисами ЮKassa и ЮMoney.

Инструкция по настройке

Инструкция по настройке

Требования к CMS

  • версия 3.0.х;
  • PHP 5.4 или выше;
  • cURL.

ЮKassa

Через ЮKassa можно настроить прием платежей на сайте. Способ подходит юрлицам и ИП: для подключения нужен договор, а деньги приходят на расчетный счет компании.

По договору вы можете выбрать любой набор способов приема платежей: банковские карты, электронные кошельки, интернет-банки, наличные, баланс мобильного, кредитование. Комиссия берется с каждого успешного платежа.

Есть дополнительные опции: возвраты, холдирование и другие возможности.

Сайт ЮKassa

ЮMoney

Через ЮMoney можно без договора настроить на сайте прием платежей: клиенты смогут платить с карт и из электронных кошельков, деньги будут приходить в кошелек ЮMoney. Комиссия берется с каждого успешного платежа.

Подробные условия на сайте ЮMoney

Контакты

Если у вас есть вопросы или идеи для модуля, напишите нам: [email protected]

В письме укажите:

  • версию платформы,
  • версию модуля (его можно посмотреть на странице настроек),
  • идею или проблему,
  • снимок экрана, о котором говорите.

cms-opencart3's People

Contributors

actofgod avatar artemlopatin avatar eightyeight avatar eugenelozn avatar pavel52rus avatar sashaspi avatar tonchik-tm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cms-opencart3's Issues

Ссылка на оплату в личном кабинете чтобы оплатить позже

Здравствуйте, если клиент оплатить не смог сразу, то заказ получает статус faild и теряется поскольку клиент не может его оплатить повторно из личного кабинета или по ссылке... Это не есть хорошо.
У вас есть в планах реализовать такой функционал?

Opencart 2.1
YooMoney 2.2.2

Обновление с версии 2.0.4 на 2.0.5

В админке опенкарта (версия 3.0.2.0) во вкладке "Обновление модуля" появилась версия 2.0.5. При нажатии кнопки "Обновить модуль" происходит создание резервной копии, но модуль видимо не обновляется. Продолжает отображаться как версия 2.0.4.
Подскажите, как проверить, что модуль обновился, или устранить причину, почему не обновляется.

Большая проблема оплаты - можно изменить сумму заказа

Большая проблема оплаты - можно изменить сумму заказа
При оплате в исходном коде жулики могут изменить сумму для оплаты
Пример 5000р
В коде меняем на 500р и после проходит оплата 500р и статус заказа меняется на Выполнено

Кто продает цифровые товары - ой как будет плохо !!!!
Screenshot_1

Белый экран по ссылке для экспорта

Здравствуйте, после установки модуля при переходе по ссылке для экспорта https://XXXXX/index.php?route=extension/payment/yandex_money/market выдается белый экран. Верcия Opencart Version 3.0.3.2 (rs.2). Версия модуля последняя ycms2.oc3x.ocmod. Кэш модификаторов и шаблона неоднократно обновлял. Не подскажете в какую сторону копать?! Job,rf в логах выдается следующая 2020/09/15 18:50:42 [error] 32095#32095: *1855833 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 5.255.253.158, server: carsinstrument.ru, request: "GET /index.php?route=extension/payment/yandex_money/market HTTP/1.1", upstream: "http://127.0.0.1:8080/index.php?route=extension/payment/yandex_money/market", host: "carsinstrument.ru"
Менял default_socket_timeout = 360060 все тоже самое

ЮMoney

Будет ли пока работать старый редирект на url страницу оплаты? Вопрос про способ оплаты через Яндекс Деньги, а не Яндекс Касса.
То есть, будет ли пока поддерживаться старый url перехода к оплате?

Разделение YML на части

Всем привет!

Недавно тут задавали вопрос про белый экран и в общем-то напрашивается простое решение - сегментировать YML файл на части подобно тому как это делается для сайтмапов.

Причем тоже самое нам говорит документация самого Яндекса:

разделите большие прайс-листы (более 500 000 предложений) на несколько, предложения, которые часто меняются, соберите в одном файле: сервис быстрее загружает небольшие прайс-листы и может обрабатывать их параллельно.

Хотя речь конечно может идти и не про 500 тысяч, а даже про пару-тройку десятков тысяч товаров, чтобы гарантировать обработку запроса со стороны вашего сервера.

Коррекции затрагивают только контроллер yandex_money.php и больше никаких правок не делает (можно оформить и в виде ocmod):

public function market() {
        $per_page = 0;
        if(isset($this->request->get['per_page'])) {
            $per_page = $this->request->get['per_page'];
        }

        $page = 0;
        if(isset($this->request->get['page'])) {
            $page = $this->request->get['page'];
        }        
        
        $xml = $this->getMarketXml($per_page, $page);

        $this->response->addHeader('Content-Type: application/xml; charset=utf-8');
        $this->response->setOutput($xml);
    }
private function getMarketXml($per_page, $page) {
        $cache     = new Cache("file");
        $marketXml = $cache->get("ym_market_xml");

        $marketXml = ''; // Вопрос с кэшем нужно решать дополнительно

        if (empty($marketXml)) {
            $marketXml = $this->generateMarketXml($per_page, $page);
            $cache->set("ym_market_xml", $marketXml);
        }

        return $marketXml;
    }
private function generateMarketXml($per_page, $page) {
$this->setDelivery()
             ->setCurrencies($currency_default, $offers_currency)
             ->setCategories($categories, $allowCategories)
             ->setProducts($currency_default, $strCategoryIds, $additionalConditionMap, $per_page, $page);
}
    private function setProducts($currency_default, $strCategoryIds, $additionalConditionMap, $per_page, $page)
    {
        $this->load->model('catalog/product');
        $this->load->model('tool/image');

        $nameTemplate = explode('%', $this->config->get('yandex_money_market_name_template'));
        $products     = $this->getMarketModel()->getProducts($strCategoryIds, false);
        $length       = new \Cart\Length($this->registry);

        $startFor = 0;
        $endFor = 0;

        if($per_page <= 0 || $page <= 0 || $per_page >= count($products)) {
            $startFor = 0;
            $endFor = count($products);
        } else {
            // $per_page = 1000, $page = 1: $startFor = 0, $endFor = 1000 (999)
            // $per_page = 1000, $page = 17: $startFor = 16000, $endFor = 17000 (16999)
            $startFor = $page * $per_page - $per_page;
            $endFor = $page * $per_page;

            if($startFor > count($products)){
                $startFor = count($products);
            }

            if($endFor > count($products)){
                $endFor = count($products);
            }
        }

        //foreach ($products as $product) {
        for($i = $startFor; $i < $endFor; $i++) {
            $product = $products[$i];
}

При таких изменениях адрес к YML будет выглядеть так:
https://tratata.ta/index.php?route=extension/payment/yandex_money/market&per_page=1000&page=24

В ином случае нужны слишком большие таймауты для NGINX и PHP, чтобы дождаться генерации единого YML-файла.

P.S. Нагрузку на сервер может вызывать не только перебор товаров, но и к примеру выполнение операции $offer->addPicture($this->model_tool_image->resize($product['image'], 600, 600)); в случае, если у вас очищен кэш изображений (бонусом resize часто не только делает саму обрезку, но и генерирует дополнительное изображение в каком-нибудь WebP, чтобы обрадовать Google использованием современных форматов изображений).
P.P.S. На скорость выборки (в особенности товаров со всеми атрибутами, опциями и изображениями) может влиять отсутствие дополнительных индексов в БД. Но это уже не относится напрямую к этому модулю.

Ошибка "На этом сайте переводы недоступны"

Здравствуйте. Снова вопрос есть.

На опенкарте (3.0.2.0) заведены две витрины с разными доменными именами. Они доступны со своим набором товаров, местами пересекающимся. В админке настраиваем ЮMoney (не ЮKassa).
В поле RedirectURL указано доменное имя первой витрины.

При оплате заказа на первой витрине происходит проброс на адрес https://yoomoney.ru/quickpay/confirm.xml и ошибка "На этом сайте переводы недоступны
Если вы — владелец формы (кнопки), напишите службе поддержки ЮMoney. В сообщении укажите полный адрес сайта, на котором стоит форма (кнопка)."

При оплате на второй витрине: все отлично. Идет проброс на https://yoomoney.ru/transfer/quickpay?requestId= и есть возможность оплатить.

В чем может быть проблема ? Техподдержка ЮМоней ничего внятного сказать не может.

Второй чек выбивается 12 раз

Модуль версии 1.6.0
С 27 июля при переходе заказа в статус, указанный в настройке "Формировать второй чек при переходе заказа в статус", второй чек стал пробиваться 12 раз.
Происходит следующее:

  1. Метод hookOrderStatusChange перехватывает нужный статус и отправляет второй чек
  2. Делается запрос чеков по оплате и извлекается последний чек в массиве
  3. Перебор товаров из полученного последнего чека ищет товары со значением "payment_mode": "full_prepayment"
  4. Если такие товары в последнем чеке присутствуют, то формируется второй чек
  5. После успешной отправки второго чека метод hookOrderStatusChange вызывает изменение статуса со своим комментарием (Отправлен второй чек. Сумма %s рублей.)
  6. Изменение статуса в пункте 5 вызывает повторный цикл начиная с пункта 1
    Проблема в том, что последний чек, получаемый в пункте 2 - это самый первый чек, отправленный при оплате и у него всегда товары с атрибутом "payment_mode": "full_prepayment".
    Весь цикл крутиться до тех пор, пока последний чек в листинге (который ограничен 10 чеками) не станет одним из первых отправленных вторых чеков. Т.к. обновление листинга чеков происходит с небольшой задержкой, то успевают пробиться 11-13 чеков.

Ввиду того, что я у себя не вносил каких-то глобальных изменений в код движка, полагаю, что проблема в модуле. Возможно в методе catalog/model/extension/payment/yandex_money/Model/KassaSecondReceiptModel.php getLastReceipt имеет смысл заменить return array_pop($receipts); на return array_shift($receipts); Хотя это может не иметь смысла, судя по логам, запрос списка чеков на второй и третей итерации возвращает только первоначальный чек, вторые отправленные чеки туда не успевают попасть.

Повторная смена статуса заказа при успешной оплате

Версия модуля: 1.9.3
Возникает (предположение) если клиент "задержался" на странице оплаты - не сразу нажал вернуться в магазин
1 раз Статус заказа меняется на "оплачен"(кастомный) при получении подтверждения платежа (клиент еще не вернулся в магазин, а уведомление пришло)

В моем случае (электронный товар) товар отправляется покупателю автоматически, статус заказа меняется на "выполнен"

2 раз статус заказа меняется на "оплачен" при возврате клиента в магазин, предполагаю что при этом идет повторная коммуникация с подтверждением платежа

Ну и соответственно, товар отгружается повторно (в моем случае)

Не могу сказать, что это не корректное поведение модуля, но раз вы так оперативно отвечаете, возможно подскажете как (ладно, не будем наглеть, хотя бы где) отменить повторную смену статуса заказа если "payment_id" уже имеет запись с датой "captured_at" в базе

Не правильная работа модуля Яндекс.Маркет

Версия модуля 1.1.3
Версия OpenCart 3.0.2.0 (rs.3)

При попытке загрузить прайс лист в системе Яндекс.Маркет выдается ошибка, что не соответствует требованиям формата YMC, XMl.
При проверки вылезла такая ошибка

Fatal error: Cannot use 'Object' as class name as it is reserved in /var/www/........../catalog/model/extension/payment/yandex_money/YandexMarket/Object.php on line 5

Рекомендация переименовать имя класса

Fatal error

Здравствуйте. Установил модуль на opencart 3.0.3.6 и после нажатия кнопки редактирования модуля получаю ошибку. Проверял на двух серверах. На версии opencart 3.0.3.2 модуль успешно обновился до версии 1.7.1 и работает.

Fatal error: Uncaught Twig\Error\LoaderError: Template "extension/payment/yandex_money/kassa.twig" is not defined in "extension/payment/yandex_money.twig" at line 46. in /var/www/pw1/data/www/oc_test_storage/vendor/twig/twig/src/Loader/ArrayLoader.php:70 Stack trace: #0 /var/www/pw1/data/www/oc_test_storage/vendor/twig/twig/src/Environment.php(299): Twig\Loader\ArrayLoader->getCacheKey('extension/payme...') #1 /var/www/pw1/data/www/oc_test_storage/vendor/twig/twig/src/Environment.php(381): Twig\Environment->getTemplateClass('extension/payme...') #2 /var/www/pw1/data/www/oc_test_storage/vendor/twig/twig/src/Template.php(333): Twig\Environment->loadTemplate('extension/payme...', NULL) #3 /var/www/pw1/data/www/oc_test_storage/cache/template/84/8423b65bc64abafa7992b7af8b31b7ed1d8aea9bc6435bdff791cbfd8971b09e.php(170): Twig\Template->loadTemplate('extension/payme...', 'extension/payme...', 46) #4 /var/www/pw1/data/www/oc_test_storage/vendor/twig/twig/src/Template.php(405): __TwigTemplate_98d98c4b865162d2ab9048590b5fb436d96988b in /var/www/pw1/data/www/oc_test_storage/vendor/twig/twig/src/Loader/ArrayLoader.php on line 70

Ошибка при заказе

Ошибка при выборе Яндекс.Касса на сайте https://darisurpriz.ru (положите любой товар в корзину и выберите Яндекс.Касса)

Fatal error: 'An exception has been thrown during the rendering of a template ("This method is not added as callable: style") in "BurnEngine/template/common/footer.twig" at line 120.'
in /home/h812090007/darisurpriz.ru/docs/system/library/template/Twig/Template.php:402
Stack trace:
#0 system/library/template/Twig/Template.php(355): Twig_Template->displayWithErrorHandling(Array, Array)
#1 system/library/template/Twig/Template.php(366): Twig_Template->display(Array)
#2 /home/h812090007/darisurpriz.ru/storage/modification/system/library/template/twig.php(50): Twig_Template->render(Array)
#3 system/library/template.php(51): Template\Twig->render(Object(__TwigTemplate_bb74d504942d6d88e8cbe32e581ea85bb51997718e2df1e70517efa21cb42eed), '1')
#4 /home/h812090007/darisurpriz.ru/storage/modification/system/engine/loader.php(125): Template->render('BurnEngine/temp...', '1')
#5 /home/h812090007/darisurpriz.ru/storage/modification/catalog/controller/common/footer.php(67): Loader->view('common/footer', Array)
#6 /home/h812090007/darisurpriz.ru/storage/modification/system/engine/action.php(79): ControllerCommonFooter->index(Array)
#7 /home/h812090007/darisurpriz.ru/storage/modification/system/engine/loader.php(48): Action->execute(Object(Registry), Array)
#8 catalog/controller/extension/payment/yandex_money.php(63): Loader->controller('common/footer')

Есть ощущение, что это расширение требует ещё какое-то другое расширение, которое работает со стилями

Отправка письма при отложенной оплате

Когда клиент выбирает оплату но не оплатил, должно ему приходить уведомление на почту с ссылкой для оплаты, сейчас не приходит, и стоит клиент не уведомлен
yandex

Ошибки при сохранении настроек, создании заказа

При выборе в настройках модуля оплаты через Яндекс. Деньги и нажатии кнопки сохранить получаем то, что на первом скриншоте.
При этом если отметить в настройках Яндекс.Кассы в этом же модуле платежи через Сбербанк Бизнес Онлайн, то настройки благополучно сохраняются.
Но при оплате заказа в списке заказов он не появляется, а если создавать заказ вручную, то при переходе к оплате получаем то, что на втором скриншоте.

screenshot_20190212-055420
screenshot_20190212-062329

Периодичность (Регулярные платежи)

Здравствуйте! Спасибо за модуль.
Почему с этим модулем не работают регулярные платежи (периодичность)? При наличии в корзине товара с профилем периодичности получаем сообщение об отсутствии способов оплаты. Добавьте пожалуйста в модуль возможность работы с этими профилями.
Аннотация 2019-12-05 071100
Аннотация 2019-12-05 071156
SharedScreenshot2
SharedScreenshot3

Как добавить sales_notes?

Добрый день!
Подскажите, пожалуйста, данный модуль обладает функцией добавления sales_notes?
Если нет, то подскажите, пожалуйста, в какой папке хранится файл в который можно добавить sales_notes?

Передается неправильное значение системы налогооблажения

При создании платежа значение для системы налогооблажения берется из установленного значения в админке для налоговой ставки.

Установка налоговой ставки:
https://github.com/yandex-money/yandex-money-ycms-opencart3/blob/34328b1703fa64c6db10d8a5cbde7dbd25e0b287/src/upload/catalog/model/extension/payment/yandex_money/yandex-checkout-sdk-php/lib/Request/Payments/CreatePaymentRequestSerializer.php#L81-L83

Установки системы налогооблажения
https://github.com/yandex-money/yandex-money-ycms-opencart3/blob/34328b1703fa64c6db10d8a5cbde7dbd25e0b287/src/upload/catalog/model/extension/payment/yandex_money/yandex-checkout-sdk-php/lib/Request/Payments/CreatePaymentRequestSerializer.php#L100-L102
Используется та же функция $value = $receipt->getTaxSystemCode();

Из-за этого возникает проблема при печати чека и передачи данных в ОФД: устанавливается неправильная система налогооблажения. В моем случае при дефолтных 18%(код 4) в чеке печатается ЕНВД вместо ОСН.

Справочник кодов: https://kassa.yandex.ru/docs/guides/#kody-sistem-nalogooblozheniq

Доп инфа для дебага:
установка значения taxSystem
https://github.com/yandex-money/yandex-money-ycms-opencart3/blob/11013e56002fc52038a63405567c2ef758736e7b/src/upload/catalog/model/extension/payment/yandex_money.php#L478
установки значения при оплате
https://github.com/yandex-money/yandex-money-ycms-opencart3/blob/11013e56002fc52038a63405567c2ef758736e7b/src/upload/catalog/model/extension/payment/yandex_money.php#L478
установка в админке
https://github.com/yandex-money/yandex-money-ycms-opencart3/blob/11013e56002fc52038a63405567c2ef758736e7b/src/upload/admin/controller/extension/payment/yandex_money.php#L692-L693
в шаблоне
https://github.com/yandex-money/yandex-money-ycms-opencart3/blob/master/src/upload/admin/view/template/extension/payment/yandex_money/kassa.twig#L169

Ошибки после установки на OC 3.0.3.3 (trs-3.0.2.0)

На карточках товаров не может найти функции
Fatal error: Call to a member function convertFromCbrf()
getModel()
Пытается их искать почему то в контроллере /www/storage/modification/catalog/controller/product/product.php

script в коде сайта и html код в выгрузке

модуль Y.CMS2 v1.4 (на ОС Version 3.0.3.2)

<script src="https://static.yandex.net/kassa/pay-in-parts/ui/v1/"></script>

на страницах имеется данный скрипт, хотя касса выключена и галок нет.

html код в описание товара при выгрузке для турбостраниц или магазина.
Судя по форуму Opencart проблема много у кого, но ответа там нет.

https://opencartforum.com/uploads/monthly_2020_02/2020-02-22_14-51-10.jpg.b7d2878ba3174cf60e367f1ca56826cf.jpg
https://opencartforum.com/uploads/monthly_2020_02/2020-02-22_14-50-03.thumb.jpg.2f786689b15bb239f813396d3b69bd7b.jpg

Для Opencart 3 - ошибки

  1. Ошибка при отключения модуля в строчке 71
    admin/model/extension/payment/yandex_money.php on line 71.
    А именно
    `public function uninstall()
    {
    if ($this->hasEvent(self::YCMS_EVENT_CODE)) {
    $this->load->model('setting/event');
    $this->model_setting_event->deleteEventByCode(self::YCMS_EVENT_CODE);
    }

     $this->log('info', 'uninstall yandex_money module');
    

    }`

  2. Ошибка при возврате назад - ссылается на admin/index.php?route=extension/extension&user_token=sOsMEn286FuYkpy9SmFeqBGBA57bNQbs&type=payment, НО это же актуально для 2.x. В 3-ке ссылка должна быть с admin/index.php?route=marketplace/extension&user_token=sOsMEn286FuYkpy9SmFeqBGBA57bNQbs&type=payment

  3. Также не работает кнопка сохранить, равно как и появляется по умолчанию алерт "Не введено название магазина"

Отключение возможности оплаты Яндекс.Деньги после порога в 15000 рублей

Добрый день!

Так как метод оплаты через Яндекс.Деньги не даёт оплачивать заказы дороже 15000, можно ли сделать границу максимальной суммы, при которой он будет автоматически отключаться?

Так как я, пока что, из всех трех возможных (в этом модуле) методов оплат пользуюсь только им, написал себе небольшой фикс, но, думаю, такая опция будет полезна многим, кто работает с Яндекс.Деньги.

Заранее спасибо!

HTTP error

При попытке отредактировать модуль после его активации, открывается страница с белым экраном, при открытии на Google Chrome, следующая ошибка:
Сайт xxxxx.top пока не может обработать этот запрос.
HTTP ERROR 500

в журнале ошибок следующие однотипные записи:
2021-01-16 20:40:28 - PHP Notice: Undefined index: information in /home/kservice/storage/modification/catalog/controller/common/menu.php on line 32

версия модуля 2,0,4
Opencart: 3.0.3.2

После включения отображения ошибок в htaccess:
Fatal error: Uncaught Exception: Error: Unknown column 'c1.information' in 'field list'
Error No: 1054
SELECT cp.category_id AS category_id, GROUP_CONCAT(cd1.name ORDER BY cp.level SEPARATOR '  >  ') AS name, c1.parent_id, c1.sort_order, c1.status, c1.information FROM prefixdatabase_category_path cp LEFT JOIN prefixdatabase_category c1 ON (cp.category_id = c1.category_id) LEFT JOIN prefixdatabase_category c2 ON (cp.path_id = c2.category_id) LEFT JOIN prefixdatabase_category_description cd1 ON (cp.path_id = cd1.category_id) LEFT JOIN prefixdatabase_category_description cd2 ON (cp.category_id = cd2.category_id) WHERE cd1.language_id = '1' AND cd2.language_id = '1' GROUP BY cp.category_id ORDER BY sort_order ASC in /home/kservice/onemart.top/system/library/db/mysqli.php:40 Stack trace: #0 /home/kservice/onemart.top/system/library/db.php(45): DB\MySQLi->query('SELECT cp.categ...') #1 /home/kservice/storage/modification/admin/model/catalog/category.php(301): DB->query('SELECT cp.categ...') in /home/kservice/onemart.top/system/library/db/mysqli.php on line 40

UPD Выяснил, конфликт с модулем optimblog, при его установке Юкасса крашится

Не реагирует на сохранение

Перехожу на вкладку Маркет, ввожу обязательные поля: название магазины, доставка И так далее ... нажимаю сохранить и снова нужно вводить данные и ничего не сохраняется будто я ничего и не вписывал в обязательные поля

Пишет код не найден ft_frame theme

ERROR: CODE NOT FOUND!
FILE: catalog/view/theme/ft_frame/template/common/footer.twig
CODE:

{{ powered }}


MOD: Y.CMS for Opencart 3.x

ERROR: CODE NOT FOUND!
FILE: catalog/view/theme/ft_frame/template/product/product.twig
CODE:

{% if options %}
MOD: Y.CMS for Opencart 3.x

Сделать отображение способов оплаты сразу в основном меню способов оплаты

Предложение в теме.
Нажатие кнопки оформить заказ до выбора способа оплаты сбивает покупателей с толку. Покупателю важно знать каким способом оплаты он будет пользоваться до нажатия кнопки оформить заказ. Так же многие покупатели думают (и это оправдано) что после нажатия кнопки оформить заказ они будут отправлены "в какие-то сервисы Яндекса, а там у них ничего нет".
Предлагаю сделать полный список доступных (включенных) способов оплаты сразу в меню выбора способов оплаты.
Так же предлагаю сделать выбор способа оплаты по умолчанию и возможность изменения порядка способов оплаты.

Y.CMS 2.0 1.9.3 Undefined index: version

Notice: Undefined index: version in admin/controller/extension/payment/yandex_money.php on line 1689
Что, в принципе, логично так как модель возвращает пустой массив из
admin/model/extension/payment/yandex_money.php line 636

не критично, конечно, но и поправить же не трудно....

Ошибка при установке permission denied

Пытаюсь установить версию 1.0.8 на opencart 3.0.2.0 -- пишет что хочет права на запись в разные подкаталоги типа htdocs/catalog/*/extensions/payment/.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.