From 56e8c72b65cc964588c1c3dc691b5bc69f4c6dab Mon Sep 17 00:00:00 2001 From: 1aerostorm Date: Mon, 29 Aug 2022 13:22:20 +0000 Subject: [PATCH 1/2] HF 27 - Forbid transfer and donates if blocked --- app/locales/en.json | 4 +++- app/locales/ru-RU.json | 4 +++- app/utils/Allowance.js | 24 ++++++++++++++++++++---- 3 files changed, 26 insertions(+), 6 deletions(-) diff --git a/app/locales/en.json b/app/locales/en.json index e089baece..0ab2a92af 100644 --- a/app/locales/en.json +++ b/app/locales/en.json @@ -608,7 +608,9 @@ "negrep_confirm": "You have negative reputation, now sending of operations requires cost. Do you want to send them %(AMOUNT)s from TIP-balance?", "negrep_error": "You have negative reputation, now sending of operations requires cost. %(AMOUNT)s required on your TIP-balance.", "window_confirm": "You have reached limit, now sending of operations requires cost. Do you want to send them %(AMOUNT)s from TIP-balance?", - "window_error": "You have reached limit now sending of operations requires cost. %(AMOUNT)s required on your TIP-balance." + "window_error": "You have reached limit now sending of operations requires cost. %(AMOUNT)s required on your TIP-balance.", + "blocking_fatal_error": "User blocked you, now sending of transfers and donates is forbidden.", + "bother_fatal_error": "User wants to not be bothered by accounts with low-reputation, now sending of transfers and donates is forbidden." }, "key_file": { "file_title": "Keys Of @", diff --git a/app/locales/ru-RU.json b/app/locales/ru-RU.json index 57df50017..21b2c933c 100644 --- a/app/locales/ru-RU.json +++ b/app/locales/ru-RU.json @@ -81,7 +81,9 @@ "negrep_confirm": "У вас отрицательная репутация, вы хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", "negrep_error": "У вас отрицательная репутация, отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!", "window_confirm": "Вы достигли лимита в сутки. Вы хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", - "window_error": "Вы достигли лимита в сутки, отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!" + "window_error": "Вы достигли лимита в сутки, отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!", + "blocking_fatal_error": "Пользователь заблокировал вас, отправка переводов и донатов невозможна.", + "bother_fatal_error": "Пользователь включил опцию Не беспокоить (для аккаунтов с репутацией ниже 65), отправка переводов и донатов невозможна." }, "key_file": { "file_title": "Keys Of @", diff --git a/app/utils/Allowance.js b/app/utils/Allowance.js index 44fe47c13..65d57898b 100644 --- a/app/utils/Allowance.js +++ b/app/utils/Allowance.js @@ -2,7 +2,14 @@ import { api } from 'golos-lib-js' import { Asset } from 'golos-lib-js/lib/utils' import tt from 'counterpart' -async function checkBalance(blocking, cost, type = 'blocking') { +async function returnError(blocking, cost, type = 'blocking', fatal = false) { + if (fatal) { + return { error: tt(`do_not_bother.${type}_fatal_error`, { + AMOUNT: cost.toString() + }) + } + } + const tipBalance = Asset(blocking.tip_balance) if (cost.gt(tipBalance)) { @@ -69,7 +76,14 @@ export async function checkAllowed(blockingName, blockerNames, tipAmount = null, let hasNegRep = false let blockType + let fatal = false for (const aType of aTypes) { + const setFatal = () => { + if (aType === AllowTypes.transfer) { + fatal = true + } + } + const negRep = aType == AllowTypes.comment || aType == AllowTypes.post || aType == AllowTypes.vote || aType == AllowTypes.voteArchived @@ -91,9 +105,11 @@ export async function checkAllowed(blockingName, blockerNames, tipAmount = null, if (rels[blockerName] && rels[blockerName].blocking) { cost = cost.plus(await unw()) blockType = 'blocking' + setFatal() } else if (blocker.do_not_bother && blocking.reputation < 27800000000000) { cost = cost.plus(await unw()) blockType = 'bother' + setFatal() } } } @@ -106,17 +122,17 @@ export async function checkAllowed(blockingName, blockerNames, tipAmount = null, if (blockType) { addAmount() - return await checkBalance(blocking, cost, blockType) + return await returnError(blocking, cost, blockType, fatal) } if (hasNegRep) { addAmount() - return await checkBalance(blocking, cost, 'negrep') + return await returnError(blocking, cost, 'negrep', fatal) } if (cost.amount) { addAmount() - return await checkBalance(blocking, cost, 'window') + return await returnError(blocking, cost, 'window', fatal) } return {} From 763b5ef3fbf502e0ced2d8ec028daa444087430e Mon Sep 17 00:00:00 2001 From: Lex-Ai <12001684+Lex-Ai@users.noreply.github.com> Date: Tue, 30 Aug 2022 17:03:22 +0300 Subject: [PATCH 2/2] minor fix --- app/components/cards/Comment.jsx | 2 +- app/components/modules/Header.jsx | 2 +- app/locales/en.json | 2 +- app/locales/ru-RU.json | 22 +++++++++++----------- config/default.json | 3 +++ config/desktop.json | 3 +++ package.json | 4 ++-- 7 files changed, 22 insertions(+), 16 deletions(-) diff --git a/app/components/cards/Comment.jsx b/app/components/cards/Comment.jsx index 4939f3c85..b9f7f146e 100644 --- a/app/components/cards/Comment.jsx +++ b/app/components/cards/Comment.jsx @@ -89,7 +89,7 @@ class CommentImpl extends PureComponent { _checkHide(content) { let hide = hideSubtree(this.props.cont, this.props.content) - console.log('CON', content.toJS()) + // console.log('CON', content.toJS()) if (content.get('bad')) { hide = true diff --git a/app/components/modules/Header.jsx b/app/components/modules/Header.jsx index 281a5a3ca..df752da03 100644 --- a/app/components/modules/Header.jsx +++ b/app/components/modules/Header.jsx @@ -198,7 +198,7 @@ class Header extends React.Component {
  • - {APP_NAME_UP}blockchain + {APP_NAME_UP}blogs platform
  • {selected_sort_order && } diff --git a/app/locales/en.json b/app/locales/en.json index 0ab2a92af..fa03e1d6d 100644 --- a/app/locales/en.json +++ b/app/locales/en.json @@ -347,7 +347,7 @@ "for_the_post": "for the post", "night_mode": "Night Mode", "social_network": "Social network", - "about_project": "Golos.id — social platform and blogger community, developed on the GOLOS blockchain" + "about_project": "Golos Blogs - social platform and blogger community, developed on the GOLOS blockchain" }, "exchanges_jsx": { "title": "Buying and selling tokens", diff --git a/app/locales/ru-RU.json b/app/locales/ru-RU.json index 21b2c933c..963d18047 100644 --- a/app/locales/ru-RU.json +++ b/app/locales/ru-RU.json @@ -73,17 +73,17 @@ }, "do_not_bother": { "title": "Не беспокоить", - "desc": "Пользователи с репутацией менее 65 смогут писать вам сообщения, комментарии, отправлять переводы и донаты только за отдельную плату", - "blocking_confirm": "Пользователь заблокировал вас, вы хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", + "desc": "Пользователи с репутацией ниже 65 не смогут писать вам сообщения, отправлять переводы и донаты, только комментарии за отдельную плату", + "blocking_confirm": "Пользователь заблокировал вас, хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", "blocking_error": "Пользователь заблокировал вас, отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!", - "bother_confirm": "Пользователь включил опцию не беспокоить (для аккаунтов с репутацией ниже 65), вы хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", - "bother_error": "Пользователь включил опцию не беспокоить (для аккаунтов с репутацией ниже 65), отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!", - "negrep_confirm": "У вас отрицательная репутация, вы хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", - "negrep_error": "У вас отрицательная репутация, отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!", - "window_confirm": "Вы достигли лимита в сутки. Вы хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", - "window_error": "Вы достигли лимита в сутки, отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!", - "blocking_fatal_error": "Пользователь заблокировал вас, отправка переводов и донатов невозможна.", - "bother_fatal_error": "Пользователь включил опцию Не беспокоить (для аккаунтов с репутацией ниже 65), отправка переводов и донатов невозможна." + "blocking_fatal_error": "Пользователь заблокировал вас, отправка переводов и донатов невозможна...", + "bother_confirm": "Пользователь включил опцию «не беспокоить» (для аккаунтов с репутацией ниже 65), вы хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", + "bother_error": "Пользователь включил опцию «не беспокоить» (для аккаунтов с репутацией ниже 65), отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!", + "bother_fatal_error": "Пользователь включил опцию «не беспокоить» (для аккаунтов с репутацией ниже 65), отправка переводов и донатов невозможна...", + "negrep_confirm": "У вашего аккаунта отрицательная репутация, хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", + "negrep_error": "У вашего аккаунта отрицательная репутация, отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!", + "window_confirm": "На сегодня вы достигли лимита данных операций. Хотите отправить операцию за %(AMOUNT)s с TIP-баланса?", + "window_error": "На сегодня вы достигли лимита данных операций. Отправка операции возможна за %(AMOUNT)s на TIP-балансе. Недостаточно средств!" }, "key_file": { "file_title": "Keys Of @", @@ -453,7 +453,7 @@ "for_the_post": "за пост", "night_mode": "Ночной режим", "social_network": "Социальные сети", - "about_project": "Голос — децентрализованная блог-платформа, разработанная на блокчейне Golos", + "about_project": "Голос Блоги — децентрализованная платформа, работающая на блокчейне Golos", "account_creation_fee": "Размер комиссии за создание аккаунта без делегирования", "maximum_block_size": "Максимальный размер блока", "sbd_interest_rate": "Процент начисляемый на GBG", diff --git a/config/default.json b/config/default.json index e37d665e8..85e2dbaf6 100644 --- a/config/default.json +++ b/config/default.json @@ -33,6 +33,9 @@ "upload_image": "https://api.imgur.com/3/image", "client_id": "6c09ebf8c548126" }, + "wallet_service": { + "host": "https://devwallet.golos.today" + }, "auth_service": { "host": "https://dev.golos.app", "custom_client": "blogs" diff --git a/config/desktop.json b/config/desktop.json index f04fb0f6a..21872cb16 100644 --- a/config/desktop.json +++ b/config/desktop.json @@ -18,6 +18,9 @@ "upload_image": "https://api.imgur.com/3/image", "client_id": "6c09ebf8c548126" }, + "wallet_service": { + "host": "app://wallet.golos.id" + }, "auth_service": { "host": "https://golos.app", "custom_client": "blogs" diff --git a/package.json b/package.json index 8fa1badc9..350e2c379 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,8 @@ "type": "git", "url": "https://github.com/golos-blockchain/ui-blogs.git" }, - "version": "1.2.2", - "description": "Голос - социальная сеть, построенная на публичном блокчейне.", + "version": "1.3.0", + "description": "Голос Блоги — децентрализованная платформа, работающая на блокчейне Golos.", "main": "dist/electron/electron.js", "scripts": { "build-version": "./server/build-version.sh",