diff --git a/client/coral-admin/src/components/ActionButton.js b/client/coral-admin/src/components/ActionButton.js index 3651ee939..cfd7eb2da 100644 --- a/client/coral-admin/src/components/ActionButton.js +++ b/client/coral-admin/src/components/ActionButton.js @@ -3,14 +3,16 @@ import styles from './ModerationList.css'; import {Button} from 'coral-ui'; import {menuActionsMap} from '../containers/ModerationQueue/helpers/moderationQueueActionsMap'; +import t from 'coral-framework/services/i18n'; + const ActionButton = ({type = '', active, ...props}) => { const typeName = type.toLowerCase(); let text = menuActionsMap[type].text; - if (text === 'Approve' && active) { - text = 'Approved'; - } else if (text === 'Reject' && active) { - text = 'Rejected'; + if (text === 'approve' && active) { + text = 'approved'; + } else if (text === 'reject' && active) { + text = 'rejected'; } return ( @@ -19,7 +21,7 @@ const ActionButton = ({type = '', active, ...props}) => { cStyle={typeName} icon={menuActionsMap[type].icon} onClick={type === 'APPROVE' ? props.acceptComment : props.rejectComment} - >{text} + >{t(`modqueue.${text}`)} ); }; diff --git a/client/coral-admin/src/components/ActionsMenu.js b/client/coral-admin/src/components/ActionsMenu.js index eb173eb81..ff4a9c5b3 100644 --- a/client/coral-admin/src/components/ActionsMenu.js +++ b/client/coral-admin/src/components/ActionsMenu.js @@ -5,9 +5,7 @@ import cn from 'classnames'; import {findDOMNode} from 'react-dom'; import styles from './ActionsMenu.css'; -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from 'coral-admin/src/translations.json'; -const lang = new I18n(translations); +import t from 'coral-framework/services/i18n'; let count = 0; @@ -43,7 +41,7 @@ class ActionsMenu extends React.Component { onClick={this.syncOpenState} icon={this.props.icon} raised> - {lang.t('modqueue.actions')} + {t('modqueue.actions')} - {errorMessage && {lang.t(`errors.${errorMessage}`)}} + {errorMessage && {t(`error.${errorMessage}`)}} × - {lang.t('dashboard.next-update', this.formatTime())} {lang.t('dashboard.auto-update')} + {t('dashboard.next_update', this.formatTime())} {t('dashboard.auto_update')}

); } diff --git a/client/coral-admin/src/components/ModerationKeysModal.js b/client/coral-admin/src/components/ModerationKeysModal.js index e3ea9e743..fabd5098c 100644 --- a/client/coral-admin/src/components/ModerationKeysModal.js +++ b/client/coral-admin/src/components/ModerationKeysModal.js @@ -1,17 +1,14 @@ -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from '../translations.json'; import React, {PropTypes} from 'react'; import Modal from 'components/Modal'; import styles from './ModerationKeysModal.css'; - -const lang = new I18n(translations); +import t from 'coral-framework/services/i18n'; const shortcuts = [ { title: 'modqueue.navigation', shortcuts: { - 'j': 'modqueue.nextcomment', - 'k': 'modqueue.prevcomment', + 'j': 'modqueue.next_comment', + 'k': 'modqueue.prev_comment', 's': 'modqueue.singleview', '?': 'modqueue.thismenu' } @@ -40,29 +37,29 @@ export default class ModerationKeysModal extends React.Component {
×
-

{lang.t('modqueue.mod-faster')}

-

{lang.t('modqueue.try-these')}:

+

{t('modqueue.mod_faster')}

+

{t('modqueue.try_these')}:

    -
  • {lang.t('modqueue.approve')} t
  • -
  • {lang.t('modqueue.reject')} r
  • +
  • {t('modqueue.approve')} t
  • +
  • {t('modqueue.reject')} r
-

{lang.t('modqueue.view-more-shortcuts')} {lang.t('modqueue.shift-key')} + /

+

{t('modqueue.view_more_shortcuts')} {t('modqueue.shift_key')} + /

-

{lang.t('modqueue.shortcuts')}

+

{t('modqueue.shortcuts')}

{shortcuts.map((shortcut, i) => ( - + {Object.keys(shortcut.shortcuts).map((key) => ( - + ))} diff --git a/client/coral-admin/src/components/ui/Drawer.js b/client/coral-admin/src/components/ui/Drawer.js index 2fcb5aafe..b49caf30a 100644 --- a/client/coral-admin/src/components/ui/Drawer.js +++ b/client/coral-admin/src/components/ui/Drawer.js @@ -2,8 +2,7 @@ import React, {PropTypes} from 'react'; import {Navigation, Drawer} from 'react-mdl'; import {IndexLink, Link} from 'react-router'; import styles from './Drawer.css'; -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from '../../translations.json'; +import t from 'coral-framework/services/i18n'; import {can} from 'coral-framework/services/perms'; const CoralDrawer = ({handleLogout, auth}) => ( @@ -15,7 +14,7 @@ const CoralDrawer = ({handleLogout, auth}) => ( className={styles.navLink} to="/admin/dashboard" activeClassName={styles.active}> - {lang.t('configure.dashboard')} + {t('configure.dashboard')} { can(auth.user, 'MODERATE_COMMENTS') && ( @@ -23,19 +22,19 @@ const CoralDrawer = ({handleLogout, auth}) => ( className={styles.navLink} to="/admin/moderate" activeClassName={styles.active}> - {lang.t('configure.moderate')} + {t('configure.moderate')} ) } - {lang.t('configure.stories')} + {t('configure.stories')} - {lang.t('configure.community')} + {t('configure.community')} { can(auth.user, 'UPDATE_CONFIG') && @@ -44,7 +43,7 @@ const CoralDrawer = ({handleLogout, auth}) => ( className={styles.navLink} to="/admin/configure" activeClassName={styles.active}> - {lang.t('configure.configure')} + {t('configure.configure')} ) } @@ -60,6 +59,4 @@ CoralDrawer.propTypes = { restricted: PropTypes.bool // hide app elements from a logged out user }; -const lang = new I18n(translations); - export default CoralDrawer; diff --git a/client/coral-admin/src/components/ui/Header.js b/client/coral-admin/src/components/ui/Header.js index f7ba83491..bbc78a321 100644 --- a/client/coral-admin/src/components/ui/Header.js +++ b/client/coral-admin/src/components/ui/Header.js @@ -2,8 +2,7 @@ import React, {PropTypes} from 'react'; import {Navigation, Header, IconButton, MenuItem, Menu} from 'react-mdl'; import {Link, IndexLink} from 'react-router'; import styles from './Header.css'; -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from '../../translations.json'; +import t from 'coral-framework/services/i18n'; import {Logo} from './Logo'; import {can} from 'coral-framework/services/perms'; @@ -23,7 +22,7 @@ const CoralHeader = ({ className={styles.navLink} to="/admin/dashboard" activeClassName={styles.active}> - {lang.t('configure.dashboard')} + {t('configure.dashboard')} { can(auth.user, 'MODERATE_COMMENTS') && ( @@ -32,7 +31,7 @@ const CoralHeader = ({ className={styles.navLink} to="/admin/moderate" activeClassName={styles.active}> - {lang.t('configure.moderate')} + {t('configure.moderate')} ) } @@ -41,14 +40,14 @@ const CoralHeader = ({ className={styles.navLink} to="/admin/stories" activeClassName={styles.active}> - {lang.t('configure.stories')} + {t('configure.stories')} - {lang.t('configure.community')} + {t('configure.community')} { can(auth.user, 'UPDATE_CONFIG') && ( @@ -57,7 +56,7 @@ const CoralHeader = ({ className={styles.navLink} to="/admin/configure" activeClassName={styles.active}> - {lang.t('configure.configure')} + {t('configure.configure')} ) } @@ -71,8 +70,8 @@ const CoralHeader = ({
- showShortcuts(true)}>{lang.t('configure.shortcuts')} - {lang.t('configure.sign-out')} + showShortcuts(true)}>{t('configure.shortcuts')} + {t('configure.sign_out')}
@@ -91,6 +90,4 @@ CoralHeader.propTypes = { handleLogout: PropTypes.func.isRequired }; -const lang = new I18n(translations); - export default CoralHeader; diff --git a/client/coral-admin/src/containers/Community/FlaggedAccounts.js b/client/coral-admin/src/containers/Community/FlaggedAccounts.js index 692cef70d..222ace8bb 100644 --- a/client/coral-admin/src/containers/Community/FlaggedAccounts.js +++ b/client/coral-admin/src/containers/Community/FlaggedAccounts.js @@ -1,11 +1,7 @@ import React from 'react'; -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from 'coral-admin/src/translations.json'; -const lang = new I18n(translations); - +import t from 'coral-framework/services/i18n'; import styles from './Community.css'; - import Loading from './Loading'; import EmptyCard from 'coral-admin/src/components/EmptyCard'; import User from './components/User'; @@ -34,7 +30,7 @@ const FlaggedAccounts = ({...props}) => { suspendUser={props.suspendUser} />; }) - : {lang.t('community.no-flagged-accounts')} + : {t('community.no_flagged_accounts')} } diff --git a/client/coral-admin/src/containers/Community/Loading.js b/client/coral-admin/src/containers/Community/Loading.js index beda271eb..72353a619 100644 --- a/client/coral-admin/src/containers/Community/Loading.js +++ b/client/coral-admin/src/containers/Community/Loading.js @@ -1,7 +1,9 @@ import React from 'react'; +import t from 'coral-framework/services/i18n'; + const Loading = () => ( -

Loading results

+

{t('loading_results')}

); export default Loading; diff --git a/client/coral-admin/src/containers/Community/People.js b/client/coral-admin/src/containers/Community/People.js index e375bac38..4afbe387f 100644 --- a/client/coral-admin/src/containers/Community/People.js +++ b/client/coral-admin/src/containers/Community/People.js @@ -1,29 +1,26 @@ import React from 'react'; -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from 'coral-admin/src/translations.json'; import styles from './Community.css'; import Table from './Table'; import {Pager, Icon} from 'coral-ui'; import EmptyCard from '../../components/EmptyCard'; - -const lang = new I18n(translations); +import t from 'coral-framework/services/i18n'; const tableHeaders = [ { - title: lang.t('community.username_and_email'), + title: t('community.username_and_email'), field: 'username' }, { - title: lang.t('community.account_creation_date'), + title: t('community.account_creation_date'), field: 'created_at' }, { - title: lang.t('community.status'), + title: t('community.status'), field: 'status' }, { - title: lang.t('community.newsroom_role'), + title: t('community.newsroom_role'), field: 'role' } ]; @@ -41,7 +38,7 @@ const People = ({commenters, searchValue, onSearchChange, ...props}) => { className={styles.searchBoxInput} value={searchValue} onChange={onSearchChange} - placeholder={lang.t('streams.search')} + placeholder={t('streams.search')} /> @@ -53,7 +50,7 @@ const People = ({commenters, searchValue, onSearchChange, ...props}) => { commenters={commenters} onHeaderClickHandler={props.onHeaderClickHandler} /> - : {lang.t('community.no-results')} + : {t('community.no_results')} } this.onCommenterStatusChange(row.id, status)}> - - + + diff --git a/client/coral-admin/src/containers/Community/components/ActionButton.js b/client/coral-admin/src/containers/Community/components/ActionButton.js index ad5346ac5..34eb852e4 100644 --- a/client/coral-admin/src/containers/Community/components/ActionButton.js +++ b/client/coral-admin/src/containers/Community/components/ActionButton.js @@ -4,6 +4,8 @@ import BanUserButton from './BanUserButton'; import {Button} from 'coral-ui'; import {menuActionsMap} from '../../../containers/ModerationQueue/helpers/moderationQueueActionsMap'; +import t from 'coral-framework/services/i18n'; + const ActionButton = ({type = '', user, ...props}) => { if (type === 'BAN') { return props.showBanUserDialog(user)} />; @@ -17,7 +19,7 @@ const ActionButton = ({type = '', user, ...props}) => { onClick={() => { type === 'APPROVE' ? props.approveUser({userId: user.id}) : props.showSuspendUserDialog({user: user}); }} - >{menuActionsMap[type].text} + >{t(`modqueue.${menuActionsMap[type].text}`)} ); }; diff --git a/client/coral-admin/src/containers/Community/components/BanUserButton.js b/client/coral-admin/src/containers/Community/components/BanUserButton.js index a54cdd322..cc4935204 100644 --- a/client/coral-admin/src/containers/Community/components/BanUserButton.js +++ b/client/coral-admin/src/containers/Community/components/BanUserButton.js @@ -2,9 +2,7 @@ import React, {PropTypes} from 'react'; import {Button, Icon} from 'coral-ui'; import styles from './BanUserButton.css'; -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from 'coral-admin/src/translations.json'; -const lang = new I18n(translations); +import t from 'coral-framework/services/i18n'; const BanUserButton = ({user, ...props}) => (
@@ -14,7 +12,7 @@ const BanUserButton = ({user, ...props}) => ( onClick={props.onClick} raised> - {lang.t('comment.ban_user')} + {t('comment.ban_user')}
); diff --git a/client/coral-admin/src/containers/Community/components/BanUserDialog.js b/client/coral-admin/src/containers/Community/components/BanUserDialog.js index affffcd54..26a885e8b 100644 --- a/client/coral-admin/src/containers/Community/components/BanUserDialog.js +++ b/client/coral-admin/src/containers/Community/components/BanUserDialog.js @@ -4,10 +4,7 @@ import styles from './BanUserDialog.css'; import Button from 'coral-ui/components/Button'; -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from 'coral-admin/src/translations.json'; - -const lang = new I18n(translations); +import t from 'coral-framework/services/i18n'; const BanUserDialog = ({open, handleClose, handleBanUser, user}) => ( ( open={open} onClose={handleClose} onCancel={handleClose} - title={lang.t('community.ban_user')}> + title={t('community.ban_user')}> ×
-

{lang.t('community.ban_user')}

+

{t('community.ban_user')}

-

{lang.t('community.are_you_sure', user.username)}

- {lang.t('community.note')} +

{t('community.are_you_sure', user.username)}

+ {t('community.note')}
diff --git a/client/coral-admin/src/containers/Community/components/CommunityMenu.js b/client/coral-admin/src/containers/Community/components/CommunityMenu.js index 9a51798ec..b89e9350a 100644 --- a/client/coral-admin/src/containers/Community/components/CommunityMenu.js +++ b/client/coral-admin/src/containers/Community/components/CommunityMenu.js @@ -1,14 +1,9 @@ import React from 'react'; import styles from './styles.css'; - -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from 'coral-admin/src/translations.json'; - +import t from 'coral-framework/services/i18n'; import {Link} from 'react-router'; -const lang = new I18n(translations); - const CommunityMenu = () => { const flaggedPath = '/admin/community/flagged'; const peoplePath = '/admin/community/people'; @@ -17,10 +12,10 @@ const CommunityMenu = () => {
- {lang.t('community.flaggedaccounts')} + {t('community.flaggedaccounts')} - {lang.t('community.people')} + {t('community.people')}
diff --git a/client/coral-admin/src/containers/Community/components/SuspendUserDialog.js b/client/coral-admin/src/containers/Community/components/SuspendUserDialog.js index b717d1719..0db31ccc1 100644 --- a/client/coral-admin/src/containers/Community/components/SuspendUserDialog.js +++ b/client/coral-admin/src/containers/Community/components/SuspendUserDialog.js @@ -3,10 +3,7 @@ import React, {Component, PropTypes} from 'react'; import {Dialog, Button} from 'coral-ui'; import styles from './SuspendUserDialog.css'; -import I18n from 'coral-framework/modules/i18n/i18n'; -import translations from 'coral-admin/src/translations.json'; - -const lang = new I18n(translations); +import t from 'coral-framework/services/i18n'; const stages = [ { @@ -38,7 +35,7 @@ class SuspendUserDialog extends Component { } componentDidMount() { - this.setState({email: lang.t('suspenduser.email_message_reject'), about: lang.t('suspenduser.username')}); + this.setState({email: t('suspenduser.email_message_reject'), about: t('suspenduser.username')}); } /* @@ -79,18 +76,18 @@ class SuspendUserDialog extends Component { open={open} onClose={handleClose} onCancel={handleClose} - title={lang.t('suspenduser.suspend_user')}> + title={t('suspenduser.suspend_user')}>
- {lang.t(stages[stage].title, lang.t('suspenduser.username'))} + {t(stages[stage].title, t('suspenduser.username'))}
- {lang.t(stages[stage].description, lang.t('suspenduser.username'))} + {t(stages[stage].description, t('suspenduser.username'))}
{ stage === 1 &&
-
{lang.t('suspenduser.write_message')}
+
{t('suspenduser.write_message')}
{lang.t(shortcut.title)}{t(shortcut.title)}
{key}{lang.t(shortcut.shortcuts[key])}{t(shortcut.shortcuts[key])}
this.onRoleChange(row.id, role)}> - - - + + +