diff --git a/blockchains/golos/apps/donate/config.json b/blockchains/golos/apps/donate/config.json new file mode 100644 index 00000000..e9bb30d0 --- /dev/null +++ b/blockchains/golos/apps/donate/config.json @@ -0,0 +1,6 @@ +{ +"title": "Golos | Донат", +"description": "Сервис донатов пользователей Голоса", +"in_menu": "Донат", +"category": "tools" +} \ No newline at end of file diff --git a/blockchains/golos/apps/donate/content.php b/blockchains/golos/apps/donate/content.php new file mode 100644 index 00000000..7853db80 --- /dev/null +++ b/blockchains/golos/apps/donate/content.php @@ -0,0 +1,57 @@ +Донат +
+ +'; +if (isset($url[2])) { +$content .= ''; +$data['title'] .= ' пользователю '.$url[2]; +} else { + $content .= '

'; + } + if (isset($url[3])) { + $content .= ''; + } else { + $content .= '

'; + } +if (isset($url[4])) { + $content .= '

'; +$data['title'] .= ' на '.$url[4].' '.$url[3]; +} else { + $content .= '

'; + } + $content .= '

+
'; +if (isset($url[4])) { + $content .= '
+

К выбору токена

+ + +
+

Донат при помощи Golos blockchain

+ +

+
'; +} +$content .= '
+

Ссылка на страницу

+

Вы можете её использовать на сайте:

+

+

+'; +return $content; +?> \ No newline at end of file diff --git a/blockchains/golos/apps/donate/index.php b/blockchains/golos/apps/donate/index.php new file mode 100644 index 00000000..207e8122 --- /dev/null +++ b/blockchains/golos/apps/donate/index.php @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/blockchains/golos/apps/donate/js/app.js b/blockchains/golos/apps/donate/js/app.js new file mode 100644 index 00000000..01b4b64a --- /dev/null +++ b/blockchains/golos/apps/donate/js/app.js @@ -0,0 +1,147 @@ +var url = document.location.pathname.slice(1).split('/'); +var gates = {}; +gates.YMRUB = {}; +gates.YMPZM = {}; +gates.YMRUB.deposit = { +vars: [ + { // Qiwi + address: { + name: "Никнейм в Qiwi", + value: `RICHE387`, + }, + memo: { + name: "Примечание", + value: "golos:" + url[2] + } + }, // end Qiwi method + { // Advcash + address: { + name: "Адрес кошелька в Advcash", + value: `R 9085 0398 0645`, + }, + memo: { + name: "Примечание к платежу", + value: "golos:" + url[2] + } + }, // end Advcash method + { // Payeer + address: { + name: "Адрес кошелька в Payeer", + value: `P9741574`, + }, + memo: { + name: "Примечание к платежу", + value: "golos:" + url[2] + } + } +] +}; + +gates.YMPZM.deposit = { + vars: [ + { + address: { + name: "Адрес кошелька в Prizm", + value: `PRIZM-5UER-N986-BU24-AXJRL`, + }, + memo: { + name: "Примечание к платежу", + value: "golos:" + url[2] + } + } + ] + }; + +async function donateAction(to, amount, token, precision) { + var q = window.confirm('Вы действительно хотите отправить донат?'); + if (q == true) { + try { + let result = await golos.broadcast.donateAsync(posting_key, golos_login, to, `${parseFloat(amount).toFixed(precision)} ${token}`, {app: 'dpos-space', version: 1, comment: `Донат со страницы https://dpos.space${window.location.pathname}`, target: {type: 'personal_donate'}}, []); + window.alert('Вы отблагодарили пользователя ' + to + ' на ' + amount + ' ' + token + '.'); + await main(); + } catch(e) { + window.alert('Ошибка: ' + e); + } + + } +} + +async function getTipBalance(token) { + let balances = (await golos.api.getAccountsBalancesAsync([golos_login]))[0]; + if (balances && balances[token]) { + return parseFloat(balances[token].tip_balance); + } else if (balances && !balances[token] || !balances) { +let tip_balance = parseFloat((await golos.api.getAccountsAsync([golos_login]))[0].tip_balance); +if (tip_balance) { + return tip_balance; + } +} + } + +async function main() { + let assets = await golos.api.getAssetsAsync(''); + let precision = 3; + if (assets && assets.length > 0) { + let tokens = ''; + for (let asset of assets) { + let name = asset.max_supply.split(' ')[1]; +if (name === url[3]) precision = asset.precision; + if (parseFloat(asset.supply) > 0) { +let add_str = ''; + if (!gates[name]) { +add_str = ' (только при помощи блокчейна Golos)'; +} + if (name.indexOf('YM') > -1) { + view_name = name.slice(2); + } else { + view_name = name; + } +tokens += ``; +} + } + $('[name=token]').html(tokens); + } + + if (url[3]) { + let view_token = ` ${url[3]}`; +if (url[3].indexOf('YM') > -1) view_token = url[3].slice(2); + $('.token').html(` ${view_token}`); + } + + if (url[3] && gates[url[3]] && url[4]) { + $('#deposit_without_golos').css('display', 'block'); + let deposit = gates[url[3]].deposit; + let res = `

