|
|
|
@ -50,28 +50,34 @@ char* status_render_source( struct status* s )
|
|
|
|
|
while( *i && !index(" ,\r\n",*i) ) ++i;
|
|
|
|
|
char* handle = strndup( start, i - start );
|
|
|
|
|
|
|
|
|
|
struct account* user = account_from_webfinger( &handle[1] );
|
|
|
|
|
if( !user ) {
|
|
|
|
|
char buffer[512];
|
|
|
|
|
format( buffer, 512, "%s@%s", handle, account_server );
|
|
|
|
|
user = account_from_webfinger( &handle[1] );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if( user ) {
|
|
|
|
|
status_add_mention( s, user->id );
|
|
|
|
|
|
|
|
|
|
fprintf( f,
|
|
|
|
|
"<span class='h-card'>"
|
|
|
|
|
"<a class='u-url mention' href='%s' rel='ugc'>"
|
|
|
|
|
"@<span>%s</span>"
|
|
|
|
|
"</a>"
|
|
|
|
|
"</span>",
|
|
|
|
|
user->account_url, user->handle
|
|
|
|
|
);
|
|
|
|
|
account_free(user);
|
|
|
|
|
/*
|
|
|
|
|
if( strstr( handle, "mostr.pub" ) ) {
|
|
|
|
|
fprintf( f, "<a href='https://mostr.pub/%s'>@%.4s@nostr</a>", handle, handle );
|
|
|
|
|
} else {
|
|
|
|
|
fprintf( f, "%s", handle );
|
|
|
|
|
}
|
|
|
|
|
*/
|
|
|
|
|
struct account* user = account_from_webfinger( &handle[1] );
|
|
|
|
|
if( !user ) {
|
|
|
|
|
char buffer[512];
|
|
|
|
|
format( buffer, 512, "%s@%s", handle, account_server );
|
|
|
|
|
user = account_from_webfinger( &handle[1] );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if( user ) {
|
|
|
|
|
status_add_mention( s, user->id );
|
|
|
|
|
|
|
|
|
|
fprintf( f,
|
|
|
|
|
"<span class='h-card'>"
|
|
|
|
|
"<a class='u-url mention' href='%s' rel='ugc'>"
|
|
|
|
|
"@<span>%s</span>"
|
|
|
|
|
"</a>"
|
|
|
|
|
"</span>",
|
|
|
|
|
user->account_url, user->handle
|
|
|
|
|
);
|
|
|
|
|
account_free(user);
|
|
|
|
|
} else {
|
|
|
|
|
fprintf( f, "%s", handle );
|
|
|
|
|
}
|
|
|
|
|
//}
|
|
|
|
|
free(handle);
|
|
|
|
|
} else if( *i == ':' ) {
|
|
|
|
|
// Emoji
|
|
|
|
|