diff --git a/src/features/misc/sections/Language.jsx b/src/features/misc/sections/Language.jsx index 23ac212c..77d4bfe4 100644 --- a/src/features/misc/sections/Language.jsx +++ b/src/features/misc/sections/Language.jsx @@ -1,8 +1,7 @@ -import { useState, useEffect, useRef, useMemo } from 'react'; +import { useState, useMemo } from 'react'; import { useT, useTranslation } from 'contexts/TranslationContext'; -import variables from 'config/variables'; -import { MdOutlineOpenInNew, MdSearch } from 'react-icons/md'; +import { MdOutlineOpenInNew, MdSearch, MdComputer } from 'react-icons/md'; import { TextField, InputAdornment } from '@mui/material'; import { Radio } from 'components/Form/Settings'; @@ -12,10 +11,7 @@ import languages from '@/i18n/languages.json'; const LanguageOptions = () => { const t = useT(); const { language: currentLanguage, changeLanguage } = useTranslation(); - const loadingText = t('modals.main.loading'); - const offlineText = t('modals.main.marketplace.offline.description'); const languageTitle = t('modals.main.settings.sections.language.title'); - const quoteTitle = t('modals.main.settings.sections.language.quote'); const [searchQuery, setSearchQuery] = useState(''); @@ -86,64 +82,6 @@ const LanguageOptions = () => { // Find current language option for display const currentLangOption = languageOptions.find(l => l.value === currentLanguage); - const [quoteLanguages, setQuoteLanguages] = useState([ - { - name: loadingText, - value: 'loading', - }, - ]); - - const controllerRef = useRef(new AbortController()); - - const getquoteLanguages = async () => { - try { - const data = await ( - await fetch(variables.constants.API_URL + '/quotes/languages', { - signal: controllerRef.current.signal, - }) - ).json(); - - if (controllerRef.current.signal.aborted === true) { - return; - } - - const fetchedQuoteLanguages = data.map((language) => { - return { - name: languages.find((l) => l.value === language.name) - ? languages.find((l) => l.value === language.name).name - : 'English', - value: language, - }; - }); - - setQuoteLanguages(fetchedQuoteLanguages); - } catch (error) { - if (error.name !== 'AbortError') { - console.error('Failed to fetch quote languages:', error); - } - } - }; - - useEffect(() => { - if (navigator.onLine === false || localStorage.getItem('offlineMode') === 'true') { - setQuoteLanguages([ - { - name: offlineText, - value: 'loading', - }, - ]); - return; - } - - getquoteLanguages(); - - const controller = controllerRef.current; - return () => { - // stop making requests - controller.abort(); - }; - }, [offlineText]); - return ( <>
@@ -201,29 +139,38 @@ const LanguageOptions = () => {
{systemLanguage && systemLanguage.value !== currentLanguage && ( )}
- - {quoteTitle} - -
- { - return { name: language.name, value: language.value.name }; - })} - defaultValue={quoteLanguages[0].name} - category="quote" - /> -
); }; diff --git a/src/features/quote/hooks/useQuoteLoader.js b/src/features/quote/hooks/useQuoteLoader.js index 53d8511d..dc98f00a 100644 --- a/src/features/quote/hooks/useQuoteLoader.js +++ b/src/features/quote/hooks/useQuoteLoader.js @@ -156,9 +156,8 @@ export function useQuoteLoader(updateQuote) { if (offline) return doOffline(); const fetchAPIQuote = async () => { - const quoteLanguage = localStorage.getItem('quoteLanguage'); const response = await fetch( - `${variables.constants.API_URL}/quotes/random?language=${quoteLanguage}` + `${variables.constants.API_URL}/quotes/random` ).then(res => res.json()); if (response.statusCode === 429) return null; @@ -169,7 +168,6 @@ export function useQuoteLoader(updateQuote) { author: response.author, authorlink: getAuthorLink(response.author), ...authorimgdata, - quoteLanguage, authorOccupation: response.author_occupation, }; }; diff --git a/src/features/quote/hooks/useQuoteState.js b/src/features/quote/hooks/useQuoteState.js index 8ec8de22..0f80e07d 100644 --- a/src/features/quote/hooks/useQuoteState.js +++ b/src/features/quote/hooks/useQuoteState.js @@ -11,7 +11,6 @@ export function useQuoteState() { authorlink: null, authorimg: null, authorimglicense: null, - quoteLanguage: '', noQuote: false, }); diff --git a/src/utils/data/default_settings.json b/src/utils/data/default_settings.json index 2e783cc4..ec3ed152 100644 --- a/src/utils/data/default_settings.json +++ b/src/utils/data/default_settings.json @@ -87,10 +87,6 @@ "name": "showWelcome", "value": true }, - { - "name": "quoteLanguage", - "value": "en" - }, { "name": "date", "value": "false"