|
@@ -1625,9 +1625,9 @@ function onMucLeft(jid) {
|
1625
|
1625
|
console.log('left.muc', jid);
|
1626
|
1626
|
var displayName = $('#participant_' + Strophe.getResourceFromJid(jid) +
|
1627
|
1627
|
'>.displayname').html();
|
1628
|
|
- messageHandler.notify(displayName || 'Somebody',
|
|
1628
|
+ messageHandler.notify(displayName,'notify.somebody', "Somebody",
|
1629
|
1629
|
'disconnected',
|
1630
|
|
- 'disconnected');
|
|
1630
|
+ 'notify.disconnected', "disconnected");
|
1631
|
1631
|
// Need to call this with a slight delay, otherwise the element couldn't be
|
1632
|
1632
|
// found for some reason.
|
1633
|
1633
|
// XXX(gp) it works fine without the timeout for me (with Chrome 38).
|
|
@@ -1659,8 +1659,9 @@ function onLocalRoleChange(jid, info, pres, isModerator, isExternalAuthEnabled)
|
1659
|
1659
|
|
1660
|
1660
|
if (isModerator) {
|
1661
|
1661
|
Authentication.closeAuthenticationWindow();
|
1662
|
|
- messageHandler.notify(
|
1663
|
|
- 'Me', 'connected', 'Moderator rights granted !');
|
|
1662
|
+ messageHandler.notify(null, "notify.me",
|
|
1663
|
+ 'Me', 'connected', "notify.moderator",
|
|
1664
|
+ 'Moderator rights granted !');
|
1664
|
1665
|
}
|
1665
|
1666
|
}
|
1666
|
1667
|
|
|
@@ -1704,9 +1705,9 @@ function onPasswordReqiured(callback) {
|
1704
|
1705
|
);
|
1705
|
1706
|
}
|
1706
|
1707
|
function onMucEntered(jid, id, displayName) {
|
1707
|
|
- messageHandler.notify(displayName || 'Somebody',
|
|
1708
|
+ messageHandler.notify(displayName,'notify.somebody', "Somebody",
|
1708
|
1709
|
'connected',
|
1709
|
|
- 'connected');
|
|
1710
|
+ 'notify.connected', "connected");
|
1710
|
1711
|
|
1711
|
1712
|
// Add Peer's container
|
1712
|
1713
|
VideoLayout.ensurePeerContainerExists(jid,id);
|
|
@@ -1721,14 +1722,22 @@ function onMucRoleChanged(role, displayName) {
|
1721
|
1722
|
VideoLayout.showModeratorIndicator();
|
1722
|
1723
|
|
1723
|
1724
|
if (role === 'moderator') {
|
1724
|
|
- var displayName = displayName;
|
1725
|
|
- if (!displayName) {
|
1726
|
|
- displayName = 'Somebody';
|
|
1725
|
+ var messageKey, messageOptions = {};
|
|
1726
|
+ var lDisplayName = displayName;
|
|
1727
|
+ if (!lDisplayName) {
|
|
1728
|
+ lDisplayName = 'Somebody';
|
|
1729
|
+ messageKey = "notify.grantedToUnknown";
|
|
1730
|
+ }
|
|
1731
|
+ else
|
|
1732
|
+ {
|
|
1733
|
+ messageKey = "notify.grantedTo";
|
|
1734
|
+ messageOptions = {to: displayName};
|
1727
|
1735
|
}
|
1728
|
1736
|
messageHandler.notify(
|
1729
|
|
- displayName,
|
1730
|
|
- 'connected',
|
1731
|
|
- 'Moderator rights granted to ' + displayName + '!');
|
|
1737
|
+ displayName,'notify.somebody', "Somebody",
|
|
1738
|
+ 'connected', messageKey,
|
|
1739
|
+ 'Moderator rights granted to ' + lDisplayName + '!',
|
|
1740
|
+ messageOptions);
|
1732
|
1741
|
}
|
1733
|
1742
|
}
|
1734
|
1743
|
|
|
@@ -5520,13 +5529,32 @@ var messageHandler = (function(my) {
|
5520
|
5529
|
messageHandler.openMessageDialog(title, message);
|
5521
|
5530
|
};
|
5522
|
5531
|
|
5523
|
|
- my.notify = function(displayName, cls, message) {
|
|
5532
|
+ my.notify = function(displayName, displayNameKey, displayNameDefault,
|
|
5533
|
+ cls, messageKey, messageDefault, messageArguments) {
|
|
5534
|
+ var displayNameSpan = '<span class="nickname" ';
|
|
5535
|
+ if(displayName)
|
|
5536
|
+ {
|
|
5537
|
+ displayNameSpan += ">" + displayName;
|
|
5538
|
+ }
|
|
5539
|
+ else
|
|
5540
|
+ {
|
|
5541
|
+ displayNameSpan += "data-i18n='" + displayNameKey +
|
|
5542
|
+ "'>" + APP.translation.translateString(displayNameKey, null,
|
|
5543
|
+ {defaultValue: displayNameDefault});
|
|
5544
|
+ }
|
|
5545
|
+ displayNameSpan += "</span>";
|
|
5546
|
+ var lMessageArguments = messageArguments;
|
|
5547
|
+ if(!messageArguments)
|
|
5548
|
+ lMessageArguments = {};
|
|
5549
|
+ lMessageArguments.defaultValue = messageDefault;
|
5524
|
5550
|
toastr.info(
|
5525
|
|
- '<span class="nickname">' +
|
5526
|
|
- displayName +
|
5527
|
|
- '</span><br>' +
|
5528
|
|
- '<span class=' + cls + '>' +
|
5529
|
|
- message +
|
|
5551
|
+ displayNameSpan + '<br>' +
|
|
5552
|
+ '<span class=' + cls + ' data-i18n="' + messageKey + '"' +
|
|
5553
|
+ (messageArguments?
|
|
5554
|
+ " i18n-options='" + JSON.stringify(messageArguments) + "'"
|
|
5555
|
+ : "") + ">" +
|
|
5556
|
+ APP.translation.translateString(messageKey, null,
|
|
5557
|
+ lMessageArguments) +
|
5530
|
5558
|
'</span>');
|
5531
|
5559
|
};
|
5532
|
5560
|
|
|
@@ -7507,7 +7535,7 @@ var VideoLayout = (function (my) {
|
7507
|
7535
|
"top");
|
7508
|
7536
|
videoMutedSpan.appendChild(mutedIndicator);
|
7509
|
7537
|
//translate texts for muted indicator
|
7510
|
|
- APP.translation.translateElement($('#' + videoSpanId + " > i"));
|
|
7538
|
+ APP.translation.translateElement($('#' + videoSpanId + " > span > i"));
|
7511
|
7539
|
}
|
7512
|
7540
|
|
7513
|
7541
|
VideoLayout.updateMutePosition(videoSpanId);
|
|
@@ -11443,13 +11471,13 @@ module.exports = {
|
11443
|
11471
|
options.lng = lang;
|
11444
|
11472
|
i18n.init(options, initCompleted);
|
11445
|
11473
|
},
|
11446
|
|
- translateString: function (key, cb) {
|
|
11474
|
+ translateString: function (key, cb, defaultValue) {
|
11447
|
11475
|
if(!cb)
|
11448
|
|
- return i18n.t(key);
|
|
11476
|
+ return i18n.t(key, defaultValue);
|
11449
|
11477
|
|
11450
|
11478
|
if(initialized)
|
11451
|
11479
|
{
|
11452
|
|
- cb(i18n.t(key));
|
|
11480
|
+ cb(i18n.t(key, defaultValue));
|
11453
|
11481
|
}
|
11454
|
11482
|
else
|
11455
|
11483
|
{
|
|
@@ -14506,11 +14534,13 @@ var Moderator = {
|
14506
|
14534
|
var waitMs = getNextErrorTimeout();
|
14507
|
14535
|
console.error("Focus error, retry after " + waitMs, error);
|
14508
|
14536
|
// Show message
|
14509
|
|
- APP.UI.messageHandler.notify(
|
14510
|
|
- 'Conference focus', 'disconnected',
|
|
14537
|
+ APP.UI.messageHandler.notify( null, "notify.focus",
|
|
14538
|
+ 'Conference focus', 'disconnected',"notify.focusFail",
|
14511
|
14539
|
Moderator.getFocusComponent() +
|
14512
|
14540
|
' not available - retry in ' +
|
14513
|
|
- (waitMs / 1000) + ' sec');
|
|
14541
|
+ (waitMs / 1000) + ' sec',
|
|
14542
|
+ {component: Moderator.getFocusComponent(),
|
|
14543
|
+ ms: (waitMs / 1000)});
|
14514
|
14544
|
// Reset response timeout
|
14515
|
14545
|
getNextTimeout(true);
|
14516
|
14546
|
window.setTimeout(
|