upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/key_handling/users.rs17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/key_handling/users.rs b/src/key_handling/users.rs
index caa57e6..2c6a897 100644
--- a/src/key_handling/users.rs
+++ b/src/key_handling/users.rs
@@ -220,9 +220,20 @@ impl UserManagement for UserManager {
220 let metadata = nostr::Metadata::from_json(new_metadata_event.content.clone()) 220 let metadata = nostr::Metadata::from_json(new_metadata_event.content.clone())
221 .context("metadata cannot be found in kind 0 event content")?; 221 .context("metadata cannot be found in kind 0 event content")?;
222 user_ref.metadata = UserMetadata { 222 user_ref.metadata = UserMetadata {
223 name: metadata 223 name: if let Some(n) = metadata.name {
224 .name 224 n
225 .context("user metadata should always have name")?, 225 } else if let Some(n) = metadata.custom.get("displayName") {
226 // strip quote marks that custom.get() adds
227 let binding = n.to_string();
228 let mut chars = binding.chars();
229 chars.next();
230 chars.next_back();
231 chars.as_str().to_string()
232 } else if let Some(n) = metadata.display_name {
233 n
234 } else {
235 user_ref.metadata.name
236 },
226 created_at: new_metadata_event.created_at.as_u64(), 237 created_at: new_metadata_event.created_at.as_u64(),
227 }; 238 };
228 } 239 }