Dpos.space: Проект с несколькими сервисами для VIZ и других блокчейнов. Часть 3

Здравствуйте. Продолжаю описывать сервис https://dpos.space.

Ему уже наверное месяцев 6, и только сейчас был открыт код. Репозиторий - https://github.com/denis-skripnik/dpos.space

В прошлой части описывал используемые технологии и библиотеки, названные мной характеристиками, а также начал рассказывать о структуре папок и файлов и содержимом в них. В этой продолжу рассказывать о структуре.

Структура:

В корне dpos.space:

Помимо сервисов там есть следующие папки и файлы:

  1. .htaccess - файл, где настроен основной файл index.html или index.php, установлена дифолтной кадировкой UTF-8, установлена возможность перехода в режим разработки.
  2. _maintenance.enable - убрав первый символ в этом файле, включить можно режим обслуживания (разработки). В файле maintenance.html содержится текст и код, который появляется при включённом maintenance режиме.
  3. composer.json и composer.lock - composer файлы, где прописаны установленные библиотеки. Здесь - php-graphin-node-client и всё необходимое для его работы.
  4. helpers.php - подключение к блокчейнам (connectors php-node-client) и перевод дат в удобочитаемый вид с названием месяцев. Также там подключается noCache, которая отключает кеширование.
  5. home.php - заголовки и описания для главной страницы https://dpos.space
  6. index.php - основной файл. Подключаются params.php, helper.php, urls.php и производится запись логов посещений сервисов.
  7. params.php, где прописаны различные условия для сервисов, а также подключены файлы params.php самих сервисов.
  8. urls.php - ЧПУ (человекопонятные url). Позволяет использовать адреса вида https://dpos.space/profiles/denis-skripnik/viz вместо https://dpos.space/index.php?service=profiles&user=denis-skripnik&blockchain=viz
  9. users.log - лог посещений сервисов пользователями. Если кто-то посетил профиль с логином den, а потом пошёл в бекапы, то посещения от имени аккаунта den будут. Конечно, это не показывает, что именно den был там, но позволяет предполагать это. Мне этого достаточно - я не стал заморачиваться. Файл состоит из даты и времени посещения, логина пользователя, сервиса и блокчейна. В Github файл пустой.
  10. vendor. Здесь находится всё необходимое для работоспособности php-node-client.
  11. template - папка с шаблоном сайта. Здесь можно найти
    header.php (Верхняя часть сайта:
    секция head и начала body),
    menu.php - Меню.
    Причём в зависимости от блокчейна выводятся разные пункты, если это требуется. Также при переходе, например, из сервиса профиля с пользователем и блокчейном в фиды, они сохранятся в адресной строке, а значит, просмотрев данные пользователя name в блокчейне steem, вы сможете потом почитать посты его подписчиков в том-же блокчейне.
    content.php - подгрузка контентной части сайта. Тут берутся файлы index.php сервисов.
    footer.php - нижняя часть сайта: копирайт, ссылки, просьбы и прочее.
    favicon.ico - иконка сайта.
    form_with_select.php - форма со списком выбора блокчейна.
    form_without_select.php - без select выбора блокчейна.
    template/css - папка с файлами стилей. famaly-Rubik.css - шрифты, normalize.css., style.min.css - основной файл стилей.
    • js/libs: jquery и garlic.min.js (для автозаполнения форм).
      js/index.js - основной файл сервисов dpos.space.

Подробнее об основном Javascript файле:

В нём прописаны следующие функции:

  1. Ajax переключение блокчейнов с редиректом url в адресной строке;
  2. Передача файлам вкладок profiles данных: название блокчейна, логин пользователя, а если вкладка с пагинацией, некоторые другие данные, например, номер страницы.
  3. Прописываются url сервисов и их названия.
  4. Различные условия и ajax подключения для сервисов.

Всё.

Буду рад пулл-реквестам и форкам сервиса.

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

С вами был @denis-skripnik: незрячий программист, делегат и пользователь VIZ.

Буду рад вашим голосам за моего делегата тут: https://viz.world/witnesses/denis-skripnik/


0
11 Awards
547.97355 SHARES
Show comment form
Comments