Перейти к содержанию
Форум поддержки пользователей VamShop

Доработка интернет-магазина на CakePHP


Рекомендуемые сообщения

Ищется CakePHP программист на удалённую работу.

Для доработки движка интернет-магазина vamcart.ru

Задачи две:

1. Добавить проверку лицензии

2. Добавить обновление магазина из админки.

Оплата, скажем, 500$.

Подробное описание:

1. Добавить проверку лицензии

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

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

Основная цель проверки ключа - быть в курсе, у кого и когда заканчивается поддержка, т.е. понятно, что могут удалить проверку из кода (код ведь открытый), но это не принципиально, задачи защитить код проверки ключа нет.

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

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

если есть демо-ключ - всё работает 30 дней + может с какими-то ограничениями, например почта не отправляется из магазина.

есть нет ключа - не работает.

есть есть ключ - всё работает в полную силу.

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

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

Ключи админ генерирует где-то на сервере например через свой php скрипт и файл с ключом отправляет пользователю, пользователь где-то в админке, в настройках, добавляет свой ключ и получает полностью рабочую версию, видит, когда заканчивается поддержка.

2. Добавить обновление магазина из админки.

Обновление проверяет лицензию, если срок не истёк - загружает обновление и обновляет, если истёк - предлагает купить (продлить) VaM Cart.

Обновление файлов и базы.

Обновление движка через админку.

Поставил например пользователь версию 1.0

В течение двух лет выходили новые версии 1.1, 1.2, 1.3 и т.д.

Через год пользователь захотел обновить свой магазин, нужно что б он мог обновиться через админку, никаких ftp клиентов, всё автоматизировано.

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

Само обновление - это архив с файлами и файл с sql кодом для обновления базы, т.е. скрипт обновления должен уметь:

1. переписывать текущие файлы.

2. добавлять новые файлы.

3. удалять устаревшие файлы.

4. добавить sql код в базу.

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

Скрипт отправляет ключ на сервер (vamcart.com) например и получается ответ от vamcart.com, есть ли этот ключ в базе зарегистрированных ключей и не закончилась ли поддержка.

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

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

Если ключ устарел или демо-ключ или ключ уже используется в другом магазина, то обновление не начинается и пишет предупреждение о проблеме с ключом.

В-общем, обновление как во всех популярных CMS: WordPress, Bitrix, т.е. не нужно лазить по ftp, вручную выкачивать обновления, вручную переписывать, всё автоматически, нажимая кнопка обновить в админке.

Ссылка на сообщение
Поделиться на другие сайты
  • 3 weeks later...
×
×
  • Создать...