clear
This commit is contained in:
@@ -26,7 +26,7 @@ AntiPlagiat.uz quyidagi xizmatlarni taqdim etadi:
|
|||||||
|
|
||||||
1. **Plagiat tekshiruvi** — PDF, DOC, DOCX, TXT formatdagi hujjatlarni plagiatga tekshirish. Maks fayl hajmi: 20 MB. Natija foiz ko'rinishida beriladi.
|
1. **Plagiat tekshiruvi** — PDF, DOC, DOCX, TXT formatdagi hujjatlarni plagiatga tekshirish. Maks fayl hajmi: 20 MB. Natija foiz ko'rinishida beriladi.
|
||||||
2. **SI (Sun'iy Intellekt) detektor** — Matnning sun'iy intellekt tomonidan yozilganligini aniqlash. AI generatsiya ehtimolini foizda ko'rsatadi.
|
2. **SI (Sun'iy Intellekt) detektor** — Matnning sun'iy intellekt tomonidan yozilganligini aniqlash. AI generatsiya ehtimolini foizda ko'rsatadi.
|
||||||
3. **Rasmiy sertifikat** — Orijinallik tasdiqlangan hujjatlar uchun rasmiy sertifikat beriladi.
|
3. **Rasmiy sertifikat** — Originallik tasdiqlangan hujjatlar uchun rasmiy sertifikat beriladi.
|
||||||
4. **Batafsil hisobot** — O'xshashlik manbalari, mos keladigan so'zlar, AI tahlili ballari ko'rsatiladi.
|
4. **Batafsil hisobot** — O'xshashlik manbalari, mos keladigan so'zlar, AI tahlili ballari ko'rsatiladi.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -37,11 +37,11 @@ declare const messages: {
|
|||||||
terms: 'Foydalanish shartlari';
|
terms: 'Foydalanish shartlari';
|
||||||
};
|
};
|
||||||
PlagiarismCheck: {
|
PlagiarismCheck: {
|
||||||
badge: 'Orijinallik tekshiruvi';
|
badge: 'Originallik tekshiruvi';
|
||||||
title: 'Hujjatni yuboring';
|
title: 'Hujjatni yuboring';
|
||||||
submissionSuccess: 'Yuborish muvaffaqiyatli yakunlandi! ID';
|
submissionSuccess: 'Yuborish muvaffaqiyatli yakunlandi! ID';
|
||||||
secureNote: 'Hujjatingiz xavfsiz qayta ishlanadi va tahlil muddati tugagach saqlanmaydi.';
|
secureNote: 'Hujjatingiz xavfsiz qayta ishlanadi va tahlil muddati tugagach saqlanmaydi.';
|
||||||
description: "Hujjatning orijinalligini tekshirish uchun yuklang. Natijalar odatda bir necha daqiqada tayyor bo'ladi.";
|
description: "Hujjatning originalligini tekshirish uchun yuklang. Natijalar odatda bir necha daqiqada tayyor bo'ladi.";
|
||||||
documentTopic: 'Hujjat mavzusi';
|
documentTopic: 'Hujjat mavzusi';
|
||||||
topicPlaceholder: "masalan: Sun'iy intellektning ta'limga ta'siri";
|
topicPlaceholder: "masalan: Sun'iy intellektning ta'limga ta'siri";
|
||||||
senderFullName: "Yuboruvchi to'liq ismi";
|
senderFullName: "Yuboruvchi to'liq ismi";
|
||||||
@@ -53,9 +53,9 @@ declare const messages: {
|
|||||||
autoFilled: "Avto-to'ldirilgan";
|
autoFilled: "Avto-to'ldirilgan";
|
||||||
removeFile: 'Faylni olib tashlash';
|
removeFile: 'Faylni olib tashlash';
|
||||||
certificateTitle: 'Natijani sertifikat bilan qaytarish';
|
certificateTitle: 'Natijani sertifikat bilan qaytarish';
|
||||||
certificateDescription: 'Rasmiy sertifikat sizning orijinallik hisobotingizga ilova qilinadi.';
|
certificateDescription: 'Rasmiy sertifikat sizning originallik hisobotingizga ilova qilinadi.';
|
||||||
submitting: 'Yuborilmoqda…';
|
submitting: 'Yuborilmoqda…';
|
||||||
submitButton: 'Orijinallik tekshiruvi uchun yuborish';
|
submitButton: 'Originallik tekshiruvi uchun yuborish';
|
||||||
dismiss: 'Yopish';
|
dismiss: 'Yopish';
|
||||||
service_price: "Xizmat narxi {PLAGIAT_SERVICE_FEE} so'm";
|
service_price: "Xizmat narxi {PLAGIAT_SERVICE_FEE} so'm";
|
||||||
sertificate_price: "Sertifikat narxi {SERTIFICATE_PRICE} so'm";
|
sertificate_price: "Sertifikat narxi {SERTIFICATE_PRICE} so'm";
|
||||||
@@ -192,10 +192,10 @@ declare const messages: {
|
|||||||
card2Title: 'Nima uchun hujjatingizni tekshirish kerak?';
|
card2Title: 'Nima uchun hujjatingizni tekshirish kerak?';
|
||||||
card2Desc: "Akademik halollikni ta'minlang, jarimalardan qoching va obro'ingizni saqlang. Bizning xizmatimiz kompleks plagiat aniqlashni taqdim etadi.";
|
card2Desc: "Akademik halollikni ta'minlang, jarimalardan qoching va obro'ingizni saqlang. Bizning xizmatimiz kompleks plagiat aniqlashni taqdim etadi.";
|
||||||
card3Title: 'Siz nima olasiz';
|
card3Title: 'Siz nima olasiz';
|
||||||
card3Desc: "Batafsil plagiat hisoboti, o'xshashlik foizi, topilgan manbalar va orijinallikning rasmiy sertifikati.";
|
card3Desc: "Batafsil plagiat hisoboti, o'xshashlik foizi, topilgan manbalar va originallikning rasmiy sertifikati.";
|
||||||
};
|
};
|
||||||
Ticker: {
|
Ticker: {
|
||||||
item1: 'Orijinallik tasdiqlangan';
|
item1: 'Originallik tasdiqlangan';
|
||||||
item2: 'Akademik halollik';
|
item2: 'Akademik halollik';
|
||||||
item3: 'Ishonchli hisobotlar';
|
item3: 'Ishonchli hisobotlar';
|
||||||
item4: 'Chuqur tahlil';
|
item4: 'Chuqur tahlil';
|
||||||
|
|||||||
@@ -34,11 +34,11 @@
|
|||||||
"terms": "Foydalanish shartlari"
|
"terms": "Foydalanish shartlari"
|
||||||
},
|
},
|
||||||
"PlagiarismCheck": {
|
"PlagiarismCheck": {
|
||||||
"badge": "Orijinallik tekshiruvi",
|
"badge": "Originallik tekshiruvi",
|
||||||
"title": "Hujjatni yuboring",
|
"title": "Hujjatni yuboring",
|
||||||
"submissionSuccess": "Yuborish muvaffaqiyatli yakunlandi! ID",
|
"submissionSuccess": "Yuborish muvaffaqiyatli yakunlandi! ID",
|
||||||
"secureNote": "Hujjatingiz xavfsiz qayta ishlanadi va tahlil muddati tugagach saqlanmaydi.",
|
"secureNote": "Hujjatingiz xavfsiz qayta ishlanadi va tahlil muddati tugagach saqlanmaydi.",
|
||||||
"description": "Hujjatning orijinalligini tekshirish uchun yuklang. Natijalar odatda bir necha daqiqada tayyor bo'ladi.",
|
"description": "Hujjatning originalligini tekshirish uchun yuklang. Natijalar odatda bir necha daqiqada tayyor bo'ladi.",
|
||||||
"documentTopic": "Hujjat mavzusi",
|
"documentTopic": "Hujjat mavzusi",
|
||||||
"topicPlaceholder": "masalan: Sun'iy intellektning ta'limga ta'siri",
|
"topicPlaceholder": "masalan: Sun'iy intellektning ta'limga ta'siri",
|
||||||
"senderFullName": "Yuboruvchi to'liq ismi",
|
"senderFullName": "Yuboruvchi to'liq ismi",
|
||||||
@@ -50,9 +50,9 @@
|
|||||||
"autoFilled": "Avto-to'ldirilgan",
|
"autoFilled": "Avto-to'ldirilgan",
|
||||||
"removeFile": "Faylni olib tashlash",
|
"removeFile": "Faylni olib tashlash",
|
||||||
"certificateTitle": "Natijani sertifikat bilan qaytarish",
|
"certificateTitle": "Natijani sertifikat bilan qaytarish",
|
||||||
"certificateDescription": "Rasmiy sertifikat sizning orijinallik hisobotingizga ilova qilinadi.",
|
"certificateDescription": "Rasmiy sertifikat sizning originallik hisobotingizga ilova qilinadi.",
|
||||||
"submitting": "Yuborilmoqda…",
|
"submitting": "Yuborilmoqda…",
|
||||||
"submitButton": "Orijinallik tekshiruvi uchun yuborish",
|
"submitButton": "Originallik tekshiruvi uchun yuborish",
|
||||||
"dismiss": "Yopish",
|
"dismiss": "Yopish",
|
||||||
"service_price": "Xizmat narxi {PLAGIAT_SERVICE_FEE} so'm",
|
"service_price": "Xizmat narxi {PLAGIAT_SERVICE_FEE} so'm",
|
||||||
"sertificate_price": "Sertifikat narxi {SERTIFICATE_PRICE} so'm"
|
"sertificate_price": "Sertifikat narxi {SERTIFICATE_PRICE} so'm"
|
||||||
@@ -189,10 +189,10 @@
|
|||||||
"card2Title": "Nima uchun hujjatingizni tekshirish kerak?",
|
"card2Title": "Nima uchun hujjatingizni tekshirish kerak?",
|
||||||
"card2Desc": "Akademik halollikni ta'minlang, jarimalardan qoching va obro'ingizni saqlang. Bizning xizmatimiz kompleks plagiat aniqlashni taqdim etadi.",
|
"card2Desc": "Akademik halollikni ta'minlang, jarimalardan qoching va obro'ingizni saqlang. Bizning xizmatimiz kompleks plagiat aniqlashni taqdim etadi.",
|
||||||
"card3Title": "Siz nima olasiz",
|
"card3Title": "Siz nima olasiz",
|
||||||
"card3Desc": "Batafsil plagiat hisoboti, o'xshashlik foizi, topilgan manbalar va orijinallikning rasmiy sertifikati."
|
"card3Desc": "Batafsil plagiat hisoboti, o'xshashlik foizi, topilgan manbalar va originallikning rasmiy sertifikati."
|
||||||
},
|
},
|
||||||
"Ticker": {
|
"Ticker": {
|
||||||
"item1": "Orijinallik tasdiqlangan",
|
"item1": "Originallik tasdiqlangan",
|
||||||
"item2": "Akademik halollik",
|
"item2": "Akademik halollik",
|
||||||
"item3": "Ishonchli hisobotlar",
|
"item3": "Ishonchli hisobotlar",
|
||||||
"item4": "Chuqur tahlil",
|
"item4": "Chuqur tahlil",
|
||||||
|
|||||||
@@ -16,13 +16,13 @@ import { useEffect, useState } from 'react';
|
|||||||
|
|
||||||
function AuthButtons() {
|
function AuthButtons() {
|
||||||
const t = useTranslations('Navbar');
|
const t = useTranslations('Navbar');
|
||||||
|
const [token, setToken] = useState<string | null>(null);
|
||||||
const [localUser, setLocalUser] = useState<{
|
const [localUser, setLocalUser] = useState<{
|
||||||
id: number;
|
id: number;
|
||||||
name: string;
|
name: string;
|
||||||
surname: string;
|
surname: string;
|
||||||
} | null>(null);
|
} | null>(null);
|
||||||
const [open, setOpen] = useState(false);
|
const [open, setOpen] = useState(false);
|
||||||
|
|
||||||
const toggleLoginModal = useLoginModal((state) => state.toggleLoginModal);
|
const toggleLoginModal = useLoginModal((state) => state.toggleLoginModal);
|
||||||
const toggleRegisterModal = useRegisterModal(
|
const toggleRegisterModal = useRegisterModal(
|
||||||
(state) => state.toggleRegisterModal,
|
(state) => state.toggleRegisterModal,
|
||||||
@@ -31,13 +31,15 @@ function AuthButtons() {
|
|||||||
const clearUser = useUserPlagiatStore((state) => state.clearUser);
|
const clearUser = useUserPlagiatStore((state) => state.clearUser);
|
||||||
|
|
||||||
const clearTokens = () => {
|
const clearTokens = () => {
|
||||||
localStorage.removeItem('access');
|
localStorage.removeItem('access_token');
|
||||||
localStorage.removeItem('refresh');
|
localStorage.removeItem('refresh_token');
|
||||||
localStorage.removeItem('user');
|
localStorage.removeItem('user');
|
||||||
clearUser();
|
clearUser();
|
||||||
};
|
};
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
const token_data = localStorage.getItem('access_token');
|
||||||
|
setToken(token_data);
|
||||||
const data = localStorage.getItem('user');
|
const data = localStorage.getItem('user');
|
||||||
if (data) {
|
if (data) {
|
||||||
setLocalUser(JSON.parse(data));
|
setLocalUser(JSON.parse(data));
|
||||||
@@ -46,7 +48,7 @@ function AuthButtons() {
|
|||||||
}
|
}
|
||||||
}, [user]);
|
}, [user]);
|
||||||
|
|
||||||
if (localUser) {
|
if (localUser && token) {
|
||||||
return (
|
return (
|
||||||
<div className="flex flex-row max-sm:items-center max-sm:justify-around gap-3 items-center">
|
<div className="flex flex-row max-sm:items-center max-sm:justify-around gap-3 items-center">
|
||||||
<div className="sm:flex hidden">
|
<div className="sm:flex hidden">
|
||||||
|
|||||||
Reference in New Issue
Block a user