Skip to content

denis-skripnik/golos-donates

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

golos-donates

Top donators and donated posts for Golos blockchain Сервис, выводящий топ пользователей, донатящих авторов и топ постов, получающих донаты. Комментарии в коде есть.

Требования для установки

  1. node.js
  2. Mongo DB.

Что делает:

  • Парсит блоки (функция в основном файле donators.js) и складывает последний блок в базу данных golos-donates, коллекцию blocks (файл БД - js_modules/blocksdb.js);
  • В файле js_modules/work.js производится просмотр операций (в т.ч. виртуальных) блока с поиском переводов, memo которых является json;
  • В случае, если json соответствует формату отправки донатов, направляет данные: from (от кого), author, permlink, full_amount (полная сумма с токеном через пробел).
  • В той функции производится разделение суммы и токена, после чего проверяется наличие в базе данных сначала донатера, а затем поста;
  • Если есть, выводятся условия, согласно которым сумма прибавляется либо к количеству в GOLOS, либо в к количеству в GBG (golos_amount или gbg_amount);
  • В js_modules/ajax.js производится вызов npm пакета express с фрмированием страниц, отдающих json с топом в зависимости от отправленных GET параметров: если type=users - список донатящих, type=posts - постов. Также вывод зависит от параметров month и year. Формат первого - это 1-12, а года, например, 2020 (в запущенном скрипте выводятся данные с февраля 2020 года).

Важный момент

Коллекции постов и донатящих имеют названия users2-2020 или posts2-2020, где 2 - месяц, а 2020 - год. Это значит, что после начала марта будут складываться данные за март, а не февраль.

Выводимые данные

  • Сортируются лишь по GOLOS. По GBG сортировку делать надо локально;
  • Выводятся в формате JSON;
  • Порт 3900;
  • Идентификатор golos-donates.

Пример

ip:3900/golos-donates?type=posts&date=2-2020

Скрипт работает по ссылкам:

  1. Донатеры: https://dpos.space/golos-donates
  2. Посты: https://dpos.space/golos-donates/posts

Автор

Незрячий разработчик Денис Скрипник. профиль на Голосе.

About

Top donators and donated posts for Golos blockchain

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published