Skip to content

Commit

Permalink
Merge pull request #458 from golos-blockchain/beta
Browse files Browse the repository at this point in the history
Forbid transfer and donates if blocked
  • Loading branch information
Lex-Ai authored Aug 30, 2022
2 parents 257d4dc + 763b5ef commit df51f5b
Show file tree
Hide file tree
Showing 8 changed files with 45 additions and 19 deletions.
2 changes: 1 addition & 1 deletion app/components/cards/Comment.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion app/components/modules/Header.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ class Header extends React.Component {
</Link>
</li>
<li className="Header__top-steemit show-for-large noPrint">
<Link to={logo_link}>{APP_NAME_UP}<span className="beta">blockchain</span></Link>
<Link to={logo_link}>{APP_NAME_UP}<span className="beta">blogs platform</span></Link>
</li>
{selected_sort_order && <DropdownMenu className="Header__sort-order-menu show-for-small-only" items={sort_order_menu} selected={selected_sort_order[1]} el="li" />}
</ul>
Expand Down
6 changes: 4 additions & 2 deletions app/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down Expand Up @@ -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 @",
Expand Down
20 changes: 11 additions & 9 deletions app/locales/ru-RU.json
Original file line number Diff line number Diff line change
Expand Up @@ -73,15 +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_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 @",
Expand Down Expand Up @@ -451,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",
Expand Down
24 changes: 20 additions & 4 deletions app/utils/Allowance.js
Original file line number Diff line number Diff line change
Expand Up @@ -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)) {
Expand Down Expand Up @@ -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
Expand All @@ -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()
}
}
}
Expand All @@ -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 {}
Expand Down
3 changes: 3 additions & 0 deletions config/default.json
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
3 changes: 3 additions & 0 deletions config/desktop.json
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down

0 comments on commit df51f5b

Please sign in to comment.