Модуль DLE

Калькулятор расчета стоимости доставки EMS Почта России


Модуль DLE. Для версии 10.1, но можно попытаться использовать под старые версии движка.

Работает только на PHP версии не ниже 5.3!
Калькулятор расчета стоимости доставки EMS Почта России. Аналог калькулятора на сайте www.emspost.ru
Пример использования(как вариант)18+:
http://sexmarket.me/index.php?do=emsapi

Использует библиотеку EMSapi и сервис описанный на сайте http://www.emspost.ru/ru/corp_clients/dogovor_docements/ Проект scriptix.ru

Для использования нужно:

1. Добавить файлы в папки:

/templates/Ваш шаблон/emsapi.tpl - файл шаблона.
/engine/ajax/emsapi.php - файл обработчик событий.
/engine/classes/emsdb.class.php - Файл библиотеки классов отвечает за соединение с базой данных SQLite3.
/engine/classes/emspostcalculate.class.php Файл библиотеки классов отвечает за расчет стоимости доставки.
/data/emspost.db - файл базы данных SQLite3.
/modules/emsapi.php - Файл модуля.

2. Если у Вас не стоят сторонние модули, а движок как есть(т.е. из коробки). А также версия движка DLE 10.1, то можно поменять файл:

/engine/engine.php

3. Если у Вас стоят сторонние модули и версия движка отличается от DLE 10.1, то нужно в файле /engine/engine.php дописать строчки:

Найти строки:

case "pm" :
	  include ENGINE_DIR . '/modules/pm.php';
	  break;

После добавить строки:

case "emsapi" :
	  include ENGINE_DIR . '/modules/emsapi.php';
	  break;

Принцип работы:

Модуль получает данные с API сайта emspost.ru. В случае, если сайт emspost.ru не работает, тогда обращается к базе данных /data/emspost.db. Т.е. работать будет всегда)

Если нужно чтобы модуль задействовал только базу данных, т.е. не обращался к API сайта emspost.ru. Тогда в файле:
/engine/ajax/emsapi.php
заменить вызов метода:

$arrEmsFromBase = $dbname->getEmsApiPostCalculate($selFrom, $selTo, $weight, true, $value);
на
$arrEmsFromBase = $dbname->getEmsPostCalculate($selFrom, $selTo, $weight, true, $value);

Помните что EMS Почта России меняет тарифы 1 раз в год, приблизительно в Ноябре.

Также база (/data/emspost.db) необходима для формирования списка городов и областей.
С помощью библиотеки классов проводится фильтрация входных данных.