jellyfin-lessons/plugin/Api/LessonsController.cs
Scott Scoble 2df642cf52 feat: add Lessons page with API and sidebar nav entry (#5)
- Add LessonsController with GET /Plugins/Lessons/List endpoint
- Add LessonStore DI registration in ServiceRegistrator
- Add lessonsPage.html embedded resource with grouped lesson listing
- Implement IHasWebPages in Plugin for sidebar nav entry
- Add ImplicitUsings/Nullable to csproj for net9.0 compatibility
- Add Microsoft.AspNetCore.App FrameworkReference for MVC
- Fix ServiceRegistrator to match 10.10.x IPluginServiceRegistrator signature
2026-05-15 21:48:43 -07:00

34 lines
738 B
C#

using Microsoft.AspNetCore.Mvc;
using Jellyfin.Plugin.Lessons.Data;
namespace Jellyfin.Plugin.Lessons.Api;
[ApiController]
[Route("Plugins/Lessons")]
public class LessonsController : ControllerBase
{
private readonly LessonStore _store;
public LessonsController(LessonStore store)
{
_store = store;
}
[HttpGet("List")]
public IActionResult List()
{
var lessons = _store.GetAllLessons();
var summaries = lessons.Select(l => new
{
id = l.Id,
title = l.Title,
grade = l.Grade,
subject = l.Subject,
lessonDate = l.LessonDate,
description = l.Description
});
return Ok(summaries);
}
}