mirror of
https://github.com/Bubuni-Team/telegram-bot.git
synced 2026-07-31 00:29:24 +03:00
Use file-scoped namespaces
This commit is contained in:
@@ -9,99 +9,98 @@ using System.Text;
|
||||
using Kruzya.TelegramBot.RichSiteSummary.UrchinTrackingModule;
|
||||
using Telegram.Bot.Types.Enums;
|
||||
|
||||
namespace Kruzya.TelegramBot.RichSiteSummary.Data
|
||||
namespace Kruzya.TelegramBot.RichSiteSummary.Data;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a post from feed in database.
|
||||
/// </summary>
|
||||
public class Post : RepresentableEntity
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents a post from feed in database.
|
||||
/// </summary>
|
||||
public class Post : RepresentableEntity
|
||||
#region RepresentableEntity
|
||||
protected override ParseMode DefaultRepresentation
|
||||
{
|
||||
#region RepresentableEntity
|
||||
protected override ParseMode DefaultRepresentation
|
||||
get => ParseMode.Html;
|
||||
}
|
||||
|
||||
protected override string ViewableText
|
||||
{
|
||||
get => Title;
|
||||
}
|
||||
|
||||
protected override string ViewableUrl
|
||||
{
|
||||
get => UtmUtility.ApplyParameters(new Uri(new(Feed.Url), Url), new UtmParameters()
|
||||
{
|
||||
get => ParseMode.Html;
|
||||
}
|
||||
Source = "telegram",
|
||||
Type = "rss_post",
|
||||
Campaign = "subscriber",
|
||||
Content = PostId.ToString()
|
||||
});
|
||||
}
|
||||
|
||||
protected override string ViewableText
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// The unique post id.
|
||||
/// </summary>
|
||||
[Key]
|
||||
public Guid PostId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The feed unique identifier from where this post is fetched.
|
||||
/// </summary>
|
||||
public Guid FeedId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The feed from where this post is fetched.
|
||||
/// </summary>
|
||||
[Required]
|
||||
public virtual Feed Feed { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The post title.
|
||||
/// </summary>
|
||||
[MaxLength(256)]
|
||||
[Required]
|
||||
public string Title { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The URI where this post is located in web.
|
||||
/// </summary>
|
||||
[Required]
|
||||
[MaxLength(256)]
|
||||
public string Url { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// DateTime when post is created in RSS feed.
|
||||
/// </summary>
|
||||
[Required]
|
||||
public DateTime PostedAt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// DateTime when post is fetched/updated in database.
|
||||
/// </summary>
|
||||
[Required]
|
||||
public DateTime ReceivedAt { get; set; }
|
||||
|
||||
public Post()
|
||||
{
|
||||
PostId = new Guid();
|
||||
ReceivedAt = DateTime.Now;
|
||||
}
|
||||
|
||||
public string MessageText
|
||||
{
|
||||
get
|
||||
{
|
||||
get => Title;
|
||||
}
|
||||
|
||||
protected override string ViewableUrl
|
||||
{
|
||||
get => UtmUtility.ApplyParameters(new Uri(new(Feed.Url), Url), new UtmParameters()
|
||||
{
|
||||
Source = "telegram",
|
||||
Type = "rss_post",
|
||||
Campaign = "subscriber",
|
||||
Content = PostId.ToString()
|
||||
});
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// The unique post id.
|
||||
/// </summary>
|
||||
[Key]
|
||||
public Guid PostId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The feed unique identifier from where this post is fetched.
|
||||
/// </summary>
|
||||
public Guid FeedId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The feed from where this post is fetched.
|
||||
/// </summary>
|
||||
[Required]
|
||||
public virtual Feed Feed { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The post title.
|
||||
/// </summary>
|
||||
[MaxLength(256)]
|
||||
[Required]
|
||||
public string Title { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The URI where this post is located in web.
|
||||
/// </summary>
|
||||
[Required]
|
||||
[MaxLength(256)]
|
||||
public string Url { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// DateTime when post is created in RSS feed.
|
||||
/// </summary>
|
||||
[Required]
|
||||
public DateTime PostedAt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// DateTime when post is fetched/updated in database.
|
||||
/// </summary>
|
||||
[Required]
|
||||
public DateTime ReceivedAt { get; set; }
|
||||
|
||||
public Post()
|
||||
{
|
||||
PostId = new Guid();
|
||||
ReceivedAt = DateTime.Now;
|
||||
}
|
||||
|
||||
public string MessageText
|
||||
{
|
||||
get
|
||||
{
|
||||
var message = new StringBuilder();
|
||||
message.Append($"{Representation("🗞")} New on {Feed.Representation(ParseMode.Html)}\n");
|
||||
message.Append("\n");
|
||||
message.Append(Title);
|
||||
message.Append("\n");
|
||||
message.Append(Representation("Open in browser"));
|
||||
var message = new StringBuilder();
|
||||
message.Append($"{Representation("🗞")} New on {Feed.Representation(ParseMode.Html)}\n");
|
||||
message.Append("\n");
|
||||
message.Append(Title);
|
||||
message.Append("\n");
|
||||
message.Append(Representation("Open in browser"));
|
||||
|
||||
return message.ToString();
|
||||
}
|
||||
return message.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user