]> git.localhorst.tv Git - alttp.git/blobdiff - resources/js/app/LanguageSwitcher.js
improved user context
[alttp.git] / resources / js / app / LanguageSwitcher.js
index f2b8f53f388e5ba5df9468c61e9845138af9d413..52efaf5fbaee87f1f76485a719111e2810c0f30b 100644 (file)
@@ -1,11 +1,10 @@
 import axios from 'axios';
-import PropTypes from 'prop-types';
 import React from 'react';
 import { Button } from 'react-bootstrap';
 import { withTranslation } from 'react-i18next';
 
 import Icon from '../components/common/Icon';
-import { withUser } from '../helpers/UserContext';
+import { useUser } from '../hooks/user';
 import i18n from '../i18n';
 
 const setLanguage = (user, language) => {
@@ -15,22 +14,23 @@ const setLanguage = (user, language) => {
        }
 };
 
-const LanguageSwitcher = ({ user }) =>
-<Button
-       className="text-reset"
-       href={`?lng=${i18n.language === 'de' ? 'en' : 'de'}`}
-       onClick={e => { setLanguage(user, i18n.language === 'de' ? 'en' : 'de'); e.preventDefault(); }}
-       title={i18n.language === 'de' ? 'Switch to english' : 'Auf deutsch wechseln'}
-       variant="outline-secondary"
->
-       <Icon.LANGUAGE />
-       {' '}
-       {i18n.language === 'de' ? 'Deutsch' : 'English'}
-</Button>;
+const LanguageSwitcher = () => {
+       const { user } = useUser();
 
-LanguageSwitcher.propTypes = {
-       user: PropTypes.shape({
-       }),
+       return <Button
+               className="text-reset"
+               href={`?lng=${i18n.language === 'de' ? 'en' : 'de'}`}
+               onClick={e => {
+                       setLanguage(user, i18n.language === 'de' ? 'en' : 'de');
+                       e.preventDefault();
+               }}
+               title={i18n.language === 'de' ? 'Switch to english' : 'Auf deutsch wechseln'}
+               variant="outline-secondary"
+       >
+               <Icon.LANGUAGE />
+               {' '}
+               {i18n.language === 'de' ? 'Deutsch' : 'English'}
+       </Button>;
 };
 
-export default withTranslation()(withUser(LanguageSwitcher));
+export default withTranslation()(LanguageSwitcher);