Commit 7af94df0 authored by Valentine Zavgorodnev's avatar Valentine Zavgorodnev Committed by GitHub
Browse files

Fix some of the i18n issues (#1726)

* remvoe obsolete BlocktradesDeposit dialog

* wip..

* wip..

* wip..
parent 45a27d0c
......@@ -157,14 +157,9 @@ class App extends React.Component {
<CloseButton onClick={() => this.setState({showCallout: false})} />
<ul>
<li>
<a href="https://steemit.com/steemit/@steemitblog/steemit-com-is-now-open-source">
{tt('submit_a_story.APP_NAME_is_now_open_source', {APP_NAME})}
</a>
</li>
<li>
<a href="https://steemit.com/steemit/@steemitblog/all-recovered-accounts-have-been-fully-refunded">
{tt('submit_a_story.all_accounts_refunded')}
</a>
/*<a href="https://steemit.com/steemit/@steemitblog/steemit-com-is-now-open-source">
...STORY TEXT...
</a>*/
</li>
</ul>
</div>
......
......@@ -43,7 +43,6 @@
@import "./modules/SidePanel";
@import "./modules/BottomPanel";
@import "./modules/UserWallet";
@import "./modules/BlocktradesDeposit";
@import "./modules/TopRightMenu";
// pages
......
......@@ -109,12 +109,12 @@ export default class Orderbook extends React.Component {
<ul className="pager">
<li>
<div className={"button tiny hollow " + (buy ? "float-left" : "float-left") + (currentIndex === 0 ? " disabled" : "")} onClick={this._setBuySellPage.bind(this, false)} aria-label="Previous">
<span aria-hidden="true">&larr; {tt(buy ? 'market_jsx.higher' : 'market_jsx.lower')}</span>
<span aria-hidden="true">&larr; {buy ? tt('market_jsx.higher') : tt('market_jsx.lower')}</span>
</div>
</li>
<li>
<div className={"button tiny hollow " + (buy ? "float-right" : "float-right") + (currentIndex >= (orders.length - 10) ? " disabled" : "")} onClick={this._setBuySellPage.bind(this, true)} aria-label="Next">
<span aria-hidden="true">{tt(buy ? 'market_jsx.lower' : 'market_jsx.higher')} &rarr;</span>
<span aria-hidden="true">{buy ? tt('market_jsx.lower') : tt('market_jsx.higher')} &rarr;</span>
</div>
</li>
</ul>
......
......@@ -598,8 +598,8 @@ export default formId => connect(
}
if(meta.tags.length > 5) {
const includingCategory = isEdit ? ` (including the category '${rootCategory}')` : ''
errorCallback(`You have ${meta.tags.length} tags total${includingCategory}. Please use only 5 in your post and category line.`)
const includingCategory = isEdit ? tt('reply_editor.including_the_category', {rootCategory}) : ''
errorCallback(tt('reply_editor.use_limited_amount_of_tags', {tagsLength: meta.tags.length, includingCategory}))
return
}
......
......@@ -124,46 +124,6 @@ class AuthorRewards extends React.Component {
</div>
</div>
{/* -- These estimates have been causing issus, see #600 --
<div className="UserWallet__balance UserReward__row row">
<div className="column small-12 medium-8">
{tt('author_rewards_last_24_hours')}:
</div>
<div className="column small-12 medium-4">
{numberWithCommas(vestsToSp(this.props.state, rewards24Vests + " " + VEST_TICKER)) + " " + VESTING_TOKEN}
<br />
{rewards24Steem.toFixed(3) + " " + LIQUID_TICKER}
<br />
{rewards24SBD.toFixed(3) + " " + DEBT_TOKEN_SHORT}
</div>
</div>
<div className="UserWallet__balance UserReward__row row">
<div className="column small-12 medium-8">
{tt('authorrewards_jsx.daily_average_author_rewards')}
</div>
<div className="column small-12 medium-4">
{numberWithCommas(vestsToSp(this.props.state, averageCurationVests + " " + VEST_TICKER)) + " " + VESTING_TOKEN}
<br />
{averageCurationSteem.toFixed(3) + " " + LIQUID_TICKER}
<br />
{averageCurationSBD.toFixed(3) + " " + DEBT_TOKEN_SHORT}
</div>
</div>
<div className="UserWallet__balance UserReward__row row">
<div className="column small-12 medium-8">
{tt(!hasFullWeek ? 'estimated_author_rewards_last_week' : 'author_rewards_last_week')}:
</div>
<div className="column small-12 medium-4">
{numberWithCommas(vestsToSp(this.props.state, (hasFullWeek ? rewardsWeekVests : averageCurationVests * 7) + " " + VEST_TICKER)) + " " + VESTING_TOKEN}
<br />
{(hasFullWeek ? rewardsWeekSteem : averageCurationSteem * 7).toFixed(3) + " " + LIQUID_TICKER}
<br />
{(hasFullWeek ? rewardsWeekSBD : averageCurationSBD * 7).toFixed(3) + " " + DEBT_TOKEN_SHORT}
</div>
</div>
*/}
<div className="row">
<div className="column small-12">
<hr />
......
This diff is collapsed.
.BlocktradesDeposit {
}
.BlocktradesDeposit__history {
overflow-y: auto;
max-height: 150px;
}
......@@ -5,7 +5,6 @@ import Reveal from 'react-foundation-components/lib/global/reveal';
import g from 'app/redux/GlobalReducer'
import {Map, List} from 'immutable'
import shouldComponentUpdate from 'app/utils/shouldComponentUpdate';
import BlocktradesDeposit from 'app/components/modules/BlocktradesDeposit'
import QrReader from 'app/components/elements/QrReader'
import ConvertToSteem from 'app/components/elements/ConvertToSteem'
import SuggestPassword from 'app/components/elements/SuggestPassword'
......@@ -38,13 +37,7 @@ class Dialogs extends React.Component {
const {active_dialogs} = this.props
let idx = 0
const dialogs = active_dialogs.reduce((r, v, k) => {
const cmp = k === 'blocktrades_deposit' ? <span key={idx++}>
<Reveal onHide={this['hide_' + k]} show>
<CloseButton onClick={this['hide_' + k]} />
<BlocktradesDeposit onClose={this['hide_' + k]} {...v.get('params').toJS()} />
</Reveal>
</span>:
k === 'qr_reader' ? <span key={idx++} >
const cmp = k === 'qr_reader' ? <span key={idx++} >
<Reveal onHide={this['hide_' + k]} show revealStyle={{width: '355px'}} >
<CloseButton onClick={this['hide_' + k]} />
<QrReader onClose={this['hide_' + k]} {...v.get('params').toJS()} />
......
......@@ -157,9 +157,7 @@ class Header extends React.Component {
['created', tt('g.new')],
['hot', tt('main_menu.hot')],
['trending', tt('main_menu.trending')],
['promoted', tt('g.promoted')],
//['payout', 'payout (posts)'],
//['payout_comments', 'payout (comments)'],
['promoted', tt('g.promoted')]
];
if (current_account_name) sort_orders.unshift(['home', tt('header_jsx.home')]);
const sort_order_menu = sort_orders.filter(so => so[0] !== sort_order).map(so => ({link: sortOrderToLink(so[0], topic, current_account_name), value: so[1]}));
......@@ -169,9 +167,7 @@ class Header extends React.Component {
['created', tt('g.new')],
['hot', tt('main_menu.hot')],
['trending', tt('main_menu.trending')],
['promoted', tt('g.promoted')],
//['payout', 'payout (posts)'],
//['payout_comments', 'payout (comments)'],
['promoted', tt('g.promoted')]
];
if (current_account_name) sort_orders_horizontal.unshift(['home', tt('header_jsx.home')]);
const sort_order_menu_horizontal = sort_orders_horizontal.map((so) => {
......
......@@ -35,6 +35,7 @@ function TopRightMenu({username, showLogin, logout, loggedIn, vertical, navigate
const comments_link = `/@${username}/comments`;
const reset_password_link = `/@${username}/password`;
const settings_link = `/@${username}/settings`;
const tt_search = tt('g.search');
if (loggedIn) { // change back to if(username) after bug fix: Clicking on Login does not cause drop-down to close #TEMP!
const user_menu = [
{link: feed_link, icon: "home", value: tt('g.feed'), addon: <NotifiCounter fields="feed" />},
......@@ -50,7 +51,7 @@ function TopRightMenu({username, showLogin, logout, loggedIn, vertical, navigate
];
return (
<ul className={mcn + mcl}>
<li className={lcn + " Header__search"}><a href="/static/search.html" title="Search">{vertical ? <span>Search</span> : <Icon name="search" />}</a></li>
<li className={lcn + " Header__search"}><a href="/static/search.html" title={tt_search}>{vertical ? <span>{tt_search}</span> : <Icon name="search" />}</a></li>
{submit_story}
{!vertical && submit_icon}
<LinkWithDropdown
......@@ -77,7 +78,7 @@ function TopRightMenu({username, showLogin, logout, loggedIn, vertical, navigate
if (probablyLoggedIn) {
return (
<ul className={mcn + mcl}>
{!vertical && <li className="Header__search"><a href="/static/search.html" title="Search"><Icon name="search" /></a></li>}
{!vertical && <li className="Header__search"><a href="/static/search.html" title={tt_search}><Icon name="search" /></a></li>}
<li className={lcn} style={{paddingTop: 0, paddingBottom: 0}}><LoadingIndicator type="circle" inline /></li>
{toggleOffCanvasMenu && <li className="toggle-menu Header__hamburger"><a href="#" onClick={toggleOffCanvasMenu}>
<span className="hamburger" />
......@@ -87,7 +88,7 @@ function TopRightMenu({username, showLogin, logout, loggedIn, vertical, navigate
}
return (
<ul className={mcn + mcl}>
{!vertical && <li className="Header__search"><a href="/static/search.html" title="Search"><Icon name="search" /></a></li>}
{!vertical && <li className="Header__search"><a href="/static/search.html" title={tt_search}><Icon name="search" /></a></li>}
<li className={lcn}><a href="/pick_account">{tt('g.sign_up')}</a></li>
<li className={lcn}><a href="/login.html" onClick={showLogin}>{tt('g.login')}</a></li>
{submit_story}
......
......@@ -236,10 +236,10 @@ class TransferForm extends Component {
{!loading && <span>
{trxError && <div className="error">{trxError}</div>}
<button type="submit" disabled={submitting || !valid} className="button">
{tt(toVesting ? 'g.power_up' : 'g.submit')}
{toVesting ? tt('g.power_up') : tt('g.submit')}
</button>
{transferToSelf && <button className="button hollow no-border" disabled={submitting}
onClick={this.onAdvanced}>{tt(advanced ? 'g.basic' : 'g.advanced')}</button>}
onClick={this.onAdvanced}>{advanced ? tt('g.basic') : tt('g.advanced')}</button>}
</span>}
</div>
</div>
......
......@@ -7,9 +7,6 @@ import SavingsWithdrawHistory from 'app/components/elements/SavingsWithdrawHisto
import TransferHistoryRow from 'app/components/cards/TransferHistoryRow';
import TransactionError from 'app/components/elements/TransactionError';
import TimeAgoWrapper from 'app/components/elements/TimeAgoWrapper';
import BlocktradesDeposit from 'app/components/modules/BlocktradesDeposit';
import Reveal from 'react-foundation-components/lib/global/reveal'
import CloseButton from 'react-foundation-components/lib/global/close-button';
import {numberWithCommas, vestingSteem, delegatedSteem} from 'app/utils/StateFunctions'
import FoundationDropdownMenu from 'app/components/elements/FoundationDropdownMenu'
import WalletSubMenu from 'app/components/elements/WalletSubMenu'
......@@ -27,10 +24,8 @@ class UserWallet extends React.Component {
constructor() {
super();
this.state = {};
this.onShowDeposit = () => {this.setState({showDeposit: !this.state.showDeposit})};
this.onShowDepositSteem = (e) => {
if (e && e.preventDefault) e.preventDefault();
// this.setState({showDeposit: !this.state.showDeposit, depositType: 'STEEM'})
const name = this.props.current_user.get('username');
const new_window = window.open();
new_window.opener = null;
......@@ -44,7 +39,6 @@ class UserWallet extends React.Component {
};
this.onShowDepositPower = (current_user_name, e) => {
e.preventDefault();
// this.setState({showDeposit: !this.state.showDeposit, depositType: 'VESTS'})
const new_window = window.open();
new_window.opener = null;
new_window.location = 'https://blocktrades.us/?input_coin_type=btc&output_coin_type=steem_power&receive_address=' + current_user_name;
......@@ -61,12 +55,10 @@ class UserWallet extends React.Component {
new_window.opener = null;
new_window.location = 'https://blocktrades.us/unregistered_trade/sbd/btc';
};
// this.onShowDeposit = this.onShowDeposit.bind(this)
this.shouldComponentUpdate = shouldComponentUpdate(this, 'UserWallet');
}
render() {
const {state: {showDeposit, depositType, toggleDivestError},
onShowDeposit, onShowDepositSteem, onShowWithdrawSteem,
const {onShowDepositSteem, onShowWithdrawSteem,
onShowDepositSBD, onShowWithdrawSBD, onShowDepositPower} = this;
const {convertToSteem, price_per_steem, savings_withdraws, account,
current_user, open_orders} = this.props;
......@@ -214,12 +206,6 @@ class UserWallet extends React.Component {
}
const isWithdrawScheduled = new Date(account.get('next_vesting_withdrawal') + 'Z').getTime() > Date.now()
const depositReveal = showDeposit && <div>
<Reveal onHide={onShowDeposit} show={showDeposit}>
<CloseButton onClick={onShowDeposit} />
<BlocktradesDeposit onClose={onShowDeposit} outputCoinType={depositType} />
</Reveal>
</div>
const steem_balance_str = numberWithCommas(balance_steem.toFixed(3));
const steem_orders_balance_str = numberWithCommas(steemOrders.toFixed(3));
......@@ -268,7 +254,7 @@ class UserWallet extends React.Component {
<div className="columns small-12">
<div className="UserWallet__claimbox">
Your current rewards: {rewards_str}
<button className="button hollow float-right" onClick={e => {this.props.claimRewards(account)}}>Redeem Rewards (Transfer to Balance)</button>
<button className="button hollow float-right" onClick={e => {this.props.claimRewards(account)}}>{tt('userwallet_jsx.redeem_rewards')}</button>
</div>
</div>
</div>
......@@ -281,7 +267,7 @@ class UserWallet extends React.Component {
{isMyAccount ? <WalletSubMenu account_name={account.get('name')} /> : <div><br /><h4>{tt('g.balances')}</h4><br /></div>}
</div>
{<div className="columns shrink">
{isMyAccount && <button className="UserWallet__buysp button hollow" onClick={onShowDepositSteem}>Buy Steem or Steem Power</button>}
{isMyAccount && <button className="UserWallet__buysp button hollow" onClick={onShowDepositSteem}>{tt('userwallet_jsx.buy_steem_or_steem_power')}</button>}
</div>}
</div>
<div className="UserWallet__balance row">
......@@ -327,7 +313,7 @@ class UserWallet extends React.Component {
{tt('userwallet_jsx.savings')}
<div className="secondary">
<span>{tt('transfer_jsx.balance_subject_to_3_day_withdraw_waiting_period')}</span>
<span>{tt('asset_currently_collecting', {asset: DEBT_TOKENS, interest: sbdInterest})}</span>
<span>{tt('transfer_jsx.asset_currently_collecting', {asset: DEBT_TOKENS, interest: sbdInterest})}</span>
</div>
</div>
<div className="column small-12 medium-4">
......@@ -382,7 +368,6 @@ class UserWallet extends React.Component {
</table>
</div>
</div>
{depositReveal}
</div>);
}
}
......
......@@ -247,7 +247,7 @@ class Market extends React.Component {
const rows = open_orders && normalizeOpenOrders(open_orders).map( o =>
<tr key={o.orderid}>
<td>{o.created.replace('T', ' ')}</td>
<td>{tt(o.type == 'g.ask' ? 'g.sell' : 'g.buy')}</td>
<td>{o.type == 'g.ask' ? tt('g.sell') : tt('g.buy')}</td>
<td>{CURRENCY_SIGN}{o.price.toFixed(6)}</td>
<td>{o.steem}</td>
<td>{o.sbd.replace('SBD', DEBT_TOKEN_SHORT)}</td>
......@@ -577,14 +577,16 @@ module.exports = {
String(parseFloat(min_to_receive).toFixed(3)))
const isSell = amount_to_sell.indexOf(LIQUID_TICKER) > 0;
const confirmStr = tt(isSell
? 'market_jsx.sell_amount_for_atleast'
: 'market_jsx.buy_atleast_amount_for',
{amount_to_sell, min_to_receive, effectivePrice}
)
const confirmStr = isSell ?
tt('market_jsx.sell_amount_for_atleast', {amount_to_sell, min_to_receive, effectivePrice})
: tt('market_jsx.buy_atleast_amount_for', {amount_to_sell, min_to_receive, effectivePrice})
const successMessage = tt('g.order_placed') + ': ' + confirmStr
const confirm = confirmStr + '?'
const warning = priceWarning ? tt('market_jsx.price_warning_'+(isSell ? "below" : "above"), {marketPrice: CURRENCY_SIGN + parseFloat(marketPrice).toFixed(4) + "/" + LIQUID_TOKEN_UPPERCASE}) : null;
let warning = null;
if (priceWarning) {
const warning_args = {marketPrice: CURRENCY_SIGN + parseFloat(marketPrice).toFixed(4) + "/" + LIQUID_TOKEN_UPPERCASE};
warning = isSell ? tt('market_jsx.price_warning_below', warning_args) : tt('market_jsx.price_warning_above', warning_args);
}
const orderid = Math.floor(Date.now() / 1000)
dispatch(transaction.actions.broadcastOperation({
type: 'limit_order_create',
......
......@@ -112,9 +112,9 @@ class Post extends React.Component {
const negativeGroup = commentHidden &&
(<div className="hentry Comment root Comment__negative_group">
<p>
{tt(showNegativeComments ? 'post_jsx.now_showing_comments_with_low_ratings' : 'post_jsx.comments_were_hidden_due_to_low_ratings')}.{' '}
{showNegativeComments ? tt('post_jsx.now_showing_comments_with_low_ratings') : tt('post_jsx.comments_were_hidden_due_to_low_ratings')}.{' '}
<button className="button hollow tiny float-right" onClick={e => this.toggleNegativeReplies(e)}>
{tt(showNegativeComments ? 'g.hide' :'g.show')}
{showNegativeComments ? tt('g.hide') : tt('g.show')}
</button>
</p>
</div>);
......
......@@ -116,7 +116,7 @@ class PostsIndex extends React.Component {
</div>
<div className="PostsIndex__topics column shrink show-for-large">
<Topics order={topics_order} current={category} compact={false} />
<small><a onClick={this.onShowSpam}>{tt(showSpam ? 'g.next_3_strings_together.show_less' : 'g.next_3_strings_together.show_more')}</a>{' ' + tt('g.next_3_strings_together.value_posts')}</small>
<small><a onClick={this.onShowSpam}>{showSpam ? tt('g.next_3_strings_together.show_less') : tt('g.next_3_strings_together.show_more')}</a>{' ' + tt('g.next_3_strings_together.value_posts')}</small>
</div>
</div>
);
......
......@@ -5,14 +5,12 @@
"and": "and",
"are_you_sure": "Are you sure?",
"ask": "Ask",
"back": "Back",
"balance": "Balance",
"balances": "Balances",
"bid": "Bid",
"blog": "Blog",
"browse": "Browse",
"buy": "Buy",
"buy_VESTING_TOKEN": "Buy %(VESTING_TOKEN)s",
"buy_or_sell": "Buy or Sell",
"by": "by",
"cancel": "Cancel",
......@@ -30,7 +28,6 @@
"edit": "Edit",
"email": "Email",
"feed": "Feed",
"feeds": "Feeds",
"follow": "Follow",
"for": " for ",
"from": " from ",
......@@ -45,13 +42,11 @@
"login": "Login",
"logout": "Logout",
"memo": "Memo",
"more": "more",
"mute": "Mute",
"new": "new",
"newer": "Newer",
"next": "Next",
"no": "No",
"nothing_yet": "Nothing yet",
"ok": "Ok",
"older": "Older",
"or": "or",
......@@ -79,7 +74,7 @@
"replies": "Replies",
"reply": "Reply",
"reply_count": {
"zero": "no replies",
"zero": "no replies",
"one": "1 reply",
"other": "%(count)s replies"
},
......@@ -104,7 +99,6 @@
"tag": "Tag",
"to": " to ",
"topics": "Topics",
"transaction_history": "Transaction History",
"transfer": "Transfer ",
"trending_topics": "Trending Topics",
"type": "Type",
......@@ -178,70 +172,26 @@
"thank_you_for_being_an_early_visitor_to_APP_NAME": "Thank you for being an early visitor to %(APP_NAME)s. We will get back to you at the earliest possible opportunity.",
"author_rewards": "Author rewards",
"curation_rewards": "Curation rewards",
"connection_lost_reconnecting": "Connection lost, reconnecting",
"sorry_your_reddit_account_doesnt_have_enough_karma": "Sorry, your Reddit account doesn't have enough Reddit Karma to qualify for a free sign up. Please add your email for a place on the waiting list",
"register_with_facebook": "Register with Facebook",
"or_click_the_button_below_to_register_with_facebook": "Or click the button below to register with Facebook",
"server_returned_error": "server returned error",
"APP_NAME_support": "%(APP_NAME)s Support",
"please_email_questions_to": "Please email your questions to",
"next_7_strings_single_block": {
"authors_get_paid_when_people_like_you_upvote_their_post": "Authors get paid when people like you upvote their post",
"if_you_enjoyed_what_you_read_earn_amount": "If you enjoyed what you read here, create your account today and start earning FREE STEEM!",
"when_you": "when you",
"when_you_link_text": "Sign Up",
"and_vote_for_it": "and vote for it",
"sign_up_now_to_receive": "Sign up now to receive ",
"free_steem": "FREE STEEM!",
"sign_up_earn_steem": "Sign up now to earn "
},
"next_3_strings_together": {
"show_more": "Show more",
"show_less": "Show fewer",
"value_posts": "low value posts"
},
"read_only_mode": "Due to server maintenance we are running in read only mode. We are sorry for the inconvenience.",
"membership_invitation_only": "Membership to %(APP_URL)s is now under invitation only because of unexpectedly high sign up rate.",
"submit_email_to_get_on_waiting_list": "Submit your email to get on the waiting list",
"show_less_low_value_posts": "Show fewer low value posts",
"show_more_low_value_posts": "Show more low value posts",
"select_topic": "Select Topic",
"tags_and_topics": "Tags and Topics",
"filter": "Filter",
"show_more_topics": "Show more topics",
"we_require_social_account": "%(APP_NAME)s funds each account with over %(signup_bonus)s worth of %(VESTING_TOKEN)s; to prevent abuse, we require new users to login via social media.",
"personal_info_will_be_private": "Your personal information will be kept",
"personal_info_will_be_private_link": "Private",
"continue_with_facebook": "Continue with Facebook",
"continue_with_reddit": "Continue with Reddit",
"continue_with_vk": "Continue with Vk",
"requires_positive_karma": "requires positive Reddit comment karma",
"dont_have_facebook": "Don't have a Facebook or Reddit account?",
"subscribe_to_get_sms_confirm": "Subscribe to get a notification when SMS confirmation is available",
"by_verifying_you_agree": "By verifying your account you agree to the %(APP_NAME)s",
"by_verifying_you_agree_terms_and_conditions": "terms and conditions",
"terms_and_conditions": "Terms and Conditions",
"cryptography_test_failed": "Cryptography test failed",
"unable_to_log_you_in": "We will be unable to log you in with this browser",
"next_3_blocks": {
"the_latest_versions_of": "The latest versions of",
"and": "and",
"are_well_tested_and_known_to_work_with": "are well tested and known to work with %(APP_URL)s."
},
"account_creation_succes": "Your account has been successfully created!",
"account_recovery_succes": "Your account has been successfully recovered!",
"password_update_succes": "The password for %(accountName)s was successfully updated",
"password_is_bound_to_your_accounts_owner_key": "This password is bound to your account's owner key and can not be used to login to this site",
"however_you_can_use_it_to": "However, you can use it to",
"to_obtaion_a_more_secure_set_of_keys": "to obtain a more secure set of keys",
"update_your_password": "update your password",
"enter_username": "Enter your username",
"password_or_wif": "Password or WIF",
"requires_auth_key": "This operation requires your %(authType)s key (or use your master password)",
"keep_me_logged_in": "Keep me logged in",
"basic": "Basic",
"advanced": "Advanced",
"views": {
......@@ -261,12 +211,9 @@
"APP_NAME_whitepaper": "%(APP_NAME)s Whitepaper",
"buy_LIQUID_TOKEN": "Buy %(LIQUID_TOKEN)s",
"sell_LIQUID_TOKEN": "Sell %(LIQUID_TOKEN)s",
"market": "Market",
"currency_market": "Currency Market",
"stolen_account_recovery": "Stolen Accounts Recovery",
"change_account_password": "Change Account Password",
"APP_NAME_api_docs": "%(APP_NAME)s API Docs",
"APP_NAME_chat": "%(APP_NAME)s Chat",
"witnesses": "Witnesses",
"vote_for_witnesses": "Vote for Witnesses",
"privacy_policy": "Privacy Policy",
......@@ -281,30 +228,19 @@
},
"main_menu": {
"hot": "hot",
"trending": "trending",
"payout_time": "payout time",
"active": "active",
"responses": "responses",
"popular": "popular"
"trending": "trending"
},
"submit_a_story": {
"title": "Title",
"editor": "Editor",
"update_post": "Update Post",
"markdown_is_supported": "Styling with Markdown is supported",
"markdown_not_supported": "Markdown is not supported here",
"welcome_to_the_blockchain": "Welcome to the Blockchain!",
"your_voice_is_worth_something": "Your voice is worth something",
"learn_more": "Learn More",
"get_sp_when_sign_up": "Get %(signupBonus)s of %(VESTING_TOKEN)s when you sign up today.",
"all_accounts_refunded": "All Recovered Accounts have been fully Refunded",
"APP_NAME_is_now_open_source": " %(APP_NAME)s is now Open Source"
"get_sp_when_sign_up": "Get %(signupBonus)s of %(VESTING_TOKEN)s when you sign up today."
},
"reply_editor": {
"shorten_title": "Shorten title",
"exceeds_maximum_length": "Exceeds maximum length (%(maxKb)sKB)",
"including_the_category": "(including the category '%(rootCategory)s')",
"use_limited_amount_of_tags": "You have %(tagsLength)s tags total %(includingCategory)s. Please use only 5 in your post and category line.",
"including_the_category": " (including the category '%(rootCategory)s')",
"use_limited_amount_of_tags": "You have %(tagsLength)s tags total%(includingCategory)s. Please use only 5 in your post and category line.",
"are_you_sure_you_want_to_clear_this_form": "Are you sure you want to clear this form?",
"uploading": "Uploading",
"draft_saved": "Draft saved.",
......@@ -332,15 +268,11 @@
"must_start_with_a_letter": "Must start with a letter",
"must_end_with_a_letter_or_number": "Must end with a letter or number"
},
"tags_page": {
"replies": "Replies",
"payouts": "Payouts"
},
"postfull_jsx": {
"this_post_is_not_available_due_to_a_copyright_claim": "This post is not available due to a copyright claim.",
"share_on_facebook" : "Share on Facebook",
"share_on_twitter" : "Share on Twitter",
"share_on_linkedin" : "Share on Linkedin",
"share_on_facebook": "Share on Facebook",
"share_on_twitter": "Share on Twitter",
"share_on_linkedin": "Share on Linkedin",
"share": "Share",
"transfer_amount_to_VESTING_TOKEN": "Transfer %(amount)s to %(VESTING_TOKEN)s",
"transfer_amount_VESTING_TOKEN_to": "Transfer %(amount)s %(VESTING_TOKEN)s to",
......@@ -425,17 +357,17 @@
"followers": "Followers",
"this_is_users_reputations_score_it_is_based_on_history_of_votes": "This is %(name)s's reputation score.\n\nThe reputation score is based on the history of votes received by the account, and is used to hide low quality content.",
"follower_count": {
"zero": "No followers",
"zero": "No followers",
"one": "1 follower",
"other": "%(count)s followers"
},
"followed_count": {
"zero": "Not following anybody",
"zero": "Not following anybody",
"one": "1 following",
"other": "%(count)s following"
},
"post_count": {
"zero": "No posts",
"post_count": {
"zero": "No posts",
"one": "1 post",
"other": "%(count)s posts"
}
......@@ -663,11 +595,11 @@
"to_save_your_preferences": "to save your preferences"
},
"posts_index": {
"empty_feed_1": "Looks like you haven't followed anything yet",
"empty_feed_2": "If you recently added new users to follow, your personalized feed will populate once new content is available",
"empty_feed_3": "Explore Trending Articles",
"empty_feed_4": "Read The Quick Start Guide",
"empty_feed_5": "Browse The FAQ"
"empty_feed_1": "Looks like you haven't followed anything yet",
"empty_feed_2": "If you recently added new users to follow, your personalized feed will populate once new content is available",
"empty_feed_3": "Explore Trending Articles",
"empty_feed_4": "Read The Quick Start Guide",
"empty_feed_5": "Browse The FAQ"
},
"transferhistoryrow_jsx": {