diff --git a/client/coral-admin/src/components/ModerationList.css b/client/coral-admin/src/components/ModerationList.css
index 7036998d1..fc2ba9931 100644
--- a/client/coral-admin/src/components/ModerationList.css
+++ b/client/coral-admin/src/components/ModerationList.css
@@ -186,4 +186,5 @@
.actionButton {
transform: scale(.8);
margin: 0;
+ width: 140px;
}
diff --git a/client/coral-admin/src/containers/Dashboard/Dashboard.js b/client/coral-admin/src/containers/Dashboard/Dashboard.js
index f1259f796..602a48d7f 100644
--- a/client/coral-admin/src/containers/Dashboard/Dashboard.js
+++ b/client/coral-admin/src/containers/Dashboard/Dashboard.js
@@ -4,7 +4,6 @@ import {compose} from 'react-apollo';
import {connect} from 'react-redux';
import {getMetrics} from 'coral-admin/src/graphql/queries';
import FlagWidget from './FlagWidget';
-import LikeWidget from './LikeWidget';
import ActivityWidget from './ActivityWidget';
import {showBanUserDialog, hideBanUserDialog} from 'coral-admin/src/actions/moderation';
import I18n from 'coral-framework/modules/i18n/i18n';
@@ -16,9 +15,22 @@ const refreshIntervalSeconds = 60 * 5;
class Dashboard extends React.Component {
- state = {
- noteHidden: false,
- secondsUntilRefresh: refreshIntervalSeconds
+ constructor (props) {
+ super(props);
+
+ try {
+ if (window.localStorage.getItem('coral:dashboardNote') === null) {
+ window.localStorage.setItem('coral:dashboardNote', 'show');
+ }
+ } catch (e) {
+
+ // above will fail in Private Mode in some browsers.
+ }
+
+ this.state = {
+ secondsUntilRefresh: refreshIntervalSeconds,
+ dashboardNote: window.localStorage.getItem('coral:dashboardNote') || 'show'
+ };
}
componentWillMount () {
@@ -32,6 +44,16 @@ class Dashboard extends React.Component {
}, 1000);
}
+ dismissNote = () => {
+ try {
+ window.localStorage.setItem('coral:dashboardNote', 'hide');
+ } catch (e) {
+
+ // when setItem fails in Safari Private mode
+ this.setState({dashboardNote: 'hide'});
+ }
+ }
+
formatTime = () => {
const minutes = Math.floor(this.state.secondsUntilRefresh / 60);
let seconds = (this.state.secondsUntilRefresh % 60).toString();
@@ -48,20 +70,21 @@ class Dashboard extends React.Component {
return ;
}
- const {data: {assetsByLike, assetsByFlag, assetsByActivity}} = this.props;
+ const {data: {assetsByActivity, assetsByFlag}} = this.props;
+ const hideReloadNote = window.localStorage.getItem('coral:dashboardNote') === 'hide' ||
+ this.state.dashboardNote === 'hide'; // for Safari Incognito
return (
this.setState({noteHidden: true})}>
+ onClick={this.dismissNote}>
×
{lang.t('dashboard.next-update', this.formatTime())} {lang.t('dashboard.auto-update')}
diff --git a/client/coral-embed-stream/src/Comment.js b/client/coral-embed-stream/src/Comment.js
index 0a3cdb78b..20060f474 100644
--- a/client/coral-embed-stream/src/Comment.js
+++ b/client/coral-embed-stream/src/Comment.js
@@ -157,31 +157,31 @@ class Comment extends React.Component {
-
-
-
-
- setActiveReplyBox(comment.id)}
- parentCommentId={parentId || comment.id}
- currentUserId={currentUser && currentUser.id}
- banned={false} />
-
-
-
-
-
-
-
+
+
+
+
+ setActiveReplyBox(comment.id)}
+ parentCommentId={parentId || comment.id}
+ currentUserId={currentUser && currentUser.id}
+ banned={false} />
+
+
+
+
+
+
+
diff --git a/client/coral-framework/translations.json b/client/coral-framework/translations.json
index d115aedca..d95f5c9ec 100644
--- a/client/coral-framework/translations.json
+++ b/client/coral-framework/translations.json
@@ -5,9 +5,9 @@
"successNameUpdate": "Your username has been updated",
"contentNotAvailable": "This content is not available",
"loadMore": "View more",
- "bannedAccountMsg": "Your account is currently suspended. This means that you cannot Like, Flag, or write comments. Please contact moderator@fakeurl.com for more information",
+ "bannedAccountMsg": "Your account is currently suspended. This means that you cannot Like, Report, or write comments. Please contact us if you have any questions.",
"editName": {
- "msg": "Your account is currently suspended because your username has been deemed inappropriate. To restore your account, please enter a new username. You may contact moderator@fakeurl.com for more information.",
+ "msg": "Your account is currently suspended because your username has been deemed inappropriate. To restore your account, please enter a new username. Please contact us if you have any questions.",
"label": "New Username",
"button": "Submit",
"error": "Usernames can contain letters, numbers and _ only"
@@ -41,7 +41,7 @@
"successUpdateSettings": "La configuración de este articulo fue actualizada",
"successBioUpdate": "Tu bio fue actualizada",
"contentNotAvailable": "El contenido no se encuentra disponible",
- "bannedAccountMsg": "Tu cuenta se encuentra suspendida. Esto significa que no puedes dar Like, Marcar o escribir commentarios. Por favor, contacta moderator@fakeurl for more information",
+ "bannedAccountMsg": "Tu cuenta se encuentra suspendida. Esto significa que no puedes dar Like, Marcar o escribir commentarios.",
"editNameMsg": "",
"loadMore": "Ver más",
"newCount": "Ver {0} {1} más",
diff --git a/client/coral-plugin-flags/translations.json b/client/coral-plugin-flags/translations.json
index caac6cbf1..255e13f3c 100644
--- a/client/coral-plugin-flags/translations.json
+++ b/client/coral-plugin-flags/translations.json
@@ -7,8 +7,8 @@
"step-1-header": "Report an issue",
"step-2-header": "Help us understand",
"step-3-header": "Thank you for your input",
- "flag-username": "Flag username",
- "flag-comment": "Flag comment",
+ "flag-username": "Report username",
+ "flag-comment": "Report comment",
"continue": "Continue",
"done": "Done",
"no-agree-comment": "I don't agree with this comment",
@@ -20,8 +20,8 @@
"no-like-bio": "I don't like this bio",
"marketing": "This looks like an ad/marketing",
"user-impersonating": "This user is impersonating",
- "thank-you": "We value your safety and feedback. A moderator will review your flag.",
- "flag-reason": "Reason for flag (Optional)",
+ "thank-you": "We value your safety and feedback. A moderator will review your report.",
+ "flag-reason": "Reason for reporting (Optional)",
"other": "Other"
},
"es": {