mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-17 15:53:28 +00:00
optimize people cover cache (#7534)
This commit is contained in:
@@ -12,7 +12,11 @@ const People = ({ haveFreezed, people, onOpenPeople, onRename, onFreezed, onUnFr
|
||||
|
||||
const similarPhotoURL = useMemo(() => {
|
||||
const repoID = window.sfMetadataContext.getSetting('repoID');
|
||||
return `${siteRoot}thumbnail/${repoID}/${thumbnailDefaultSize}/_Internal/Faces/${people._id}.jpg`;
|
||||
let photoURL = `${siteRoot}thumbnail/${repoID}/${thumbnailDefaultSize}/_Internal/Faces/${people._id}.jpg`;
|
||||
if (people._name === '_Unknown_people') {
|
||||
return photoURL;
|
||||
}
|
||||
return `${photoURL}?t=${people.file_mtime}`;
|
||||
}, [people]);
|
||||
|
||||
const onImgLoadError = useCallback(() => {
|
||||
|
@@ -1274,6 +1274,12 @@ class FacesRecords(APIView):
|
||||
faces_records = query_result.get('results', [])
|
||||
metadata_columns = query_result.get('metadata', [])
|
||||
|
||||
dirents = seafile_api.list_dir_by_path(repo_id, '/_Internal/Faces')
|
||||
file_name_to_mtime_dict = {}
|
||||
for dirent in dirents:
|
||||
file_name, ext = os.path.splitext(dirent.obj_name)
|
||||
file_name_to_mtime_dict[file_name] = dirent.mtime
|
||||
|
||||
valid_faces_records = []
|
||||
for record in faces_records:
|
||||
|
||||
@@ -1290,6 +1296,7 @@ class FacesRecords(APIView):
|
||||
FACES_TABLE.columns.name.name: record.get(FACES_TABLE.columns.name.name),
|
||||
FACES_TABLE.columns.photo_links.name: valid_photo_links,
|
||||
'_is_someone': record.get(FACES_TABLE.columns.name.name) != UNKNOWN_PEOPLE_NAME,
|
||||
'file_mtime': file_name_to_mtime_dict.get(record.get(FACES_TABLE.columns.id.name))
|
||||
})
|
||||
|
||||
return Response({
|
||||
|
Reference in New Issue
Block a user