fix(v2): Truncate pubkey in DM placeholder using displayName() helper

currentRecipient keeps full value for sending, displayName() used for
all placeholder/dropdown display to truncate 64-char pubkeys to 8+...

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
MarekWo
2026-03-01 16:31:21 +01:00
parent 3e81eeeae7
commit 7f9aa4ac58

View File

@@ -12,6 +12,15 @@ let dmLastSeenTimestamps = {};
let autoRefreshInterval = null;
let lastMessageTimestamp = 0; // Track latest message timestamp for smart refresh
/**
* Get display-friendly name (truncate full pubkeys to short prefix)
*/
function displayName(name) {
if (!name) return 'Unknown';
if (/^[0-9a-f]{64}$/i.test(name)) return name.substring(0, 8) + '...';
return name;
}
// Initialize on page load
document.addEventListener('DOMContentLoaded', async function() {
console.log('DM page initialized');
@@ -223,12 +232,7 @@ function populateConversationSelector() {
const lastSeen = dmLastSeenTimestamps[conv.conversation_id] || 0;
const isUnread = conv.last_message_timestamp > lastSeen;
// If display_name is a full pubkey, show short prefix
let displayName = conv.display_name;
if (/^[0-9a-f]{64}$/i.test(displayName)) {
displayName = displayName.substring(0, 8) + '...';
}
let label = displayName;
let label = displayName(conv.display_name);
if (isUnread) {
label = `* ${label}`;
}
@@ -292,12 +296,7 @@ async function selectConversation(conversationId) {
// Find the conversation to get recipient name
const conv = dmConversations.find(c => c.conversation_id === conversationId);
if (conv && conv.display_name) {
// If display_name is a full pubkey (64 hex chars), show short prefix
if (/^[0-9a-f]{64}$/i.test(conv.display_name)) {
currentRecipient = conv.display_name.substring(0, 8) + '...';
} else {
currentRecipient = conv.display_name;
}
currentRecipient = conv.display_name;
} else {
// Extract name from conversation_id
if (conversationId.startsWith('name_')) {
@@ -320,7 +319,7 @@ async function selectConversation(conversationId) {
const sendBtn = document.getElementById('dmSendBtn');
if (input) {
input.disabled = false;
input.placeholder = `Message ${currentRecipient}...`;
input.placeholder = `Message ${displayName(currentRecipient)}...`;
}
if (sendBtn) {
sendBtn.disabled = false;
@@ -390,7 +389,7 @@ async function loadMessages() {
currentRecipient = data.display_name;
const input = document.getElementById('dmMessageInput');
if (input) {
input.placeholder = `Message ${currentRecipient}...`;
input.placeholder = `Message ${displayName(currentRecipient)}...`;
}
}