This commit is contained in:
David Ralph
2021-03-13 18:15:57 +00:00
parent 4a427e23d8
commit aec47d9d0b
4 changed files with 56 additions and 25 deletions

View File

@@ -6,26 +6,24 @@ import Marketplace from './tabs/Marketplace';
import Navigation from './tabs/backend/Tabs'; import Navigation from './tabs/backend/Tabs';
export default class MainModal extends React.PureComponent { export default function MainModal(props) {
render() { return (
return ( <div className='modal'>
<div className='modal'> <span className='closeModal' onClick={props.modalClose}>&times;</span>
<span className='closeModal' onClick={this.props.modalClose}>&times;</span> <h1>Options</h1>
<h1>Options</h1> <div>
<div> <Navigation navbar={true}>
<Navigation navbar={true}> <div label={props.language.modals.main.navbar.settings}>
<div label={this.props.language.modals.main.navbar.settings}> <Settings language={props.language.modals.main.settings} toastLanguage={props.language.toasts} />
<Settings language={this.props.language.modals.main.settings} toastLanguage={this.props.language.toasts} /> </div>
</div> <div label={props.language.modals.main.navbar.addons}>
<div label={this.props.language.modals.main.navbar.addons}> <Addons/>
<Addons/> </div>
</div> <div label={props.language.modals.main.navbar.marketplace}>
<div label={this.props.language.modals.main.navbar.marketplace}> <Marketplace/>
<Marketplace/> </div>
</div> </Navigation>
</Navigation>
</div>
</div> </div>
); </div>
} );
} }

View File

@@ -5,6 +5,8 @@ import Item from '../Item';
import Items from '../Items'; import Items from '../Items';
import FileUpload from '../../settings/FileUpload'; import FileUpload from '../../settings/FileUpload';
import MarketplaceFunctions from '../../../../modules/helpers/marketplace';
export default class Added extends React.PureComponent { export default class Added extends React.PureComponent {
constructor(...args) { constructor(...args) {
super(...args); super(...args);
@@ -61,8 +63,32 @@ export default class Added extends React.PureComponent {
this.setState({ this.setState({
button: this.buttons.uninstall button: this.buttons.uninstall
}); });
} }
manage(type, input) {
switch (type) {
case 'install':
MarketplaceFunctions.install(input.type, input, true);
break;
case 'uninstall':
MarketplaceFunctions.uninstall(this.state.current_data.name, this.state.current_data.content.type);
break;
default:
break;
}
toast(this.props.toastLanguage[type + 'ed']);
let button = '';
if (type === 'install') {
button = this.buttons.uninstall;
}
this.setState({
button: button,
installed: JSON.parse(localStorage.getItem('installed'))
});
}
render() { render() {
let content = <Items items={this.state.installed} toggleFunction={(input) => this.toggle('item', 'addon', input)} />; let content = <Items items={this.state.installed} toggleFunction={(input) => this.toggle('item', 'addon', input)} />;
@@ -74,7 +100,7 @@ export default class Added extends React.PureComponent {
<LocalMallIcon/> <LocalMallIcon/>
<h1>Empty</h1> <h1>Empty</h1>
<p className='description'>Nothing here (yet)</p> <p className='description'>Nothing here (yet)</p>
<button className='goToMarket'>not implemented</button> <button className='goToMarket'>Take me there</button>
</div> </div>
</div> </div>
); );
@@ -83,7 +109,7 @@ export default class Added extends React.PureComponent {
return ( return (
<React.Fragment> <React.Fragment>
<div id='marketplace'> <div id='marketplace'>
<FileUpload id='file-input' accept='application/json' loadFunction={(e) => this.manage('install', JSON.parse(e.target.result))} /> <FileUpload id='file-input' type='settings' accept='application/json' loadFunction={(e) => this.manage('install', JSON.parse(e.target.result))} />
<button className='addToMue sideload' onClick={() => document.getElementById('file-input').click()}>Sideload</button> <button className='addToMue sideload' onClick={() => document.getElementById('file-input').click()}>Sideload</button>
{content} {content}
</div> </div>

View File

@@ -46,6 +46,7 @@ export default class Tab extends React.PureComponent {
case 'Settings': icon = <Settings/>; break; case 'Settings': icon = <Settings/>; break;
case 'My Add-ons': icon = <Addons/>; break; case 'My Add-ons': icon = <Addons/>; break;
case 'Marketplace': icon = <Marketplace/>; break; case 'Marketplace': icon = <Marketplace/>; break;
// Settings // Settings
case 'Time': icon = <Time/>; break; case 'Time': icon = <Time/>; break;
case 'Greeting': icon = <Greeting/>; break; case 'Greeting': icon = <Greeting/>; break;
@@ -64,6 +65,7 @@ export default class Tab extends React.PureComponent {
break; break;
case 'Change Log': icon = <Changelog/>; break; case 'Change Log': icon = <Changelog/>; break;
case 'About': icon = <About/>; break; case 'About': icon = <About/>; break;
// Store // Store
case 'Themes': icon = <Colors/>; break; case 'Themes': icon = <Colors/>; break;
case 'Photo Packs': icon = <Background/>; break; case 'Photo Packs': icon = <Background/>; break;
@@ -73,6 +75,7 @@ export default class Tab extends React.PureComponent {
divider = <div><hr/></div>; divider = <div><hr/></div>;
break; break;
case 'Added': icon = <Added/>; break; case 'Added': icon = <Added/>; break;
default: break; default: break;
} }

View File

@@ -161,7 +161,11 @@ export default class Background extends React.PureComponent {
componentDidMount() { componentDidMount() {
if (localStorage.getItem('background') === 'false') { if (localStorage.getItem('background') === 'false') {
return document.querySelector('#credits').style.display = 'none'; // Hide the credit return document.querySelector('.photoInformation').style.display = 'none'; // Hide the credit
}
if (localStorage.getItem('customBackgroundColour') !== 'Disabled') {
document.querySelector('.photoInformation').style.display = 'none';
} }
if (localStorage.getItem('animations') === 'true') { if (localStorage.getItem('animations') === 'true') {