Skip to content

Commit

Permalink
Merge remote-tracking branch 'rocket.chat/develop' into HEAD
Browse files Browse the repository at this point in the history
  • Loading branch information
SeRoNet Concourse committed Jul 3, 2021
2 parents 19743d3 + f823590 commit 4487a9f
Show file tree
Hide file tree
Showing 31 changed files with 367 additions and 774 deletions.
2 changes: 1 addition & 1 deletion .meteor/versions
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ [email protected]
[email protected]
[email protected]
[email protected]
[email protected].18
[email protected].16
[email protected]
ostrio:[email protected]
pauli:[email protected]
Expand Down
59 changes: 16 additions & 43 deletions app/2fa/client/callWithTwoFactorRequired.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,10 @@ import { Meteor } from 'meteor/meteor';
import { SHA256 } from 'meteor/sha';
import toastr from 'toastr';

import { modal } from '../../ui-utils/client';
import { t, APIClient } from '../../utils/client';
import { t } from '../../utils/client';
import { imperativeModal } from '../../../client/lib/imperativeModal';
import TwoFactorModal from '../../../client/components/TwoFactorModal';

const methods = {
totp: {
text: 'Open_your_authentication_app_and_enter_the_code',
},
email: {
text: 'Verify_your_email_for_the_code_we_sent',
html: true,
},
password: {
title: 'Please_enter_your_password',
text: 'For_your_security_you_must_enter_your_current_password_to_continue',
inputType: 'password',
},
};

export function process2faReturn({ error, result, originalCallback, onCode, emailOrUsername }) {
if (!error || (error.error !== 'totp-required' && error.errorType !== 'totp-required')) {
Expand All @@ -31,34 +18,20 @@ export function process2faReturn({ error, result, originalCallback, onCode, emai
emailOrUsername = Meteor.user().username;
}

modal.open({
title: t(methods[method].title || 'Two Factor Authentication'),
text: t(methods[method].text),
html: methods[method].html,
type: 'input',
inputActionText: method === 'email' && emailOrUsername && t('Send_me_the_code_again'),
async inputAction(e) {
const { value } = e.currentTarget;
e.currentTarget.value = t('Sending');

await APIClient.v1.post('users.2fa.sendEmailCode', { emailOrUsername });

e.currentTarget.value = value;
imperativeModal.open({
component: TwoFactorModal,
props: {
method,
onConfirm: (code, method) => {
onCode(method === 'password' ? SHA256(code) : code, method);
imperativeModal.close();
},
onClose: () => {
imperativeModal.close();
originalCallback(new Meteor.Error('totp-canceled'));
},
emailOrUsername,
},
inputType: methods[method].inputType || 'text',
showCancelButton: true,
closeOnConfirm: true,
confirmButtonText: t('Verify'),
cancelButtonText: t('Cancel'),
}, (code) => {
if (code === false) {
return originalCallback(new Meteor.Error('totp-canceled'));
}

if (method === 'password') {
code = SHA256(code);
}
onCode(code, method);
});
}

Expand Down
27 changes: 13 additions & 14 deletions app/discussion/client/createDiscussionMessageAction.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,12 @@ import { Tracker } from 'meteor/tracker';

import { settings } from '../../settings/client';
import { hasPermission } from '../../authorization/client';
import { MessageAction, modal } from '../../ui-utils/client';
import { MessageAction } from '../../ui-utils/client';
import { messageArgs } from '../../ui-utils/client/lib/messageArgs';
import { t, roomTypes } from '../../utils/client';
import { roomTypes } from '../../utils/client';
import { imperativeModal } from '../../../client/lib/imperativeModal';
import CreateDiscussion from '../../../client/components/CreateDiscussion/CreateDiscussion';


Meteor.startup(function() {
Tracker.autorun(() => {
Expand All @@ -21,18 +24,14 @@ Meteor.startup(function() {
async action() {
const { msg: message } = messageArgs(this);

modal.open({
title: t('Discussion_title'),
modifier: 'modal',
content: 'CreateDiscussion',
data: { rid: message.rid,
message,
onCreate() {
modal.close();
} },
confirmOnEnter: false,
showConfirmButton: false,
showCancelButton: false,
imperativeModal.open({
component: CreateDiscussion,
props: {
defaultParentRoom: message.rid,
onClose: imperativeModal.close,
parentMessageId: message._id,
nameSuggestion: message?.msg?.substr(0, 140),
},
});
},
condition({ msg: { u: { _id: uid }, drid, dcount }, room, subscription, u }) {
Expand Down
22 changes: 8 additions & 14 deletions app/discussion/client/discussionFromMessageBox.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
import { Meteor } from 'meteor/meteor';
import { Tracker } from 'meteor/tracker';

import { messageBox, modal } from '../../ui-utils/client';
import { t } from '../../utils/client';
import { messageBox } from '../../ui-utils/client';
import { settings } from '../../settings/client';
import { hasPermission } from '../../authorization/client';
import { imperativeModal } from '../../../client/lib/imperativeModal';
import CreateDiscussion from '../../../client/components/CreateDiscussion/CreateDiscussion';

Meteor.startup(function() {
Tracker.autorun(() => {
Expand All @@ -16,19 +17,12 @@ Meteor.startup(function() {
icon: 'discussion',
condition: () => hasPermission('start-discussion') || hasPermission('start-discussion-other-user'),
action(data) {
modal.open({
title: t('Discussion_title'),
modifier: 'modal',
content: 'CreateDiscussion',
data: {
...data,
onCreate() {
modal.close();
},
imperativeModal.open({
component: CreateDiscussion,
props: {
defaultParentRoom: data.rid,
onClose: imperativeModal.close,
},
showConfirmButton: false,
showCancelButton: false,
confirmOnEnter: false,
});
},
});
Expand Down
3 changes: 0 additions & 3 deletions app/discussion/client/index.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
// Templates
import './views/creationDialog/CreateDiscussion';

// Other UI extensions
import './lib/messageTypes/discussionMessage';
import './createDiscussionMessageAction';
Expand Down
134 changes: 0 additions & 134 deletions app/discussion/client/views/creationDialog/CreateDiscussion.html

This file was deleted.

Loading

0 comments on commit 4487a9f

Please sign in to comment.