mirror of
https://github.com/Kareadita/Kavita.git
synced 2025-05-24 00:52:23 -04:00
* Implemented the ability to link different series together through Edit Series. CSS pending. * Fixed up the css for related cards to show the relation * Working on making all tabs in edit seris modal save in one go. Taking a break. * Some fixes for Robbie to help with styling on * Linked series pill, center library * Centering library detail and related pill spacing - Library detail cards are now centered if total number of items is > 6 or if mobile. - Added ability to determine if mobile (viewport width <= 480px - Fixed related card spacing - Fixed related card pill spacing * Updating relation form spacing * Fixed a bug in card detail layout when there is no pagination, we create one in a way that all items render at once. * Only auto-close side nav on phones, not tablets * Fixed a bug where we had flipped state on sideNavCollapsed$ * Cleaned up some misleading comments * Implemented RBS back in and now if you have a relationship besides prequel/sequel, the target series will show a link back to it's parent. * Added Parentto pipe * Missed a relationship type Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
87 lines
2.9 KiB
C#
87 lines
2.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using API.Entities.Enums;
|
|
using API.Entities.Interfaces;
|
|
using API.Entities.Metadata;
|
|
|
|
namespace API.Entities;
|
|
|
|
public class Series : IEntityDate
|
|
{
|
|
public int Id { get; set; }
|
|
/// <summary>
|
|
/// The UI visible Name of the Series. This may or may not be the same as the OriginalName
|
|
/// </summary>
|
|
public string Name { get; set; }
|
|
/// <summary>
|
|
/// Used internally for name matching. <see cref="Parser.Parser.Normalize"/>
|
|
/// </summary>
|
|
public string NormalizedName { get; set; }
|
|
/// <summary>
|
|
/// The name used to sort the Series. By default, will be the same as Name.
|
|
/// </summary>
|
|
public string SortName { get; set; }
|
|
/// <summary>
|
|
/// Name in original language (Japanese for Manga). By default, will be same as Name.
|
|
/// </summary>
|
|
public string LocalizedName { get; set; }
|
|
/// <summary>
|
|
/// Original Name on disk. Not exposed to UI.
|
|
/// </summary>
|
|
public string OriginalName { get; set; }
|
|
/// <summary>
|
|
/// Time of creation
|
|
/// </summary>
|
|
public DateTime Created { get; set; }
|
|
/// <summary>
|
|
/// Whenever a modification occurs. Ie) New volumes, removed volumes, title update, etc
|
|
/// </summary>
|
|
public DateTime LastModified { get; set; }
|
|
/// <summary>
|
|
/// Absolute path to the (managed) image file
|
|
/// </summary>
|
|
/// <remarks>The file is managed internally to Kavita's APPDIR</remarks>
|
|
public string CoverImage { get; set; }
|
|
/// <summary>
|
|
/// Denotes if the CoverImage has been overridden by the user. If so, it will not be updated during normal scan operations.
|
|
/// </summary>
|
|
public bool CoverImageLocked { get; set; }
|
|
/// <summary>
|
|
/// Sum of all Volume page counts
|
|
/// </summary>
|
|
public int Pages { get; set; }
|
|
|
|
/// <summary>
|
|
/// The type of all the files attached to this series
|
|
/// </summary>
|
|
public MangaFormat Format { get; set; } = MangaFormat.Unknown;
|
|
|
|
public bool NameLocked { get; set; }
|
|
public bool SortNameLocked { get; set; }
|
|
public bool LocalizedNameLocked { get; set; }
|
|
|
|
/// <summary>
|
|
/// When a Chapter was last added onto the Series
|
|
/// </summary>
|
|
public DateTime LastChapterAdded { get; set; }
|
|
|
|
public SeriesMetadata Metadata { get; set; }
|
|
|
|
public ICollection<AppUserRating> Ratings { get; set; } = new List<AppUserRating>();
|
|
public ICollection<AppUserProgress> Progress { get; set; } = new List<AppUserProgress>();
|
|
|
|
/// <summary>
|
|
/// Relations to other Series, like Sequels, Prequels, etc
|
|
/// </summary>
|
|
/// <remarks>1 to Many relationship</remarks>
|
|
public virtual ICollection<SeriesRelation> Relations { get; set; } = new List<SeriesRelation>();
|
|
public virtual ICollection<SeriesRelation> RelationOf { get; set; } = new List<SeriesRelation>();
|
|
|
|
|
|
// Relationships
|
|
public List<Volume> Volumes { get; set; }
|
|
public Library Library { get; set; }
|
|
public int LibraryId { get; set; }
|
|
|
|
}
|