• Как установить библиотеку iup для lua?

    @Levitskyi
    В самом минимальном (по кол-ву файлов) варианте примерно так:

    1) Скачиваете и распаковываете дистрибутив LUA:
    lua-5.4.2_Win64_bin.zip

    2) Скачиваете и распаковываете дистрибутив IUP LUA:
    iup-3.30-Lua54_Win64_bin.zip

    3) Перекидываете из дистрибутива IUP LUA в папку с дистрибутивом LUA файлы:
    iup.dll
    iuplua54.dll


    4) Всё. Этого достаточно чтоб запускать простые GUI примеры из документации.

    PS. На самом деле можно сделать только пункт 2, и всё сразу будет готово к запуску. Без каких-либо дополнительных телодвижений, просто файлов будет больше. Я же привёл пример списка только самых необходимых файлов, остальные можно будет закидывать по необходимости.

    PPS. Для запуска скрипта нужно открыть папку куда распаковали дистрибутив LUA, затем в строке адреса написать cmd - запустится командная строка.

    Вписываем команду:
    lua54.exe hello.lua

    где hello.lua - название вашего LUA скрипта (должен лежать рядом с lua54.exe)
    Ответ написан
    Комментировать
  • Не заходит в админку OpenCart?

    @Levitskyi
    Столкнулся сейчас с этой проблемой на последних версиях Opencart.

    Что имею:

    1) Локальный сервер Open Server (OSPanel), на котором уже побывали все возможные версии опенкарта и его сборок, и никогда подобного не было.

    2) Установил Opencart "Русская сборка" 3.0.3.8 (rs.2) скачанный с официального сайта сборки (opencart-russia.ru) - войти в админку не смог: если пароль не верный - пишет об этом, если же пароль правильный - страница просто перезагружается без каких-либо уведомлений и снова просит ввести логин/пароль. Приэтом меняется user_token.

    3) Установил ocStore 3.0.3.7 - абсолютно всё тоже самое.

    4) Рядом стоящие опенкарты и оксторы с версиями 3.0.3.6 и ниже работают без проблем.

    5) Сходу проблему не понял, нагуглил что надо попробовать поменять строчку
    date_default_timezone_set($config->get('date_timezone'));

    на
    date_default_timezone_set('America/Chicago');

    в файле system/framework.php

    После этого заработало. Но это всё-таки не решение.

    6) Вернул обратно и стал смотреть дальше.

    Переключил версию php с с 7.3.9 на 7.4.5 и всё заработало само.

    Удивился, построчно сравнил php.ini обеих версий - различий связанных с датами и зонами не нашел.
    Сравнил phpinfo() обеих версий - тоже всё идентично: "date.timezone Europe/Moscow"

    В общем, не понял с чем это связано, главное что работает.

    Полезные ссылки:
    [SOLUTION] OC 3.0.3.7 Timezone Issue
    Can't login to admin panel
    Ответ написан
    Комментировать
  • Почему созданная тема не применяется в opencart 3?

    @Levitskyi
    Просто скопировать тему в другой каталог - недостаточно.

    Нужно пройтись по всем файлам темы и изменить все пути содержащие "default", названия классов содержащие "Default" на свое имя темы. Аналогично с ключами настроек и языковыми файлами.

    Если все это сделано - то нужно перейти в Расширения -> Шаблоны и напротив своей темы нажать Установить.

    Затем войти в настройки темы и установить статус Включено.

    После этого тема будет доступна к выбору.
    Ответ написан
    Комментировать
  • Как сделать свои способы оплаты в в OpenCart версия 3.0.3.1?

    @Levitskyi
    1) Можно сделать один или несколько клонов какого-либо стандартного способа оплаты, например "Оплата при доставке". Нужны базовые знания программирования. В сети полно пошаговых инструкций.

    2) Можно скачать уже готовые клоны оплат, есть как на русскоязычных маркетплейсах так и на официальном opencart.com

    3) Воспользоваться бесплатным модулем который позволяет создавать "виртуальные" способы оффлайн оплат без созданий клонов.

    4) Воспользоваться одним из десятков платных модулей, которые позволяют создавать "виртуальные" способы оффлайн оплат. Плюсом будет то, что они как правило умеют не только создавать способы оплат, но и показывать/скрывать их в зависимости от условий, например показать такую-то оплату если сумма больше ххх руб, скрыть такую-то оплату если выбрана такая-то доставка и тд и тп.
    Ответ написан
    Комментировать
  • Как сделать "И" фильтр OpenCart?

    @Levitskyi
    У Opencart 3 формирование запроса в базу с учетом фильтра происходит в файле catalog/model/catalog/product.php в методе public function getProducts($data = array())

    Но проще воспользоваться готовыми решениями (бесплатно):
    Вариант один или Вариант два
    Ответ написан
    Комментировать
  • Как скрыть блок в Опенкарт 3?

    @Levitskyi
    Никаких проблем с изменениями стилей в Опенкарте нет, если что-то не работает то это 90% ваша ошибка.
    1) Убедитесь что ваши стили находятся последними в очередности. Т.е. если вы применяете свой стиль, а затем подключается стандартная css Опенкарта - она перекроет ваш стиль.
    2) Убедитесь что после вашего стиля нет инлайн стилей которые перекрывают ваш.
    3) Убедитесь что стили блока не изменяются из js скриптов.
    4) Попробуйте для теста указать display: none !important; - если это сработает, см. пункты 1,2,3.
    5) Если есть возможность - скиньте ссылку. Уверен ваша проблема решается секунд за 60.
    Ответ написан
  • Как в opencart добавить автоизменение курса валют по нацбанку Беларуси?

    @Levitskyi
    Если не найдете готового модуля, то в самом простом случае:

    1) Пишете простой php скрипт, который получает курс валют и записывает его в базу данных
    2) Добавляете этот скрипт в задачу CRON (для автоматического обновления курса валют ежедневно)

    ЛИБО

    1) Исправляете файл admin/model/localisation/currency.php (Opencart 3) под свой банк

    Подсказки:

    1) Получить курс можно либо по API (предпочтительно), либо парсить страницу, получив ее с помощью curl или даже file_get_contents()

    2) Если не ошибаюсь, то API нацбанка - https://www.nbrb.by/apihelp/exrates/sample

    3) В базе данных магазина курсы валют хранятся в таблице "oc_currency" (Opencart 3)

    4) Файл который обновляет курс валют - admin/model/localisation/currency.php (Opencart 3)
    Ответ написан
    Комментировать
  • Как привязать 1С, магазин и склад к сайту, для отображения актуальных остатков продукции?

    @Levitskyi
    Если сайт без CMS то придется писать модуль обмена самостоятельно.

    Есть 2 варианта:

    1) Писать модуль обмена для сайта

    Понадобится официальное описание протокола обмена.

    "Подсмотреть" примеры можете в бесплатных модулях обмена для OpenSource CMS, думаю их вы знаете или быстро нагуглите.

    Т.к. я наиболее часто работаю с интернет магазинами на Opencart - могу предложить посмотреть самый известный и популярный бесплатный модуль обмена для этой CMS, его тоже начал писать энтузиаст, для себя. Вот уже лет 5 пишет, и должен сказать он достиг очень и очень неплохих результатов.

    Вам конечно такой мощный обмен скорее всего не нужен, а нужен базовый функционал - получить xml файлы обмена которые отсылает 1С, затем распарсить их, извлечь остатки/цены и другую полезную информацию, ну и загнать это в базу данных сайта.

    2) Использовать готовые платные или бесплатные внешние обработки для обмена с сайтом или для выгрузки информации в xml / json / csv и др.
    Вариантов уйма. Тоже придется потрудиться, но я думаю это намного проще чем писать модуль обмена как в пунте 1.

    Обработки ищите тут, поиск по фразам "обмен с сайтом", "выгрузка на сайт".
    Ответ написан
    2 комментария