Misc Bugfixes (#1015)

* Fixed some security issues in dev env

* When deleting folders in bookmark cleanup, delete empty folders correctly.

* When a new library is created and cards are added, cards can have a blank library name. Card library name code is reworked to be much lighter on memory.

* Added a config for github issues to disable blank issues.

* Skip any sort of directory iteration code if we haven't deleted any bookmarks.

* Fixed a bug where some style overrides were duplicating. Now logic is much more targetted, only applying to the correct tags.

* Applied sorting to the filtering apis.

* Reverted one of my changes for a better version Robbie did.
This commit is contained in:
Joseph Milazzo 2022-01-31 08:50:13 -08:00 committed by GitHub
parent c631395aae
commit c6d1311560
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 186 additions and 47 deletions

View file

@ -67,6 +67,7 @@ public class GenreRepository : IGenreRepository
.Where(s => libraryIds.Contains(s.LibraryId))
.SelectMany(s => s.Metadata.Genres)
.Distinct()
.OrderBy(p => p.Title)
.ProjectTo<GenreTagDto>(_mapper.ConfigurationProvider)
.ToListAsync();
}

View file

@ -66,6 +66,8 @@ public class PersonRepository : IPersonRepository
.Where(s => libraryIds.Contains(s.LibraryId))
.SelectMany(s => s.Metadata.People)
.Distinct()
.OrderBy(p => p.Name)
.AsNoTracking()
.ProjectTo<PersonDto>(_mapper.ConfigurationProvider)
.ToListAsync();
}
@ -74,6 +76,7 @@ public class PersonRepository : IPersonRepository
public async Task<IList<Person>> GetAllPeople()
{
return await _context.Person
.OrderBy(p => p.Name)
.ToListAsync();
}
}

View file

@ -778,6 +778,7 @@ public class SeriesRepository : ISeriesRepository
var ret = await _context.Series
.Where(s => libraryIds.Contains(s.LibraryId))
.Select(s => s.Metadata.Language)
.AsNoTracking()
.Distinct()
.ToListAsync();
@ -787,7 +788,9 @@ public class SeriesRepository : ISeriesRepository
{
Title = CultureInfo.GetCultureInfo(s).DisplayName,
IsoCode = s
}).ToList();
})
.OrderBy(s => s.Title)
.ToList();
}
public async Task<IList<PublicationStatusDto>> GetAllPublicationStatusesDtosForLibrariesAsync(List<int> libraryIds)
@ -801,6 +804,7 @@ public class SeriesRepository : ISeriesRepository
Value = s,
Title = s.ToDescription()
})
.OrderBy(s => s.Title)
.ToListAsync();
}

View file

@ -67,6 +67,8 @@ public class TagRepository : ITagRepository
.Where(s => libraryIds.Contains(s.LibraryId))
.SelectMany(s => s.Metadata.Tags)
.Distinct()
.OrderBy(t => t.Title)
.AsNoTracking()
.ProjectTo<TagDto>(_mapper.ConfigurationProvider)
.ToListAsync();
}
@ -80,6 +82,7 @@ public class TagRepository : ITagRepository
{
return await _context.Tag
.AsNoTracking()
.OrderBy(t => t.Title)
.ProjectTo<TagDto>(_mapper.ConfigurationProvider)
.ToListAsync();
}