merge devel

This commit is contained in:
or-else
2021-08-13 17:29:42 -07:00
24 changed files with 203 additions and 48 deletions
+8 -1
View File
@@ -1224,7 +1224,7 @@
},
"topic_delete_warning": {
"translation": "Möchten Sie diese Unterhaltung wirklich löschen?",
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic",
"missing": false,
"obsolete": false
@@ -1333,5 +1333,12 @@
"description": "Title for editing default authenticated permissions",
"missing": true,
"obsolete": false
},
"topic_delete": {
"translation": "Chat löschen",
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic.",
"missing": false,
"obsolete": false
}
}
+8 -1
View File
@@ -1224,7 +1224,7 @@
},
"topic_delete_warning": {
"translation": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic",
"missing": false,
"obsolete": false
@@ -1354,5 +1354,12 @@
"description": "Title for editing default authenticated permissions",
"missing": false,
"obsolete": false
},
"topic_delete": {
"translation": "Delete Conversation",
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic.",
"missing": false,
"obsolete": false
}
}
+8 -1
View File
@@ -1224,7 +1224,7 @@
},
"topic_delete_warning": {
"translation": "¿Estás seguro de que quieres eliminar esta conversación?",
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic",
"missing": false,
"obsolete": false
@@ -1354,5 +1354,12 @@
"description": "Title for editing default authenticated permissions",
"missing": true,
"obsolete": false
},
"topic_delete": {
"translation": "Eliminar chat",
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic.",
"missing": false,
"obsolete": false
}
}
+5 -1
View File
@@ -713,8 +713,12 @@
"defaultMessage": "Are you sure you want to block this conversation?",
"description": "Alert warning when blocking a topic."
},
"topic_delete": {
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic."
},
"topic_delete_warning": {
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic"
},
"topic_name_editing_placeholder": {
+8 -1
View File
@@ -1224,7 +1224,7 @@
},
"topic_delete_warning": {
"translation": "이대화를삭제하시겠습니까?",
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic",
"missing": false,
"obsolete": false
@@ -1364,5 +1364,12 @@
"description": "Title for editing default authenticated permissions",
"missing": true,
"obsolete": false
},
"topic_delete": {
"translation": "채팅 삭제",
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic.",
"missing": false,
"obsolete": false
}
}
+8 -1
View File
@@ -1224,7 +1224,7 @@
},
"topic_delete_warning": {
"translation": "Ești sigur că dorești să șterge această conversație?",
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic",
"missing": false,
"obsolete": false
@@ -1354,5 +1354,12 @@
"description": "Title for editing default authenticated permissions",
"missing": true,
"obsolete": false
},
"topic_delete": {
"translation": "Ștergeți Chat",
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic.",
"missing": false,
"obsolete": false
}
}
+8 -1
View File
@@ -1224,7 +1224,7 @@
},
"topic_delete_warning": {
"translation": "Вы действительно хотите удалить этот чат?",
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic",
"missing": false,
"obsolete": false
@@ -1354,5 +1354,12 @@
"description": "Title for editing default authenticated permissions",
"missing": true,
"obsolete": false
},
"topic_delete": {
"translation": "Удалить чат",
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic.",
"missing": false,
"obsolete": false
}
}
+8 -1
View File
@@ -1218,7 +1218,7 @@
},
"topic_delete_warning": {
"translation": "您確定要刪除此對話嗎?",
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic",
"missing": false,
"obsolete": false
@@ -1353,5 +1353,12 @@
"description": "Title for editing default authenticated permissions",
"missing": true,
"obsolete": false
},
"topic_delete": {
"translation": "刪除聊天",
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic.",
"missing": false,
"obsolete": false
}
}
+8 -1
View File
@@ -1224,7 +1224,7 @@
},
"topic_delete_warning": {
"translation": "您确定要删除此对话吗?",
"defaultMessage": "Are you sure you want to delete this conversation?",
"defaultMessage": "Are you sure you want to delete this conversation? It cannot be undone.",
"description": "Alert warning when deleting entire topic",
"missing": false,
"obsolete": false
@@ -1354,5 +1354,12 @@
"description": "Title for editing default authenticated permissions",
"missing": true,
"obsolete": false
},
"topic_delete": {
"translation": "删除聊天",
"defaultMessage": "Delete Conversation",
"description": "Alert title when deleting the topic.",
"missing": false,
"obsolete": false
}
}
+1 -1
View File
File diff suppressed because one or more lines are too long
+17
View File
@@ -124,6 +124,7 @@ class TinodeWeb extends React.Component {
this.handleTagsUpdated = this.handleTagsUpdated.bind(this);
this.handleLogout = this.handleLogout.bind(this);
this.handleDeleteAccount = this.handleDeleteAccount.bind(this);
this.handleDeleteTopicRequest = this.handleDeleteTopicRequest.bind(this);
this.handleDeleteMessagesRequest = this.handleDeleteMessagesRequest.bind(this);
this.handleLeaveUnsubRequest = this.handleLeaveUnsubRequest.bind(this);
this.handleBlockTopicRequest = this.handleBlockTopicRequest.bind(this);
@@ -1308,6 +1309,21 @@ class TinodeWeb extends React.Component {
});
}
handleDeleteTopicRequest(topicName) {
const topic = this.tinode.getTopic(topicName);
if (!topic) {
return;
}
// Request to hard-delete topic.
topic.delTopic(true).then((ctrl) => {
// Hide MessagesView and InfoView panels.
HashNavigation.navigateTo(HashNavigation.setUrlTopic(window.location.hash, ''));
}).catch((err) => {
this.handleError(err.message, 'err');
});
}
handleDeleteMessagesRequest(topicName) {
const topic = this.tinode.getTopic(topicName);
if (!topic) {
@@ -1671,6 +1687,7 @@ class TinodeWeb extends React.Component {
onShowAlert={this.handleShowAlert}
onChangePermissions={this.handleChangePermissions}
onMemberUpdateRequest={this.handleMemberUpdateRequest}
onDeleteTopic={this.handleDeleteTopicRequest}
onDeleteMessages={this.handleDeleteMessagesRequest}
onLeaveTopic={this.handleLeaveUnsubRequest}
onBlockTopic={this.handleBlockTopicRequest}
+1 -1
View File
@@ -52,7 +52,7 @@ const messages = defineMessages({
},
topic_delete_warning: {
id: 'topic_delete_warning',
defaultMessage: 'Are you sure you want to delete this conversation?',
defaultMessage: 'Are you sure you want to delete this conversation? It cannot be undone.',
description: 'Alert warning when deleting entire topic'
},
delete_messages_warning: {
+33 -3
View File
@@ -27,6 +27,16 @@ const messages = defineMessages({
defaultMessage: 'Are you sure you want to delete all messages for everyone? It cannot be undone.',
description: 'Alert dialog warning when hard-deleting all messages.'
},
topic_delete: {
id: 'topic_delete',
defaultMessage: 'Delete Conversation',
description: 'Alert title when deleting the topic.'
},
topic_delete_warning: {
id: 'topic_delete_warning',
defaultMessage: 'Are you sure you want to delete this conversation? It cannot be undone.',
description: 'Alert warning when deleting entire topic'
},
leave_chat: {
id: 'action_leave_chat',
defaultMessage: 'Leave Conversation',
@@ -106,12 +116,26 @@ class TopicSecurity extends React.Component {
anon: defacs ? defacs.anon : null,
};
this.handleDeleteTopic = this.handleDeleteTopic.bind(this);
this.handleDeleteMessages = this.handleDeleteMessages.bind(this);
this.handleLeave = this.handleLeave.bind(this);
this.handleBlock = this.handleBlock.bind(this);
this.handleReport = this.handleReport.bind(this);
}
handleDeleteTopic(e) {
e.preventDefault();
const {formatMessage} = this.props.intl;
this.props.onShowAlert(
formatMessage(messages.topic_delete), // title
formatMessage(messages.topic_delete_warning), // content
(() => { this.props.onDeleteTopic(this.props.topic); }), // onConfirm
null, // "OK"
true, // Show Reject button
null // "Cancel"
);
}
handleDeleteMessages(e) {
e.preventDefault();
const {formatMessage} = this.props.intl;
@@ -178,9 +202,15 @@ class TopicSecurity extends React.Component {
:
null
}
<a href="#" className="danger flat-button" onClick={this.handleLeave}>
<i className="material-icons">exit_to_app</i> &nbsp;{formatMessage(messages.leave_chat)}
</a>
{this.state.owner ?
<a href="#" className="danger flat-button" onClick={this.handleDeleteTopic}>
<i className="material-icons">delete</i> &nbsp;{formatMessage(messages.topic_delete)}
</a>
:
<a href="#" className="danger flat-button" onClick={this.handleLeave}>
<i className="material-icons">exit_to_app</i> &nbsp;{formatMessage(messages.leave_chat)}
</a>
}
{!this.state.groupTopic ?
<a href="#" className="danger flat-button" onClick={this.handleBlock}>
<i className="material-icons">block</i> &nbsp;{formatMessage(messages.block_contact)}