mirror of
				https://github.com/Kareadita/Kavita.git
				synced 2025-11-03 19:17:05 -05:00 
			
		
		
		
	* Added playwright and started writing e2e tests. * To make things easy, disabled other browsers while I get confortable. Added a login flow (assumes my dev env) * More tests on login page * Lots more testing code, trying to figure out auth code. * Ensure we don't track DBs inside config * Added a new date property for when chapters are added to a series which helps with OnDeck calculations. Changed a lot of heavy api calls to use IEnumerable to stream repsonse to UI. * Fixed OnDeck with a new field for when last chapter was added on Series. This is a streamlined way to query. Updated Reading List with NormalizedTitle, CoverImage, CoverImageLocked. * Implemented the ability to read a random item in the reading list and for the reading list to be intact for order. * Tweaked the style for webtoon to not span the whole width, but use max width * When we update a cover image just send an event so we don't need to have logic for when updates occur * Fixed a bad name for entity type on cover updates * Aligned the edit collection tag modal to align with new tab design * Rewrote code for picking the first file for metadata to ensure it always picks the correct file, esp if the first chapter of a series starts with a float (1.1) * Refactored setting LastChapterAdded to ensure we do it on the Series. * Updated Chapter updating in scan loop to avoid nested for loop and an additional loop. * Fixed a bug where locked person fields wouldn't persist between scans. * Updated Contributing to reflect how to view the swagger api
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
using System.Collections.Generic;
 | 
						|
using System.Linq;
 | 
						|
using API.Comparators;
 | 
						|
using API.Entities;
 | 
						|
using API.Entities.Enums;
 | 
						|
 | 
						|
namespace API.Extensions
 | 
						|
{
 | 
						|
    public static class VolumeListExtensions
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// Selects the first Volume to get the cover image from. For a book with only a special, the special will be returned.
 | 
						|
        /// If there are both specials and non-specials, then the first non-special will be returned.
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="volumes"></param>
 | 
						|
        /// <param name="seriesFormat"></param>
 | 
						|
        /// <returns></returns>
 | 
						|
        public static Volume GetCoverImage(this IList<Volume> volumes, MangaFormat seriesFormat)
 | 
						|
        {
 | 
						|
            if (seriesFormat is MangaFormat.Epub or MangaFormat.Pdf)
 | 
						|
            {
 | 
						|
                return volumes.OrderBy(x => x.Number).FirstOrDefault();
 | 
						|
            }
 | 
						|
 | 
						|
            if (volumes.Any(x => x.Number != 0))
 | 
						|
            {
 | 
						|
                return volumes.OrderBy(x => x.Number).FirstOrDefault(x => x.Number != 0);
 | 
						|
            }
 | 
						|
            return volumes.OrderBy(x => x.Number).FirstOrDefault();
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 |