'use server' import { getSessionData } from '@/app/actions/session'; import { API_BASE_URL } from '@/app/actions/definitions'; export async function searchUserFiles(fileId: string) { const token = await getSessionData('token'); try { const response = await fetch(`${API_BASE_URL}/api/v1/files/${fileId}/similar?similarityLevels=DUPLICATE,SIMILARITY&auth_token=${token}`, { method: 'GET' }); if (response.ok) { let parsed = await response.json(); if (parsed.message_code === 0) { return parsed.message_body; } else { throw parsed; } } else { throw (`${response.status}`); } } catch (error) { return error } } export async function searchGlobalFiles(fileId: string, currentPage: number) { const token = await getSessionData('token'); console.log('searchGlobalFiles'); console.log(currentPage); //удалить когда поиск будет нормально работать /* return { images: [ { url: 'string1', pageTitle: `string1 from page ${currentPage}`, height: 100, width: 100, host: 'string1', pageUrl: 'string1' }, { url: 'string1', pageTitle: `string2 from page ${currentPage}`, height: 100, width: 100, host: 'string1', pageUrl: 'string1' }, { url: 'string1', pageTitle: `string3 from page ${currentPage}`, height: 100, width: 100, host: 'string1', pageUrl: 'string1' } ], page: 0, pageSize: 0, totalPages: 11, totalResults: 100, } */ /* return { images: [], page: 0, pageSize: 0, totalPages: 0, totalResults: 0 } */ try { const response = await fetch(`${API_BASE_URL}/api/v1/data`, { method: 'POST', body: JSON.stringify({ version: 1, msg_id: 20007, message_body: { file_id: fileId, page: currentPage, } }), headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' } }); if (response.ok) { let parsed = await response.json(); if (parsed.message_code === 0) { return parsed.message_body; } else { throw parsed; } } else { throw 'error'; } } catch (error) { return { images: [], page: 0, pageSize: 0, totalPages: 0, totalResults: 0, error: 'error' } } } export async function getSearchStats() { const token = await getSessionData('token'); try { const response = await fetch(`${API_BASE_URL}/api/check/file_stats`, { method: 'GET', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': `Bearer ${token}`, } }); if (response.ok) { let parsed = await response.json(); return parsed; } else { return null; } } catch (error) { return null; } }