public PlexContentCacher(ISettingsService <PlexSettings> plexSettings, IRequestService request, IPlexApi plex, ICacheProvider cache, INotificationService notify, IJobRecord rec, IRepository <UsersToNotify> users, IRepository <PlexEpisodes> repo, IPlexNotificationEngine e, IRepository <PlexContent> content) { Plex = plexSettings; RequestService = request; PlexApi = plex; Cache = cache; Notification = notify; Job = rec; UserNotifyRepo = users; EpisodeRepo = repo; NotificationEngine = e; PlexContent = content; }
public RequestsModule( IRequestService service, ISettingsService <PlexRequestSettings> prSettings, ISettingsService <PlexSettings> plex, INotificationService notify, ISettingsService <SonarrSettings> sonarrSettings, ISettingsService <SickRageSettings> sickRageSettings, ISettingsService <CouchPotatoSettings> cpSettings, ICouchPotatoApi cpApi, ISonarrApi sonarrApi, ISickRageApi sickRageApi, ICacheProvider cache, IAnalytics an, IPlexNotificationEngine engine, IEmbyNotificationEngine embyEngine, ISecurityExtensions security, ISettingsService <CustomizationSettings> customSettings, ISettingsService <EmbySettings> embyS, ISettingsService <RadarrSettings> radarr, IRadarrApi radarrApi) : base("requests", prSettings, security) { Service = service; PrSettings = prSettings; PlexSettings = plex; NotificationService = notify; SonarrSettings = sonarrSettings; SickRageSettings = sickRageSettings; CpSettings = cpSettings; SonarrApi = sonarrApi; SickRageApi = sickRageApi; CpApi = cpApi; Cache = cache; Analytics = an; PlexNotificationEngine = engine; EmbyNotificationEngine = embyEngine; CustomizationSettings = customSettings; EmbySettings = embyS; Radarr = radarr; RadarrApi = radarrApi; Get["/", true] = async(x, ct) => await LoadRequests(); Get["/movies", true] = async(x, ct) => await GetMovies(); Get["/tvshows", true] = async(c, ct) => await GetTvShows(); Get["/albums", true] = async(x, ct) => await GetAlbumRequests(); Post["/delete", true] = async(x, ct) => await DeleteRequest((int)Request.Form.id); Post["/reportissue", true] = async(x, ct) => await ReportIssue((int)Request.Form.requestId, (IssueState)(int)Request.Form.issue, null); Post["/reportissuecomment", true] = async(x, ct) => await ReportIssue((int)Request.Form.requestId, IssueState.Other, (string)Request.Form.commentArea); Post["/clearissues", true] = async(x, ct) => await ClearIssue((int)Request.Form.Id); Post["/changeavailability", true] = async(x, ct) => await ChangeRequestAvailability((int)Request.Form.Id, (bool)Request.Form.Available); Post["/changeRootFoldertv", true] = async(x, ct) => await ChangeRootFolder(RequestType.TvShow, (int)Request.Form.requestId, (int)Request.Form.rootFolderId); Post["/changeRootFoldermovie", true] = async(x, ct) => await ChangeRootFolder(RequestType.Movie, (int)Request.Form.requestId, (int)Request.Form.rootFolderId); Get["/UpdateFilters", true] = async(x, ct) => await GetFilterAndSortSettings(); }