Code Monkey home page Code Monkey logo

galtproject / galtproject-private-property-registry Goto Github PK

View Code? Open in Web Editor NEW
8.0 8.0 3.0 1.25 MB

🗺Private property registry is ERC721 Ownable Smart contract on Ethereum. Anyone can create a private registry using the smart contract Factory by paying a fee in ETH or GALT and become its owner. The private registry Owner has the ability to create tokens with geographic coordinates and other linked data.

Home Page: https://app.galtproject.io/

License: Other

JavaScript 57.84% Makefile 0.10% Shell 0.02% Solidity 42.04%
ethereum ethereum-dapp proptech solidity solidity-contracts solidity-dapps web3

galtproject-private-property-registry's People

Contributors

chebykin avatar igorfrolov avatar microwavedev avatar npopeka avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

galtproject-private-property-registry's Issues

Adjust PPToken

  • add createdAt timestamp
  • add extra fields getter/setter
  • remove geodata when burning

Implement token burn

  • a token owner can set burn timeout
  • a registry owner can initiate the burn
  • anyone can execute the burn after the timeout

Change PPContourVerification logic

Give the opportunity to set the size of the deposit equal to zero.
In this case, the token cannot be burned due to the absence of a deposit. Everything else works exactly the same.

rework locker

  1. При создании Locker: указание список владельцев с их долями
  2. Создаем токены и локеры для всех владельцев
  3. Депозит токена и минт репутации со стороннего адреса???
  4. Распределение репутации по долям в комьюнити
  5. При выходе из комьюнити каждый бёрнит свою репутацию, если для всех сбёрнена - можно удалить комьюнити из локера
  6. Для вывода токена с локера на конкретный адрес - каждый владелец должен за это проголосовать
  7. Возможность передачи доли при отсутвии комьюнити в локере
  8. Потеря приватного ключа владельца - бёрним токен

⁃ Любой может создать контракт локер;
⁃ При создании указывается список одобренных комьюнити;
⁃ Указывается список адресов и количество долей принадлежащее адресу - адреса 1 - 1 доля, адрес 2- 1 доля, адрес 3 - 1 доля, адрес 4 - 2 доли .
⁃ Для функции “Добавления нового комьюнити/Удаления комьюнити” в локер нужен апрув N1 долей (по умолчанию 1);
⁃ Для функции “Вывод токена с покера” на другой адрес нужен апрув N2 долей (по умолчанию всех);
⁃ Для вывода токена с покера не должно быть голосов в сообществах;
⁃ Голоса на адрес минтятся по формуле Площадь/всего долей*Долей адреса;
⁃ Все функции имеют модификатор оплаты микрокомиссий оунеру реестра и протоколу;
⁃ Метод “Заменить владельцев” - указывается массив старых адресов, новых адресов и массив количества долей. Нужно N3 долей. (По умолчанию всех). Общее количество долей = Было - доли старых + доли новых.
⁃ Метод “Удалить владельца” - массив адресов, которые надо удалить. Нужно N3 долей. (По умолчанию всех). Общее количество долей = Было - доли старых.
⁃ Нужно учитывать в мапинге комьюнити => (оунер => голоса ), сколько было создано голосов по адресу оунера;
⁃ Методы “Заменить владельцев” и “Удалить владельцев” требуют, чтобы у этих адресов не было голосов в комьюнити. У остальных могут быть голоса.
⁃ При удалении / замене владельцев / добавлении меняется общее количество долей;
⁃ Не уверен, но по идее лучше сделать схему пропоузалов, где для каждого метода по сигнатуре будет необходимое количество голосов. В этому случае оплату всего, что выполняется через пропоузал можно взимать только в этом методе.
⁃ Депозит токена может происходить с любого адреса.
⁃ Метод заменить мой адрес - замена своего адреса. Не должно быть голосов в комьюнити. Можно заменить только свой адрес, не требуется апрува других оунеров.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.