mirror of
https://github.com/sct/overseerr.git
synced 2025-10-02 00:33:09 +02:00
feat: force setup if app is not initialized
This commit is contained in:
@@ -16,6 +16,11 @@ const router = Router();
|
||||
|
||||
router.use(checkUser);
|
||||
router.use('/user', isAuthenticated(Permission.MANAGE_USERS), user);
|
||||
router.get('/settings/public', (_req, res) => {
|
||||
const settings = getSettings();
|
||||
|
||||
return res.status(200).json(settings.public);
|
||||
});
|
||||
router.use(
|
||||
'/settings',
|
||||
isAuthenticated(Permission.MANAGE_SETTINGS),
|
||||
@@ -29,12 +34,6 @@ router.use('/tv', isAuthenticated(), tvRoutes);
|
||||
router.use('/media', isAuthenticated(), mediaRoutes);
|
||||
router.use('/auth', authRoutes);
|
||||
|
||||
router.get('/settings/public', (_req, res) => {
|
||||
const settings = getSettings();
|
||||
|
||||
return res.status(200).json(settings.public);
|
||||
});
|
||||
|
||||
router.get('/', (_req, res) => {
|
||||
return res.status(200).json({
|
||||
api: 'Overseerr API',
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import { Router } from 'express';
|
||||
import { getRepository, FindOperator } from 'typeorm';
|
||||
import { getRepository, FindOperator, FindOneOptions } from 'typeorm';
|
||||
import Media from '../entity/Media';
|
||||
import { MediaStatus } from '../constants/media';
|
||||
|
||||
@@ -43,11 +43,21 @@ mediaRoutes.get('/', async (req, res, next) => {
|
||||
statusFilter = undefined;
|
||||
}
|
||||
|
||||
let sortFilter: FindOneOptions<Media>['order'] = {
|
||||
id: 'DESC',
|
||||
};
|
||||
|
||||
switch (req.query.sort) {
|
||||
case 'modified':
|
||||
sortFilter = {
|
||||
updatedAt: 'DESC',
|
||||
};
|
||||
break;
|
||||
}
|
||||
|
||||
try {
|
||||
const [media, mediaCount] = await mediaRepository.findAndCount({
|
||||
order: {
|
||||
id: 'DESC',
|
||||
},
|
||||
order: sortFilter,
|
||||
where: {
|
||||
status: statusFilter,
|
||||
},
|
||||
|
@@ -13,6 +13,8 @@ import SonarrAPI from '../api/sonarr';
|
||||
import RadarrAPI from '../api/radarr';
|
||||
import logger from '../logger';
|
||||
import { scheduledJobs } from '../job/schedule';
|
||||
import { Permission } from '../lib/permissions';
|
||||
import { isAuthenticated } from '../middleware/auth';
|
||||
|
||||
const settingsRoutes = Router();
|
||||
|
||||
@@ -334,4 +336,17 @@ settingsRoutes.get('/jobs', (req, res) => {
|
||||
);
|
||||
});
|
||||
|
||||
settingsRoutes.get(
|
||||
'/initialize',
|
||||
isAuthenticated(Permission.ADMIN),
|
||||
(req, res) => {
|
||||
const settings = getSettings();
|
||||
|
||||
settings.public.initialized = true;
|
||||
settings.save();
|
||||
|
||||
return res.status(200).json(settings.public);
|
||||
}
|
||||
);
|
||||
|
||||
export default settingsRoutes;
|
||||
|
Reference in New Issue
Block a user