diff --git a/src/components/structures/RoomStatusBar.js b/src/components/structures/RoomStatusBar.js
index 36f4719abb..e6e0fa70f0 100644
--- a/src/components/structures/RoomStatusBar.js
+++ b/src/components/structures/RoomStatusBar.js
@@ -308,7 +308,26 @@ module.exports = React.createClass({
},
);
} else {
- if (
+ let consentError = null;
+ for (const m of unsentMessages) {
+ if (m.error && m.error.errcode === 'M_CONSENT_NOT_GIVEN') {
+ consentError = m.error;
+ break;
+ }
+ }
+ if (consentError) {
+ title = _t(
+ "You can't send any messages until you review and agree to " +
+ "our terms and conditions.",
+ {},
+ {
+ 'consentLink': (sub) =>
+
+ { sub }
+ ,
+ },
+ );
+ } else if (
unsentMessages.length === 1 &&
unsentMessages[0].error &&
unsentMessages[0].error.data &&
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index b18d167ea4..7717d45aa5 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -1030,6 +1030,7 @@
"Scroll to bottom of page": "Scroll to bottom of page",
"Message not sent due to unknown devices being present": "Message not sent due to unknown devices being present",
"Show devices, send anyway or cancel.": "Show devices, send anyway or cancel.",
+ "You can't send any messages until you review and agree to our terms and conditions.": "You can't send any messages until you review and agree to our terms and conditions.",
"%(count)s of your messages have not been sent.|other": "Some of your messages have not been sent.",
"%(count)s of your messages have not been sent.|one": "Your message was not sent.",
"%(count)s Resend all or cancel all now. You can also select individual messages to resend or cancel.|other": "Resend all or cancel all now. You can also select individual messages to resend or cancel.",