Skip to content

Commit

Permalink
fix user reviews api call and update tutorial
Browse files Browse the repository at this point in the history
  • Loading branch information
romanbutora committed Aug 24, 2023
1 parent b45168c commit 4c751c0
Show file tree
Hide file tree
Showing 8 changed files with 58 additions and 40 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,21 +13,18 @@ import reviewsService from '../../api/reviews.service';
import myReviews from '../../_state/usersReviews';
import reviewsLoaded from '../../_state/reviewsLoaded';

interface Props {
userid: string,
}

// eslint-disable-next-line @typescript-eslint/no-unused-vars
const UserReviews : React.FC<Props> = ({ userid }) => {
const MyReviews = () => {
const auth = useRecoilValue(authAtom);
const navigate = useNavigate();
const { t } = useTranslation();
const [myReviewsList, setMyReviewsList] = useRecoilState(myReviews);
const [loaded, setReviewsLoaded] = useRecoilState(reviewsLoaded);
const userid = auth?.user?._id;

useEffect(() => {
// redirect to home if already logged in
if (loaded === false) {
if (loaded === false && userid !== undefined) {
reviewsService.userReviews(userid).then((res: any) => {
// const reviews = res.filter((el) => claimid === el?.claimId);
setMyReviewsList(res.data);
Expand Down Expand Up @@ -60,4 +57,4 @@ const UserReviews : React.FC<Props> = ({ userid }) => {
);
};

export default UserReviews;
export default MyReviews;
10 changes: 3 additions & 7 deletions src/components/ProfileSidebar/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,12 @@ import EditProfile from '../EditProfile';
import MyArticles from '../MyArticles';
import MyClaims from '../MyClaims';
import Scoreboard from '../Scoreboard';
import UserReviews from '../UserReviews';
import MyReviews from '../MyReviews';
import Invitation from '../Invitation';

const { Content } = Layout;

interface Props {
userid: string,
}

const ProfileSidebar: React.FC<Props> = ({ userid }) => {
const ProfileSidebar = () => {
const { t } = useTranslation();
const [isPortrait, setIsPortrait] = useState(
window.matchMedia('(orientation: portrait)').matches,
Expand Down Expand Up @@ -85,7 +81,7 @@ const ProfileSidebar: React.FC<Props> = ({ userid }) => {
<MyClaims />
</Tab.Pane>
<Tab.Pane eventKey="5th">
<UserReviews userid={userid} />
<MyReviews />
</Tab.Pane>
<Tab.Pane eventKey="6th">
<Invitation />
Expand Down
5 changes: 4 additions & 1 deletion src/layouts/landing-page/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,7 @@ const LadingPage: React.FC = () => {
<Col offset={0} span={14}>
<Title level={2}>{t('articles')}</Title>
<p>
<h6 style={{ marginRight: '1%', display: 'inline' }}> 1.) </h6>
{t('article_explain')}
</p>
</Col>
Expand All @@ -152,6 +153,7 @@ const LadingPage: React.FC = () => {
>
<Title level={2}>{t('claims')}</Title>
<p>
<h6 style={{ marginRight: '1%', display: 'inline' }}> 2.) </h6>
{t('claim_explain')}
</p>
</Col>
Expand Down Expand Up @@ -185,6 +187,7 @@ const LadingPage: React.FC = () => {
>
<Title level={2}>{t('reviews')}</Title>
<p>
<h6 style={{ marginRight: '1%', display: 'inline' }}> 3.) </h6>
{t('review_explain')}
</p>
</Col>
Expand Down Expand Up @@ -223,7 +226,7 @@ const LadingPage: React.FC = () => {
>
<Card.Meta
avatar={<Avatar src="https://joeschmoe.io/api/v1/random" />}
title="Bc. Roman Bútora"
title="Ing. Roman Bútora"
description="Frontend developer"
/>
</Card>
Expand Down
2 changes: 1 addition & 1 deletion src/layouts/profile/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ const Profile: React.FC = () => {

return (
<div>
<ProfileSidebar userid={auth?.user?._id} />
<ProfileSidebar />
</div>
);
};
Expand Down
30 changes: 26 additions & 4 deletions src/layouts/userProfile/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,14 @@ import { BiQuestionMark } from 'react-icons/bi';
import authAtom from '../../_state/auth';
import Claim from '../../components/claim';
import {
IArticle, IClaim, IProfile, IStats,
IArticle, IClaim, IProfile, IReview, IStats,
} from '../../common/types';
import claimsService from '../../api/claims.service';
import articlesService from '../../api/articles.service';
import Article from '../../components/article';
import userService from '../../api/users.service';
import UserReviews from '../../components/UserReviews';
import reviewsService from '../../api/reviews.service';
import UserReview from '../../components/UserReview';

const { Content } = Layout;

Expand All @@ -31,6 +32,7 @@ const UserProfile: React.FC = () => {
const { t } = useTranslation();
const [claimsList, setClaimsList] = useState([]);
const [articlesList, setArticlesList] = useState([]);
const [reviewsList, setReviewsList] = useState([]);
const [userProfile, setUserProfile] = useState<IProfile>();
const [userStats, setUserStats] = useState<IStats>();
const { userId } = useParams();
Expand All @@ -54,6 +56,9 @@ const UserProfile: React.FC = () => {
userService.getUserStatsProfile(userId).then((res: any) => {
setUserStats(res.data);
}).catch();
reviewsService.userReviews(userId).then((res: any) => {
setReviewsList(res.data);
}).catch();
}
}, [auth, navigate]);

Expand Down Expand Up @@ -184,11 +189,28 @@ const UserProfile: React.FC = () => {
</Tab>
<Tab eventKey="claims" title={t('claims')}>
{
claimsList?.sort((a: IClaim, b: IClaim) => ((a.createdAt < b.createdAt) ? 1 : -1)).map((obj: IClaim, index: number) => <div key={obj?._id} style={{ padding: '1%', borderRadius: '10px' }}><Claim claim={obj} isEditable={allowEdit} index={index} /></div>)
claimsList.length > 0
? claimsList?.sort((a: IClaim, b: IClaim) => ((a.createdAt < b.createdAt) ? 1 : -1)).map((obj: IClaim, index: number) => <div key={obj?._id} style={{ padding: '1%', borderRadius: '10px' }}><Claim claim={obj} isEditable={allowEdit} index={index} /></div>)
: (
<div className="emptyList">
{' '}
{t('no_claims_yet')}
{' '}
</div>
)
}
</Tab>
<Tab eventKey="reviews" title={t('reviews')}>
<UserReviews userid={auth?.user?._id} />
{
reviewsList.length > 0 ? (
reviewsList?.map((obj : IReview, index: number) => (
<UserReview review={obj} indexReview={index} />
))) : (
<div className="emptyList">
{t('no_reviews_yet')}
</div>
)
}
</Tab>
</Tabs>
</Col>
Expand Down
24 changes: 12 additions & 12 deletions src/locales/cz/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,12 @@
"submit": "Potvrdit",
"review_text": "Hodnocení",
"review_links": "Linky",
"review_overall_trust": "Celková duvera",
"true": "Pravdivý",
"partialy_true":"částečně pravdivé",
"inconclusive":"Nepřesvědčivý",
"review_overall_trust": "Celková důvera",
"true": "Pravdivé",
"partialy_true":"Částečně pravdivé",
"inconclusive":"Nepřesvědčivé",
"non_verifiable":"Neověřitelné",
"false":"Nepravdivý",
"false":"Nepravdivé",
"positive": "Pozitivní",
"negative": "Negativní",
"not_enough_info": "Neodostatek informací",
Expand All @@ -46,11 +46,11 @@
"claim_add_explain": "Tvrzení - věta k ověření",
"unsave": "Odstránit",
"save": "Uložit",
"article_explain": "Článek je jakýkoli text nalezený na webu. Vyplňte formulář a váš článek bude uložen a zobrazen na stránce 'Články'. Článek můžete upravovat i po odeslání v sekci svého profilu.",
"claim_explain": "Tvrzení je část článku, u které si nejste jisti, zda je pravdivá. Tvrzení můžete přidat hned po odeslání článku. Tvrzení můžete přidávat také k článkům přidaným jinými uživateli. Stačí kliknout na 'Články', najít článek a kliknout na jeho název. Zobrazí se celý článek se všemi tvrzeními, která jsou k němu přiřazena. Klikněte na 'Přidat claim' a přidejte claim, který vás zajímá.",
"review_explain": "Hodnocení je spojený s konkrétním tvrzením. Jako uživatel můžete přidat pouze jedno hodnocení k jednému tvrzení. V sekci 'tvrzení' můžete vyhledat libovolné tvrzení a odeslat svůj názor. Váš názor by měl být založen na údajích, proto nezapomeňte do formuláře přidat odkazy.",
"article_explain": "Chcete-li přidat tvrzení, které vás zajímá, přidejte článek, ze kterého tvrzení pochází. Přejděte do sekce Články -> Přidat a přidejte článek.",
"claim_explain": "Po zveřejnění článku přidejte tvrzení, který vás zajímá. Můžete přidat více tvrzení a můžete také přidat tvrzení k článkům jiných uživatelů.",
"review_explain": "Hodnocení je váš názor spojený s konkrétním tvrzením. Jako uživatel můžete přidat pouze jedno hodnocení k libovolnému tvrzení. Nezapomeňte, že váš názor by měl být založen na faktech, proto nezapomeňte přidat zdroje.",
"mission": "Naše mise",
"mission_explain": "My, tvůrci Fact-Check, věříme, že rozhodnutí, která děláme, by měla být činěna nezávisle, bez příklonu k určité politické straně, zemi, náboženství ... a proto jsme vytvořili tento web - abychom shromažďovali informace od lidí a nechali rozhodnout náš vlastní program s umělou inteligencí. Náš program využívá pokročilé technologie k získávání dat z internetu a pomáhá vám činit nestranná rozhodnutí. V současné době se snažíme shromažďovat data od uživatelů a tato data budou použita na učení naší umělé inteligence.",
"mission_explain": "V dnešním světě je internet hlavním zdrojem informací pro lidi na celém světě. Při takovém množství dostupných informací je často obtížné rozhodnout, co je pravda a co ne. Proto jsme vytvořili platformu Fact Check, která umožňuje komukoli sdílet tvrzení, o jejichž pravdivosti pochybuje, a nechat jiné lidi vyjádřit svůj názor. Naše platforma je jednoduchá na používání. Zveřejněte tvrzení a naše komunita ověřovatelů faktů ho posoudí a poskytne důkazy, které ho podpoří nebo vyvrátí. Ohodnoťte tvrzení ostatních lidí a pomozte jim odhalit pravdu. Fact Check je mocný nástroj, který Vám pomůže zjistit fakta o informacích, na kterých Vám záleží. Přidejte se k nám ještě dnes a pomozte nám budovat pravdivější svět.",
"our_team": "Náš tím",
"lets_make_world_better": "UDĚLEJME SVĚT LEPŠÍM MÍSTEM",
"lets_make_additional": "S VAŠÍ POMOCÍ SE MŮŽEME POKUSIT ZABRÁNIT ŠÍŘENÍ DEZINFORMACÍ.",
Expand All @@ -76,7 +76,7 @@
"reviews_miss_key_info": "Chybí info v tvrzení",
"already_registered_question": "Jste zaregistrovaní? Přihlašte se",
"you_will_be_redirected" : "Budete přesměrováni na: ",
"no_claims_yet" : "Nepřidali ste dosud žádné tvrzení",
"no_claims_yet" : "Nepřidali jste dosud žádné tvrzení",
"no_articles_yet" : "Nepřidali ste dosud žádný článek",
"no_reviews_yet": "Dosud žádné hodnocení",
"tip_webscrape" : "Pro automatické stáhnutí textu z url můžete využít tlačítko",
Expand All @@ -91,12 +91,12 @@
"gained_30": "Získali jste 30 experience!",
"gained_8": "Získali jste 8 experience!",
"search_ended": "Konec vyhledávání",
"scoreboard": "Štatistiky",
"scoreboard": "Statistiky",
"hoaxkillers": "Nejlepší oveřovatelé faktů",
"articles_score": "Skóre článku",
"claims_score": "Skóre tvrzení",
"reviews_score": "Skóre hodnocení",
"name": "Méno",
"name": "Jméno",
"article_edited": "Článek úspěšně upraven",
"claim_edited": "Tvrzení úspěšně upraveno",
"review_edited": "Hodnocení úspěšně upraveno",
Expand Down
8 changes: 4 additions & 4 deletions src/locales/en/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,11 @@
"claim_add_explain": "Claim - A sentence from the article to be fact-checked.",
"unsave": "Unsave",
"save": "Save",
"article_explain": "Article is any text you found on web. Fill the form and your article will be saved and displayed on 'Articles' page. You can edit the article even after submitting in your profile section.",
"claim_explain": "Claim is a part of article, which you are not sure whether it is true. You can add claim right after submitting your article. You can also add claims to articles added by other users. Just click on 'Articles', find article and click on the article title. You will see the whole article with all claims associated to the article. Click on 'Add claim' and add claim that you are curious about.",
"review_explain": "Review is a review associated to particular claim. As a user, you can only add one review to one claim. You can look for any claim in 'Claims' section and submit your opinion. Your opinion should be based on data, so do not forget to add links in form.",
"article_explain": "If you want to add a claim that you are curious about, you have to add the article containing the claim. Go to Articles -> Add and add an article.",
"claim_explain": "After submitting an article, add the claim that you are interested in. You can add multiple claims to an article and you can add claims to other people's articles.",
"review_explain": "Review is your opinion associated to particular claim. As a user, you can only add one review to any claim. Don't forget - your opinion should be based on data, so do not forget to add sources.",
"mission": "Our mission",
"mission_explain": "We - creators of Fact-Check, believe that decisions we make should be made independently, without leaning to any particular political party, country, religion, etc. That is why we created this web - to gather information from people and let our custom AI program decide. Our program uses advanced technologies to extract data from the internet and help you make unbiased decisions. We are currently trying to gather data from users and this data will be used in our AI.",
"mission_explain": "In today's world, the internet is the primary source of information for people all over the globe. However, with so much information available, it can be difficult to decide what is true and what is false. That's why we created Fact Check, a platform that allows anyone to share claim which veracity they doubt and let other people fact-check them. Our platform is simple to use. You can submit a claim, and our community of fact-checkers will review it and provide evidence to support or refute it. You can also review other people's claims and help to keep the platform accurate and reliable. Fact Check is a powerful tool that can help you make informed decisions about the information you consume. Join us today and help us build a more truthful world.",
"our_team": "Our team",
"lets_make_world_better": "LET'S MAKE THE WORLD A BETTER PLACE",
"lets_make_additional": "WITH YOUR HELP, WE CAN TRY TO AVOID THE SPREAD OF MISINFORMATION.",
Expand Down
8 changes: 4 additions & 4 deletions src/locales/sk/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,11 @@
"claim_add_explain": "Tvrdenie - veta na overenie",
"unsave": "Odstrániť",
"save": "Uložiť",
"article_explain": "Článok je akýkoľvek text nájdený na webe. Vyplňte formulár a váš článok sa uloží a zobrazí na stránke 'Články'. Článok môžete upraviť aj po jeho odoslaní v časti svojho profilu.",
"claim_explain": "Tvrdenie je časť článku, o ktorej si nie ste istí, či je pravdivá. Tvrdenie môžete pridať hneď po odoslaní článku. Tvrdenia môžete pridávať aj do článkov pridaných inými používateľmi. Stačí kliknúť na položku Články, nájsť článok a kliknúť na jeho názov. Zobrazí sa celý článok so všetkými tvrdeniami, ktoré sú s ním spojené. Kliknite na položku 'Pridať tvrdenie' a pridajte tvrdenie, o ktoré máte záujem.",
"review_explain": "Hodnotenie je spojené s konkrétnym výrokom. Ako používateľ môžete k jednému výpisu pridať len jedno hodnotenie. V časti 'výroky' môžete vyhľadať ľubovoľný výrok a odoslať svoje hodnotenie. Váš názor by mal byť založený na údajoch, preto nezabudnite do formulára pridať odkazy.",
"article_explain": "Ak chcete pridať tvrdenie, ktoré vás zaujíma, je potrebné pridať článok, z ktorého pochádza toto tvrdenie. Prejdite na položku Články -> Pridať a pridajte článok.",
"claim_explain": "Po zverejnení článku pridajte tvrdenie, ktoré vás zaujíma. Môžete pridať viacero tvrdení a tvrdenia môžete pridávať aj k článkom iných používateľov.",
"review_explain": "Hodnotenie je Váš názor spojený s konkrétnym tvrdením. Ako používateľ môžete pridať iba jedno hodnotenie k ľubovoľnému tvrdeniu. Nezabudnite, že váš názor by mal byť založený na faktoch, preto nezabudnite pridať zdroje.",
"mission": "Naša misia",
"mission_explain": "My, tvorcovia Fact-Check, veríme, že rozhodnutia, ktoré robíme, by sme mali robiť nezávisle, bez príslušnosti k určitej politickej strane, krajine, náboženstvu... a preto sme vytvorili túto webovú stránku - aby sme zhromažďovali informácie od ľudí a nechali rozhodovať náš vlastný program s umelou inteligenciou. Náš program využíva pokročilú technológiu na získavanie údajov z internetu a pomáha vám robiť nestranné rozhodnutia. V súčasnosti zbierame údaje od používateľov a tieto údaje sa použijú na učenie našej umelej inteligencie.",
"mission_explain": "V dnešnom svete je internet hlavným zdrojom informácií pre ľudí na celom svete. Pri takom množstve dostupných informácií je často ťažké rozhodnúť, čo je pravda a čo nie. Preto sme vytvorili platformu Fact Check, ktorá umožňuje komukoľvek zdieľať tvrdenia, o ktorých pravdivosti pochybuje, a nechať ostatných ľudí, aby ich overili. Naša platforma je jednoduchá na použitie. Pridajte tvrdenie a naša komunita overovateľov faktov ho preskúma a poskytne dôkazy na jeho podporu alebo vyvrátenie. Hodnoťte tvrdenia iných ľudí a pomôžte im odhaliiť pravdu. Fact Check je účinný nástroj, ktorý Vám pomôže dozvedieť sa fakty o informáciách, ktoré Vás zaujímajú. Pridajte sa k nám ešte dnes a pomôžte nám budovať pravdivejší svet.",
"our_team": "Náš tím",
"lets_make_world_better": "SPRAVME SVET LEPŠÍM MIESTOM",
"lets_make_additional": "S VAŠOU POMOCOU SA MOŽEME POKÚSIŤ ZABRÁNIŤ ŠÍŘENIU DEZINFORMÁCIÍ.",
Expand Down

0 comments on commit 4c751c0

Please sign in to comment.