From 1e3963f6feb3f4b3cb2549ac852fb6d04775b577 Mon Sep 17 00:00:00 2001
From: Thor-Herman Van Eggelen <theggele@stud.ntnu.no>
Date: Tue, 22 Sep 2020 13:41:03 +0200
Subject: [PATCH] Add setPage to context #8

Add a method to directly set the page
---
 frontend/src/Components/ArtPage.tsx        |   2 +-
 frontend/src/Components/FavoriteButton.tsx |  36 ++++++++-
 frontend/src/Components/FavoriteLink.tsx   |  15 ++++
 frontend/src/Components/LandingPage.tsx    |  81 +++++++++++++--------
 frontend/src/Components/MainPage.tsx       |  16 +++-
 frontend/src/Components/NavButton.tsx      |   5 +-
 frontend/src/Media/favorite-active.png     | Bin 0 -> 20023 bytes
 frontend/src/Media/favorite.png            | Bin 0 -> 19865 bytes
 frontend/src/Style/FavoriteLink.css        |   0
 frontend/src/Style/LandingPage.css         |   6 ++
 10 files changed, 120 insertions(+), 41 deletions(-)
 create mode 100644 frontend/src/Components/FavoriteLink.tsx
 create mode 100644 frontend/src/Media/favorite-active.png
 create mode 100644 frontend/src/Media/favorite.png
 create mode 100644 frontend/src/Style/FavoriteLink.css

