mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-11 03:41:12 +00:00
fix: metadata tags lang (#7153)
* fix: metadata tags lang * feat: optimize code --------- Co-authored-by: 杨国璇 <ygx@Hello-word.local>
This commit is contained in:
@@ -16,7 +16,7 @@ export const MetadataStatusProvider = ({ repoID, currentRepoInfo, hideMetadataVi
|
|||||||
const [isLoading, setLoading] = useState(true);
|
const [isLoading, setLoading] = useState(true);
|
||||||
const [enableMetadata, setEnableMetadata] = useState(false);
|
const [enableMetadata, setEnableMetadata] = useState(false);
|
||||||
const [enableTags, setEnableTags] = useState(false);
|
const [enableTags, setEnableTags] = useState(false);
|
||||||
const [tagsLang, setTagsLang] = useState(null);
|
const [tagsLang, setTagsLang] = useState('en');
|
||||||
const [isBeingBuilt, setIsBeingBuilt] = useState(false);
|
const [isBeingBuilt, setIsBeingBuilt] = useState(false);
|
||||||
|
|
||||||
const cancelMetadataURL = useCallback(() => {
|
const cancelMetadataURL = useCallback(() => {
|
||||||
@@ -42,7 +42,7 @@ export const MetadataStatusProvider = ({ repoID, currentRepoInfo, hideMetadataVi
|
|||||||
cancelMetadataURL();
|
cancelMetadataURL();
|
||||||
}
|
}
|
||||||
setEnableTags(enableTags);
|
setEnableTags(enableTags);
|
||||||
setTagsLang(tagsLang);
|
setTagsLang(tagsLang || 'en');
|
||||||
setEnableMetadata(enableMetadata);
|
setEnableMetadata(enableMetadata);
|
||||||
setLoading(false);
|
setLoading(false);
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
|
@@ -25,7 +25,7 @@ const langOptions = [
|
|||||||
|
|
||||||
const MetadataTagsStatusDialog = ({ value: oldValue, lang: oldLang, repoID, toggleDialog: toggle, submit }) => {
|
const MetadataTagsStatusDialog = ({ value: oldValue, lang: oldLang, repoID, toggleDialog: toggle, submit }) => {
|
||||||
const [value, setValue] = useState(oldValue);
|
const [value, setValue] = useState(oldValue);
|
||||||
const [lang, setLang] = useState({ value: oldLang || 'en', label: langOptions.find(item => item.value === oldLang).label });
|
const [lang, setLang] = useState(oldLang);
|
||||||
const [submitting, setSubmitting] = useState(false);
|
const [submitting, setSubmitting] = useState(false);
|
||||||
const [showTurnOffConfirmDialog, setShowTurnOffConfirmDialog] = useState(false);
|
const [showTurnOffConfirmDialog, setShowTurnOffConfirmDialog] = useState(false);
|
||||||
|
|
||||||
@@ -39,8 +39,8 @@ const MetadataTagsStatusDialog = ({ value: oldValue, lang: oldLang, repoID, togg
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setSubmitting(true);
|
setSubmitting(true);
|
||||||
tagsAPI.openTags(repoID, lang.value).then(res => {
|
tagsAPI.openTags(repoID, lang).then(res => {
|
||||||
submit(true, lang.value);
|
submit(true, lang);
|
||||||
toggle();
|
toggle();
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
const errorMsg = Utils.getErrorMsg(error);
|
const errorMsg = Utils.getErrorMsg(error);
|
||||||
@@ -71,9 +71,11 @@ const MetadataTagsStatusDialog = ({ value: oldValue, lang: oldLang, repoID, togg
|
|||||||
setValue(nextValue);
|
setValue(nextValue);
|
||||||
}, [value]);
|
}, [value]);
|
||||||
|
|
||||||
const onSelectChange = (option) => {
|
const onSelectChange = useCallback((option) => {
|
||||||
setLang(option);
|
const newValue = option.value;
|
||||||
};
|
if (newValue === lang) return;
|
||||||
|
setLang(newValue);
|
||||||
|
}, [lang]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
@@ -97,7 +99,7 @@ const MetadataTagsStatusDialog = ({ value: oldValue, lang: oldLang, repoID, togg
|
|||||||
<span>{gettext('Tags language:')}</span>
|
<span>{gettext('Tags language:')}</span>
|
||||||
<SeahubSelect
|
<SeahubSelect
|
||||||
className='tags-language-selector'
|
className='tags-language-selector'
|
||||||
value={lang || { value: 'en', label: 'English' }}
|
value={langOptions.find(o => o.value === lang) || langOptions[1]}
|
||||||
options={langOptions}
|
options={langOptions}
|
||||||
onChange={onSelectChange}
|
onChange={onSelectChange}
|
||||||
/>
|
/>
|
||||||
|
Reference in New Issue
Block a user