Files
OpenMediaCenter/src/pages/SettingsPage/SettingsPage.tsx
T

55 lines
2.2 KiB
TypeScript
Raw Normal View History

2020-10-25 18:48:23 +00:00
import React from 'react';
import MovieSettings from './MovieSettings';
import GeneralSettings from './GeneralSettings';
import style from './SettingsPage.module.css';
2020-12-17 20:53:22 +00:00
import GlobalInfos from '../../utils/GlobalInfos';
2020-12-29 19:39:30 +00:00
import {NavLink, Redirect, Route, Switch} from 'react-router-dom';
2020-06-04 22:19:18 +02:00
2020-08-12 17:50:25 +00:00
/**
* The Settingspage handles all kinds of settings for the mediacenter
* and is basically a wrapper for child-tabs
*/
2020-12-29 19:39:30 +00:00
class SettingsPage extends React.Component {
render(): JSX.Element {
const themestyle = GlobalInfos.getThemeStyle();
2020-06-04 22:19:18 +02:00
return (
<div>
2020-08-04 18:53:11 +02:00
<div className={style.SettingsSidebar + ' ' + themestyle.secbackground}>
<div className={style.SettingsSidebarTitle + ' ' + themestyle.lighttextcolor}>Settings</div>
2020-12-29 19:39:30 +00:00
<NavLink to='/settings/general'>
<div className={style.SettingSidebarElement}>General</div>
</NavLink>
<NavLink to='/settings/movies'>
<div className={style.SettingSidebarElement}>Movies</div>
</NavLink>
{GlobalInfos.isTVShowEnabled() ? (
<NavLink to='/settings/tv'>
<div className={style.SettingSidebarElement}>TV Shows</div>
</NavLink>
) : null}
</div>
2020-07-08 19:33:23 +02:00
<div className={style.SettingsContent}>
2020-12-29 19:39:30 +00:00
<Switch>
2021-03-14 14:51:53 +00:00
<Route path='/settings/general'>
<GeneralSettings />
2020-12-29 19:39:30 +00:00
</Route>
2021-03-14 14:51:53 +00:00
<Route path='/settings/movies'>
<MovieSettings />
2020-12-29 19:39:30 +00:00
</Route>
{GlobalInfos.isTVShowEnabled() ? (
<Route path='/settings/tv'>
<span />
</Route>
) : null}
2021-03-14 14:51:53 +00:00
<Route path='/settings'>
<Redirect to='/settings/general' />
2020-12-29 19:39:30 +00:00
</Route>
</Switch>
</div>
2020-06-04 22:19:18 +02:00
</div>
);
}
}
export default SettingsPage;