Files
telegram-bot/Core/Extensions/UserExtension.cs
T

30 lines
853 B
C#
Raw Normal View History

2024-05-28 22:30:28 +03:00
using System.Text;
2020-03-01 22:46:07 +04:00
using Telegram.Bot.Types;
2023-07-29 15:14:52 +03:00
namespace Kruzya.TelegramBot.Core.Extensions;
public static class UserExtension
2020-03-01 22:46:07 +04:00
{
2023-07-29 15:14:52 +03:00
public static string ToHtml(this User user, bool byUsername = false)
2020-03-01 22:46:07 +04:00
{
2023-07-29 15:14:52 +03:00
var text = new StringBuilder();
text.Append($"<a href=\"tg://user?id={user.Id}\">");
2023-07-29 15:14:52 +03:00
if (byUsername && !string.IsNullOrWhiteSpace(user.Username))
{
text.Append(user.Username);
2020-03-01 22:46:07 +04:00
}
2023-07-29 15:14:52 +03:00
else
{
2023-07-29 15:14:52 +03:00
text.Append($"{user.FirstName} {user.LastName}".Trim().HtmlEncode());
}
2023-07-29 15:14:52 +03:00
return text.Append("</a>").ToString();
}
public static string ToLog(this User user)
{
var name = $"{user.FirstName} {user.LastName}".Trim();
return $"{name} (ID: {user.Id}, Username: {user.Username ?? "N/A"})";
2020-03-01 22:46:07 +04:00
}
}