diff --git a/public/src/app.js b/public/src/app.js
index 6c0f9bd244..4f71588ce0 100644
--- a/public/src/app.js
+++ b/public/src/app.js
@@ -314,22 +314,16 @@ var socket,
 		}
 
 		require(['chat'], function (chat) {
-			chat.canMessage(touid, function(err) {
-				function loadAndCenter(chatModal) {
-					chat.load(chatModal.attr('UUID'));
-					chat.center(chatModal);
-				}
-
-				if (err) {
-					return app.alertError(err.message);
-				}
+			function loadAndCenter(chatModal) {
+				chat.load(chatModal.attr('UUID'));
+				chat.center(chatModal);
+			}
 
-				if (!chat.modalExists(touid)) {
-					chat.createModal(username, touid, loadAndCenter);
-				} else {
-					loadAndCenter(chat.getModal(touid));
-				}
-			});
+			if (!chat.modalExists(touid)) {
+				chat.createModal(username, touid, loadAndCenter);
+			} else {
+				loadAndCenter(chat.getModal(touid));
+			}
 		});
 	};
 
diff --git a/public/src/modules/chat.js b/public/src/modules/chat.js
index efe572d26c..7c72822c60 100644
--- a/public/src/modules/chat.js
+++ b/public/src/modules/chat.js
@@ -244,6 +244,14 @@ define('chat', ['taskbar', 'string', 'sounds', 'forum/chats'], function(taskbar,
 					checkStatus(chatModal);
 				});
 
+				module.canMessage(touid, function(err) {
+					if (err) {
+						// Disable the text input
+						chatModal.find('input[type="text"]').attr('disabled', true);
+						console.log('disabling');
+					}
+				});
+
 				chatModal.find('.user-typing .text').translateText('[[modules:chat.user_typing, ' + username + ']]');
 
 				taskbar.push('chat', chatModal.attr('UUID'), {