aboutsummaryrefslogtreecommitdiff
path: root/pages/AddressBook.qml
diff options
context:
space:
mode:
Diffstat (limited to 'pages/AddressBook.qml')
-rw-r--r--pages/AddressBook.qml26
1 files changed, 26 insertions, 0 deletions
diff --git a/pages/AddressBook.qml b/pages/AddressBook.qml
index 396f6bed..65e315e2 100644
--- a/pages/AddressBook.qml
+++ b/pages/AddressBook.qml
@@ -387,8 +387,20 @@ Rectangle {
visible: TxUtils.isValidOpenAliasAddress(addressLine.text)
enabled : visible
onClicked: {
+ const openAlias = addressLine.text;
const response = TxUtils.handleOpenAliasResolution(addressLine.text, descriptionLine.text);
if (response) {
+ if (response.confirm && response.address) {
+ const resolvedAddress = response.address;
+ const resolvedDescription = response.description;
+ oa_confirm(openAlias, resolvedAddress, function() {
+ addressLine.text = resolvedAddress;
+ if (resolvedDescription) {
+ descriptionLine.text = resolvedDescription;
+ }
+ });
+ return;
+ }
if (response.message) {
oa_message(response.message);
}
@@ -532,6 +544,20 @@ Rectangle {
oaPopup.open()
}
+ function oa_confirm(openAlias, resolvedAddress, onAccepted) {
+ confirmationDialog.title = qsTr("OpenAlias warning") + translationManager.emptyString
+ confirmationDialog.text = qsTr("Address found, but the DNSSEC signatures could not be verified, so this address may be spoofed.") + "\n\n" +
+ qsTr("OpenAlias: ") + openAlias + "\n\n" +
+ qsTr("Resolved address: ") + resolvedAddress + "\n\n" +
+ qsTr("Only use this address if you trust this OpenAlias result.") + translationManager.emptyString
+ confirmationDialog.icon = StandardIcon.Question
+ confirmationDialog.cancelText = qsTr("Cancel") + translationManager.emptyString
+ confirmationDialog.okText = qsTr("Use address") + translationManager.emptyString
+ confirmationDialog.onAcceptedCallback = onAccepted
+ confirmationDialog.onRejectedCallback = null
+ confirmationDialog.open()
+ }
+
MoneroComponents.StandardDialog {
// dynamically change onclose handler
property var onCloseCallback