Для доната следуйте инструкции ниже.

+ `; + let vars = deposit.vars; + for (let method of vars) { + res += '`; + } + $('#uia_diposit_data').html(res); +} + +if (url[4]) { +let tip = await getTipBalance(url[3]); +if (!tip) tip = 0; +$('#tip_balance').html(`${tip} ${url[3]}`); +if (tip < parseFloat(url[4])) { + $('#donate_action').attr('disabled', true); + $('#donate_action').html('TIP баланс < суммы доната. В кошелёк'); +} else { + $('#donate_action').attr('disabled', false); +} +} +return {precision} +} + +$(document).ready(async function() { +let data = await main(); + +$('#donate_action').click(async function() { + await donateAction(url[2], url[4], url[3], data.precision); +}); +}); \ No newline at end of file diff --git a/blockchains/golos/apps/wallet/js/app.js b/blockchains/golos/apps/wallet/js/app.js index 3a0f7e1f..998193d9 100644 --- a/blockchains/golos/apps/wallet/js/app.js +++ b/blockchains/golos/apps/wallet/js/app.js @@ -41,6 +41,16 @@ login: "ecurrex-ru", gates.YMRUB.deposit = { vars: [ + { // Qiwi + address: { + name: "Никнейм в Qiwi", + value: `RICHE387`, + }, + memo: { + name: "Примечание", + value: "golos:" + golos_login + } + }, // end Qiwi method { // Advcash address: { name: "Адрес кошелька в Advcash", diff --git a/blockchains/golos/js/blockchain.js b/blockchains/golos/js/blockchain.js index d41c7072..7ae05f3b 100644 --- a/blockchains/golos/js/blockchain.js +++ b/blockchains/golos/js/blockchain.js @@ -252,4 +252,10 @@ var ajax_options = {}; ajax_options[data[0]] = data[1]; } getLoad(url, 'ajax_modal_content', 'Следующие 10', 'Предыдущие 10')(START_MODE); -}); \ No newline at end of file +}); + +function copyText(id) { + let text = document.getElementById(id); + text.select(); + document.execCommand("copy"); + } \ No newline at end of file diff --git a/blockchains/steem/apps/wallet/content.php b/blockchains/steem/apps/wallet/content.php index 7d6ba064..b422378c 100644 --- a/blockchains/steem/apps/wallet/content.php +++ b/blockchains/steem/apps/wallet/content.php @@ -73,7 +73,10 @@

-

Делегировали другие пользователи вам

+ +

Делегировали другие пользователи вам

Делегировано другим пользователям (Без учёта отменённого)