From b10aba6f47c22dad6ccedfce9175c2ad71dcd269 Mon Sep 17 00:00:00 2001
From: Daniel Pettersson <danpe975@student.liu.se>
Date: Thu, 2 May 2024 10:44:43 +0200
Subject: [PATCH] SearchComponent has been updated now displaying varieties of
 options depending on initial choice

---
 frontend/src/Components/Navbar/Navbar.js    |  8 ++-
 frontend/src/Css/Navbar.css                 | 13 +++--
 frontend/src/Css/Visualiser.css             |  2 +-
 frontend/src/Pages/Dashboard/Dashboard.jsx  | 58 ++++++++++++++-------
 frontend/src/Pages/Dashboard/Visualiser.jsx |  4 +-
 5 files changed, 58 insertions(+), 27 deletions(-)

diff --git a/frontend/src/Components/Navbar/Navbar.js b/frontend/src/Components/Navbar/Navbar.js
index ffc4611..cd506b3 100644
--- a/frontend/src/Components/Navbar/Navbar.js
+++ b/frontend/src/Components/Navbar/Navbar.js
@@ -1,11 +1,17 @@
 import React from 'react';
 import '../../Css/Navbar.css'
 
-function TopNavBar() {
+function TopNavBar({toggleDisplay, displayMap}) {
   return (
     <div className="top-nav">
     
        <button className='sign_out_button'>Sign Out</button>
+    
+          {/* Toggle button to switch between Map and Visualiser */}
+          <button className='sign_out_button' onClick={toggleDisplay}>
+            {displayMap ? 'Switch to Visualiser' : 'Switch to Map'}
+          </button>
+
       <h1 className='h1'>DASHBOARD</h1>
     </div>
   );
diff --git a/frontend/src/Css/Navbar.css b/frontend/src/Css/Navbar.css
index 9637c10..5330792 100644
--- a/frontend/src/Css/Navbar.css
+++ b/frontend/src/Css/Navbar.css
@@ -6,9 +6,14 @@
     border-style: solid;
     box-shadow: 0 0 10px rgba(0, 0, 0, .2);   
 }
+.sign_out_button{
+    margin: 5px;
+    height: 50px;
+
+}
 .h1{
-    margin-left: auto;
-    margin-right: auto;
-    margin-top: auto;
-    margin-bottom: auto;
+    top: 4%;
+    left: 40%;
+    right: 50%;
+    position:absolute;
 }
\ No newline at end of file
diff --git a/frontend/src/Css/Visualiser.css b/frontend/src/Css/Visualiser.css
index 5532c0f..03089fc 100644
--- a/frontend/src/Css/Visualiser.css
+++ b/frontend/src/Css/Visualiser.css
@@ -12,6 +12,6 @@
 
 }
 
-.h1{
+.h2{
 text-align: center;
 }
\ No newline at end of file
diff --git a/frontend/src/Pages/Dashboard/Dashboard.jsx b/frontend/src/Pages/Dashboard/Dashboard.jsx
index 1d4aa10..68f05c8 100644
--- a/frontend/src/Pages/Dashboard/Dashboard.jsx
+++ b/frontend/src/Pages/Dashboard/Dashboard.jsx
@@ -1,46 +1,66 @@
-import '../../Css/Dashboard.css'
-import React, { useState } from 'react'
+import '../../Css/Dashboard.css';
+import React, { useState } from 'react';
 import TopNavBar from '../../Components/Navbar/Navbar';
 import Map from './Map';
 import Visualiser from './Visualiser';
 import { SearchComponent } from '../../Components/Search/SearchComponent';
 
-
 export const Dashboard = () => {
   const [data, setData] = useState({ label: "", id: "" });
   const [region, setRegion] = useState({});
-
-
+  const [displayMap, setDisplayMap] = useState(true); // State variable to track the currently displayed component
 
   const handlerFunction = (Region_data) => {
-    setData(Region_data)
-  }
+    setData(Region_data);
+  };
+
   const changeRegion = (regionName) => {
     // Update the region state to trigger re-render and change the color of the specified region's path
     setRegion(regionName);
     handlerFunction(data);
+  };
 
-
+  const toggleDisplay = () => {
+    setDisplayMap(!displayMap); // Toggle the displayMap state
   };
+
   return (
     <div className='dashboard'>
-      <TopNavBar />
+      <TopNavBar toggleDisplay = {toggleDisplay} displayMap = {displayMap} />
+     
       <div className='container'>
 
-
-
+    
         <div className='search_container'>
           <SearchComponent data={data.label} changeRegion={changeRegion} />
-
         </div>
         <div className='map_container' id="d3_map">
-          <Map handlerFunction={handlerFunction} selectedRegion={region} />
-        </div>
-        <div className='table_container'>
-          <Visualiser Regiondata={data} />
-        </div>
+              <Map handlerFunction={handlerFunction} selectedRegion={region} />
+            </div>
+            <div className='table_container'>
+              <Visualiser Regiondata={data} />
+            </div>
+        
       </div>
     </div>
-  )
-}
+  );
+};
+
+
+/*
+<div className='content_container'>
+          {/* Conditional rendering based on the displayMap state */
+        /*
+        }
+          {displayMap ? (
+            <div className='map_container' id="d3_map">
+              <Map handlerFunction={handlerFunction} selectedRegion={region} />
+            </div>
+          ) : (
+            <div className='table_container'>
+              <Visualiser Regiondata={data} />
+            </div>
+          )}
+        </div>
 
+*/
\ No newline at end of file
diff --git a/frontend/src/Pages/Dashboard/Visualiser.jsx b/frontend/src/Pages/Dashboard/Visualiser.jsx
index 0d93542..6b9e293 100644
--- a/frontend/src/Pages/Dashboard/Visualiser.jsx
+++ b/frontend/src/Pages/Dashboard/Visualiser.jsx
@@ -9,9 +9,9 @@ const Visualiser = ({Regiondata}) => {
 
   return (
     <div >
-    <h1 className='h1'>
+    <h2 >
         Visualiser
-    </h1>
+    </h2>
     <h2> LÄN: 
     {Regiondata.label}
 
-- 
GitLab