/// <summary>
        /// Enter room by room key.
        /// </summary>
        private async void EnterRoomButtonClicked()
        {
            // Redirect to login page
            using (UserDialogs.Instance.Loading("Entering room..."))
            {
                string[] roomKeyErrors = DefaultValidator.ValidRoomKey(this.EnterRoomCode);

                // Check for errors
                if (roomKeyErrors.Length == 0)
                {
                    // No errors
                    // Check if room key mathces
                    try
                    {
                        IRoom matchingRoom = null;
                        matchingRoom = await this._roomService.GetRoomByRoomKeyAsync(this.EnterRoomCode);

                        if (matchingRoom != null)
                        {
                            // A mathing room was found
                            await Application.Current.MainPage.Navigation.PushModalAsync(new RoomPage(matchingRoom), true);
                        }

                        if (matchingRoom == null)
                        {
                            // No mathing room found
                            ShowAlert("A room matching this room key could not be found.");
                        }
                    }
                    catch (Exception e)
                    {
                        // An unexpected error occured, so user could not be created.
                        // Show generic error message to user.
                        ShowAlert("An error occured. Room could not be entered.");
                    }
                }
                else
                {
                    // Errors in user input.
                    // Display errors.
                    string errorMessage = "Invalid room key:" + System.Environment.NewLine;

                    foreach (var error in roomKeyErrors)
                    {
                        errorMessage += System.Environment.NewLine + error;
                    }

                    ShowAlert(errorMessage);
                }
            }
        }