diff --git a/frontend/src/Components/ArtPage.tsx b/frontend/src/Components/ArtPage.tsx
index 1402254..464e4cd 100644
--- a/frontend/src/Components/ArtPage.tsx
+++ b/frontend/src/Components/ArtPage.tsx
@@ -67,7 +67,7 @@ class ArtPage extends React.Component<props, state> {
     render() {
         return (
             <div className={`artpage background-${this.state.options.background} font-${this.state.options.font}`}>
-                <FavoriteButton/>
+                <FavoriteButton pageId={this.props.pageId}/>
                 <OptionsContext.Provider value={this.state}>
                     <DropDown/>
                 </OptionsContext.Provider>
diff --git a/frontend/src/Components/FavoriteButton.tsx b/frontend/src/Components/FavoriteButton.tsx
index 9781ab8..8b61b7f 100644
--- a/frontend/src/Components/FavoriteButton.tsx
+++ b/frontend/src/Components/FavoriteButton.tsx
@@ -1,7 +1,37 @@
-import React from 'react';
+import React, {useEffect, useState} from 'react';
+import active from '../Media/favorite-active.png';
+import inactive from '../Media/favorite.png';
 
-const FavoriteButton = () => {
-  return <div>FavoriteButton</div>
+type props = {
+    pageId: number;
+}
+
+const FavoriteButton = (props: props) => {
+    const localStorage = window.localStorage; // Retrieve the local storage
+    const pageId = props.pageId.toString(); // Needs to be string for local storage
+    // Retrieve whether or not the current page is a favorite stored locally
+    const initVal = localStorage.getItem(pageId) === 'true';
+    const [isFavorite, setIsFavorite] = useState(initVal);
+
+    useEffect(() => { // Runs whenever we change page. Check if current page is favorite
+      const favorite = localStorage.getItem(pageId) === 'true';
+      setIsFavorite(favorite); // Update the displayed favorite
+    }, [pageId]);
+
+    const toggleFavorite = () => { // Whenever user clicks the button
+        const newValue = (!isFavorite).toString(); // Invert the current choice
+        localStorage.setItem(pageId, newValue); // Update the storage
+        setIsFavorite(newValue === 'true'); // Update the state
+    };
+
+    return (<div className={"favorite-button"}>
+        <img
+            src={isFavorite ? active : inactive}
+            alt={"favorite-active"}
+            style={{width: '4rem', height: '4rem'}}
+            onClick={toggleFavorite}
+        />
+    </div>)
 };
 
 export default FavoriteButton;
\ No newline at end of file
diff --git a/frontend/src/Components/FavoriteLink.tsx b/frontend/src/Components/FavoriteLink.tsx
new file mode 100644
index 0000000..89ea88a
--- /dev/null
+++ b/frontend/src/Components/FavoriteLink.tsx
@@ -0,0 +1,15 @@
+import React, {useContext} from "react";
+import {PageContext} from "./MainPage";
+
+type props = {
+    id: number,
+};
+
+const FavoriteLink = (props: props) => {
+    const context = useContext(PageContext);
+    return (<li className={"fav-link"}>
+        <p onClick={() => context.setPage(props.id)}>{props.id}</p>
+    </li>)
+};
+
+export default FavoriteLink;
\ No newline at end of file
diff --git a/frontend/src/Components/LandingPage.tsx b/frontend/src/Components/LandingPage.tsx
index d78f427..9f98f55 100644
--- a/frontend/src/Components/LandingPage.tsx
+++ b/frontend/src/Components/LandingPage.tsx
@@ -1,46 +1,63 @@
-import React from 'react';
+import React, {ReactComponentElement, ReactElement} from 'react';
 import NavButton from './NavButton';
 import "../Style/LandingPage.css"
+import FavoriteLink from "./FavoriteLink";
 
 type props = { // Typescript definitions for the arguments received via props
 }
 
 type state = { // Typescript definitions for the state variables of the class
-
+    favorites: Array<ReactElement>;
 }
 
 class LandingPage extends React.Component<props, state> {
 
-  constructor(props: props) {
-    super(props); // Allows access to props in other functions
-  }
-
-  render() {
-    return (
-      <div className={'landing-page'}>
-        <h1 className={'title'}> Welcome to the gallery!</h1>
-
-        <div className={'welcome-svg'}>
-          <svg className={"SVG"} xmlns="http://www.w3.org/2000/svg" height="400" width="400">
-            <polygon points="325,250 150,325 75,250 " fill="blue" fill-opacity="0.5"></polygon>
-            <polygon points="150,325 325,150 75,150 " fill="red" fill-opacity="0.5"></polygon>
-            <polygon points="325,250 250,75 75,150 " fill="green" fill-opacity="0.5"></polygon>
-            <polygon points="150,325 325,250 75,250 " fill="pink" fill-opacity="0.5"></polygon>
-            <polygon points="75,150 250,325 150,325 " fill="yellow" fill-opacity="0.5"></polygon>
-            <polygon points="150,75 75,250 250,325 " fill="orange" fill-opacity="0.5"></polygon>
-          </svg>
-        </div>
-        <p className={'welcome-p'}>Welcome to this interactive gallery! In here you will find unique art pieces, consisting of a quote and SVG. If you turn up your volume you may hear some wonderful tunes to accompony you during the viewing. You can change settings to get your desired look! You can also save these settings for future appretiation of the art pieces.
-        </p>
-        <div className={'navbutton left'}>
-          <NavButton direction={"left"} />
-        </div>
-        <div className={'navbutton right'}>
-          <NavButton direction={"right"} />
-        </div>
-      </div>
-    );
-  }
+    constructor(props: props) {
+        super(props); // Allows access to props in other functions
+        this.state = {favorites: []}
+    }
+
+    componentDidMount(): void {
+        const favs = [];
+        for (let i = 1; i < 12; i++) {
+            const favorite = window.localStorage.getItem(i.toString()) === 'true';
+            if (favorite) favs.push(<FavoriteLink id={i}/>);
+        }
+        this.setState({favorites: favs})
+    }
+
+    render() {
+        return (
+            <div className={'landing-page'}>
+                <h1 className={'title'}> Welcome to the gallery!</h1>
+                <div className={'welcome-svg'}>
+                    <svg className={"SVG"} xmlns="http://www.w3.org/2000/svg" height="400" width="400">
+                        <polygon points="325,250 150,325 75,250 " fill="blue" fill-opacity="0.5"></polygon>
+                        <polygon points="150,325 325,150 75,150 " fill="red" fill-opacity="0.5"></polygon>
+                        <polygon points="325,250 250,75 75,150 " fill="green" fill-opacity="0.5"></polygon>
+                        <polygon points="150,325 325,250 75,250 " fill="pink" fill-opacity="0.5"></polygon>
+                        <polygon points="75,150 250,325 150,325 " fill="yellow" fill-opacity="0.5"></polygon>
+                        <polygon points="150,75 75,250 250,325 " fill="orange" fill-opacity="0.5"></polygon>
+                    </svg>
+                </div>
+                <p className={'welcome-p'}>Welcome to this interactive gallery! In here you will find unique art pieces,
+                    consisting of a quote and SVG. If you turn up your volume you may hear some wonderful tunes to
+                    accompony you during the viewing. You can change settings to get your desired look! You can also
+                    save these settings for future appretiation of the art pieces.
+                </p>
+                <div className={'favorites'}>
+                    <p>Favorites</p>
+                    <ul>{this.state.favorites}</ul>
+                </div>
+                <div className={'navbutton left'}>
+                    <NavButton direction={"left"}/>
+                </div>
+                <div className={'navbutton right'}>
+                    <NavButton direction={"right"}/>
+                </div>
+            </div>
+        );
+    }
 }
 
 export default LandingPage;
diff --git a/frontend/src/Components/MainPage.tsx b/frontend/src/Components/MainPage.tsx
index e0c3e1e..49a3d2d 100644
--- a/frontend/src/Components/MainPage.tsx
+++ b/frontend/src/Components/MainPage.tsx
@@ -11,7 +11,10 @@ type state = {
     totalPages: number
 }
 
-export const PageContext = React.createContext((arg0: boolean) => {
+export const PageContext = React.createContext({
+    changePage: (arg0: boolean) => {
+    }, setPage: (arg0: number) => {
+    }
 });
 
 class MainPage extends React.Component<props, state> {
@@ -19,7 +22,7 @@ class MainPage extends React.Component<props, state> {
     state = {currentPage: 1, totalPages: 11}; // Index of which page to render. 0 is the landing page
 
     determineRender() { // Decides what page will be rendered
-        return this.state.currentPage == 0 ? <LandingPage /> :
+        return this.state.currentPage == 0 ? <LandingPage/> :
             <ArtPage pageId={this.state.currentPage}/>;
     }
 
@@ -31,6 +34,10 @@ class MainPage extends React.Component<props, state> {
             this.setState({currentPage: newPage % this.state.totalPages}); // Go to the new page or loop around if you've hit last page
     };
 
+    setPage = (pageId: number) => {
+        this.setState({currentPage: pageId});
+    };
+
     render() {
         return (
             <div className={'main-page'}>
@@ -38,7 +45,10 @@ class MainPage extends React.Component<props, state> {
                     Header
                 </div>
                 <div className={'body'}>
-                    <PageContext.Provider value={this.changePage}>
+                    <PageContext.Provider value={{
+                        changePage: this.changePage,
+                        setPage: this.setPage,
+                    }}>
                         {this.determineRender()}
                     </PageContext.Provider>
                 </div>
diff --git a/frontend/src/Components/NavButton.tsx b/frontend/src/Components/NavButton.tsx
index 49f1456..3e7ce43 100644
--- a/frontend/src/Components/NavButton.tsx
+++ b/frontend/src/Components/NavButton.tsx
@@ -7,11 +7,12 @@ type props = {
 }
 
 const NavButton = (props: props) => {
-  const changePage = useContext(PageContext);
+  const context = useContext(PageContext);
+  console.log(context);
 
   const onClick = () => {
     const increment: boolean = props.direction == "right";
-    changePage(increment);
+    context.changePage(increment);
   };
 
   return (
diff --git a/frontend/src/Media/favorite-active.png b/frontend/src/Media/favorite-active.png
new file mode 100644
index 0000000000000000000000000000000000000000..1d1f0bbb7a43e1985a963298ba6437afe672aafd
GIT binary patch
literal 20023
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
X_cZe4^v<1MOS*2E+`ds`>>m3c?}|T8

literal 0
HcmV?d00001

diff --git a/frontend/src/Media/favorite.png b/frontend/src/Media/favorite.png
new file mode 100644
index 0000000000000000000000000000000000000000..146ccb11107c11d4cc2defd5034964ecbd9f6193
GIT binary patch
literal 19865
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
Q{`(2b&eqw6Vtp&^KMWcdq5uE@

literal 0
HcmV?d00001

diff --git a/frontend/src/Style/FavoriteLink.css b/frontend/src/Style/FavoriteLink.css
new file mode 100644
index 0000000..e69de29
diff --git a/frontend/src/Style/LandingPage.css b/frontend/src/Style/LandingPage.css
index 01757af..dc29b44 100644
--- a/frontend/src/Style/LandingPage.css
+++ b/frontend/src/Style/LandingPage.css
@@ -21,6 +21,12 @@
     place-self: center; 
 }
 
+.favorites {
+    grid-area: welcome-p;
+    padding-top: 7rem;
+    padding-left: 3rem;
+}
+
 .welcome-p { 
     grid-area: welcome-p;
     text-align: left;
-- 
GitLab