[RN] Allow uppsercase letters in room names

This commit is contained in:
Lyubomir Marinov 2016-12-07 16:04:52 -06:00
parent f027a8f74f
commit de5cd53f85
2 changed files with 28 additions and 11 deletions

View File

@ -19,7 +19,7 @@ function _getRoomAndDomainFromUrlObject(url) {
if (url) { if (url) {
domain = url.hostname; domain = url.hostname;
room = url.pathname.substr(1).toLowerCase(); room = url.pathname.substr(1);
// Convert empty string to undefined to simplify checks. // Convert empty string to undefined to simplify checks.
if (room === '') { if (room === '') {

View File

@ -59,17 +59,34 @@ ReducerRegistry.register('features/base/conference',
'leavingJitsiConference', 'leavingJitsiConference',
action.conference.jitsiConference)); action.conference.jitsiConference));
case SET_ROOM: { case SET_ROOM:
let room = action.room; return _setRoom(state, action);
// Technically, there're multiple values which don't represent
// valid room names. Practically, each of them is as bad as the rest
// of them because we can't use any of them to join a conference.
isRoomValid(room) || (room = INITIAL_STATE.room);
return setStateProperty(state, 'room', room);
}
} }
return state; return state;
}); });
/**
* Reduces a specific Redux action SET_ROOM of the feature base/conference.
*
* @param {Object} state - The Redux state of the feature base/conference.
* @param {Action} action - The Redux action SET_ROOM to reduce.
* @private
* @returns {Object} The new state of the feature base/conference after the
* reduction of the specified action.
*/
function _setRoom(state, action) {
let room = action.room;
if (isRoomValid(room)) {
// XXX Lib-jitsi-meet does not accept uppercase letters.
room = room.toLowerCase();
} else {
// Technically, there are multiple values which don't represent valid
// room names. Practically, each of them is as bad as the rest of them
// because we can't use any of them to join a conference.
room = INITIAL_STATE.room;
}
return setStateProperty(state, 'room', room);
}