From 7009dcc006edec1f9df8e3549f441894a89bff3a Mon Sep 17 00:00:00 2001
From: manisha <manisha_kanyal.scsebtech@galgotiasuniversity.edu.in>
Date: Jul 28 2021 15:52:11 +0000
Subject: [PATCH 1/2]  This is a combination of 4 commits.


modified landing page

---

diff --git a/src/actions/reduxActions.js b/src/actions/reduxActions.js
index bd40230..1c96a21 100644
--- a/src/actions/reduxActions.js
+++ b/src/actions/reduxActions.js
@@ -80,3 +80,8 @@ export const updateWizardApiCallStatus = (status) => ({
   type: ActionTypes.UPDATE_WIZARD_API_CALL_STATUS,
   payload: status,
 })
+
+export const toggleLandingPageModal = (status) => ({
+  type: ActionTypes.TOGGLE_LANDING_PAGE_MODAL,
+  payload: status,
+})
diff --git a/src/constants/index.js b/src/constants/index.js
index f1b837e..7b60f04 100644
--- a/src/constants/index.js
+++ b/src/constants/index.js
@@ -5,4 +5,5 @@ export default {
   LOAD_WIZARD_DATA_RESP: "LOAD_WIZARD_DATA_RESP",
   UPDATE_LANDING_PAGE_API_CALL_STATUS: "UPDATE_LANDING_PAGE_API_CALL_STATUS",
   UPDATE_WIZARD_API_CALL_STATUS: "UPDATE_WIZARD_API_CALL_STATUS",
+  TOGGLE_LANDING_PAGE_MODAL: "TOGGLE_LANDING_PAGE_MODAL",
 }
diff --git a/src/index.css b/src/index.css
index 780fc07..44491a1 100644
--- a/src/index.css
+++ b/src/index.css
@@ -56,9 +56,15 @@ h1 {
 
 .padded {
   padding-top: 0.5em;
+  padding-bottom: 0.5em;
   font-weight: normal;
 }
 
+.pad {
+  margin-top: 1.8em;
+  margin-bottom: 0.4em;
+}
+
 .timeline {
   border-spacing: 0;
   border-collapse: collapse;
@@ -155,6 +161,12 @@ ol.steps > li {
   margin-bottom: 1.5em;
 }
 
+.minutes {
+  margin-left: 0.5em;
+  margin-bottom: 0.5em;
+  padding-left: 4px;
+}
+
 .date {
   width: 3.7em;
   margin-right: 1.5em;
diff --git a/src/landingpage/LandingPage.js b/src/landingpage/LandingPage.js
index f95ebed..d55e734 100644
--- a/src/landingpage/LandingPage.js
+++ b/src/landingpage/LandingPage.js
@@ -17,7 +17,7 @@ import Blockers from "./Blockers"
 import Minutes from "./Minutes"
 import * as R from "ramda"
 import { shallowEqual, useDispatch, useSelector } from "react-redux"
-import { loadData } from "../actions/reduxActions"
+import { loadData, toggleLandingPageModal } from "../actions/reduxActions"
 import Cookies from "universal-cookie"
 
 const LandingPage = () => {
@@ -40,11 +40,11 @@ const LandingPage = () => {
     stable: 0,
     config_mode: false,
     enabled_components: enabled_components,
-    showModal: false,
   })
 
   const selectAction = (state) => state.landing_page.api_call_status
   const api_call_status = useSelector(selectAction, shallowEqual)
+  const showModal = useSelector((state) => state.landing_page_controls.showModal, shallowEqual)
   const dispatch = useDispatch()
 
   const landingPageData = useSelector((state) => state.landing_page)
@@ -68,16 +68,13 @@ const LandingPage = () => {
   }
 
   const toggleModal = () => {
-    let modalState = !state.showModal
-    setState({
-      ...state,
-      showModal: modalState,
-    })
+    let modalState = !showModal
+    dispatch(toggleLandingPageModal(modalState))
   }
 
   const available_components_mapper = {
     events: <Events data={landingPageData.meetings} />,
-    blockers: <Blockers data={landingPageData.blockerbugs} release={state.devel} />,
+    blockers: <Blockers data={landingPageData.blockerbugs} release={landingPageData.devel} />,
     minutes: <Minutes data={landingPageData.last_qa_meeting} />,
   }
   let components = R.splitEvery(
@@ -87,7 +84,7 @@ const LandingPage = () => {
   components = components.map((row) => (
     <React.Fragment key={row}>
       {row.map((item) => (
-        <div className="padded col-md-6" key={item}>
+        <div className="pad col-md-6" key={item}>
           {available_components_mapper[item]}
         </div>
       ))}
@@ -110,11 +107,8 @@ const LandingPage = () => {
           <Container>
             <Row>
               {components}
-              <div className="padded col-md-12 text-right col-md-offset-2">
-                <Button className="mt" color="primary" onClick={toggleModal}>
-                  <i className="fas fa-cog"></i>
-                </Button>
-                <Modal isOpen={state.showModal} toggle={toggleModal}>
+              <div className="col-md-12 text-right">
+                <Modal isOpen={showModal} toggle={toggleModal}>
                   <ModalHeader>Visibility Configuration</ModalHeader>
                   <ModalBody>
                     {available_components.map((item) => (
@@ -128,7 +122,7 @@ const LandingPage = () => {
                               checked={state.enabled_components.includes(item)}
                               onChange={(e) => handleVisibilityChange(e, item)}
                             />{" "}
-                            <label className="custom-control-label" htmlFor={item}>
+                            <label className="custom-control-label clickable" htmlFor={item}>
                               {item === "events"
                                 ? "Meetings and testdays in the next 7 days"
                                 : item === "minutes"
@@ -149,17 +143,12 @@ const LandingPage = () => {
               </div>
             </Row>
             <Row className="d-flex justify-content-center padded">
-              <div className="col-md-12">
-                <h1 className="text-center">
-                  Have some spare time? Click on below button to contibute
-                </h1>
-              </div>
-              <div className="col-md-2 padded">
+              <div className="col-md-6 padded">
                 <Link
-                  className="btn btn-primary btn-block btn-wrap-text btn-lg active"
+                  className="pad btn btn-primary btn-block btn-wrap-text btn-lg active"
                   to="/wizard"
                   role="button">
-                  Explore <i className="fas fa-search"></i>
+                  Click here, and help us make Fedora better! <i className="fas fa-search"></i>
                 </Link>
               </div>
             </Row>
diff --git a/src/landingpage/Minutes.js b/src/landingpage/Minutes.js
index 297ba37..57d4249 100644
--- a/src/landingpage/Minutes.js
+++ b/src/landingpage/Minutes.js
@@ -1,14 +1,21 @@
 import React from "react"
 import { Card, CardBody } from "reactstrap"
-
 const Events = (props) => {
+  const old = props.data.date
+
+  let date = old.slice(0, 10)
+  let time = old.slice(11, 16)
+
+  const timing = time.replace(".", ":")
+  const dating = new Date(date).toDateString()
+
   return (
     <Card className="cards">
-      <CardBody>
+      <CardBody className="minutes">
         <h1 className="text-center padded">Fedora QA Meeting Minutes</h1>
-        <div className="events">
+        <div className="events minutes">
           <a target="_blank" href={props.data.link} rel="noopener noreferrer">
-            Latest minutes from {props.data.date}
+            Latest minutes from {dating} {timing}
           </a>
           <br />
           Visit{" "}
diff --git a/src/landingpage/Timeline.js b/src/landingpage/Timeline.js
index b68bc2b..0ebeb64 100644
--- a/src/landingpage/Timeline.js
+++ b/src/landingpage/Timeline.js
@@ -1,8 +1,12 @@
-import React from "react"
-import { Card, CardBody } from "reactstrap"
+import React, { useState } from "react"
+import { Card, CardBody, Tooltip } from "reactstrap"
 import SourceLink from "./SourceLink"
 
 const Timeline = (props) => {
+  const [tooltipOpen, setTooltipOpen] = useState(false)
+
+  const toggle = () => setTooltipOpen(!tooltipOpen)
+
   const get_title = (summary) => {
     summary = summary.toLowerCase()
     if (summary.includes("freeze"))
@@ -42,8 +46,18 @@ const Timeline = (props) => {
     <div>
       <Card>
         <CardBody>
-          <h1 className="text-center padded">
+          <h1 className="text-center padded" width="150">
             Current development schedule{" "}
+            <span href="#" id="TooltipExample">
+              <i className="fas fa-question-circle light"></i>
+            </span>
+            <Tooltip
+              placement="right"
+              isOpen={tooltipOpen}
+              target="TooltipExample"
+              toggle={toggle}>
+              This is a timeline of current Fedora release schedule
+            </Tooltip>{" "}
             <SourceLink href="https://fedorapeople.org/groups/schedule/" />
           </h1>
           <div className="table-responsive">
@@ -55,7 +69,6 @@ const Timeline = (props) => {
               </tbody>
             </table>
           </div>
-          <h6 className="text-center padded">This is about the development schedule</h6>
         </CardBody>
       </Card>
     </div>
diff --git a/src/landingpage/common/BugStats.js b/src/landingpage/common/BugStats.js
index 015de59..56e8291 100644
--- a/src/landingpage/common/BugStats.js
+++ b/src/landingpage/common/BugStats.js
@@ -5,12 +5,12 @@ const BugStats = (props) => {
   const { milestone, stats } = props
 
   return (
-    <div className="col-md-6">
-      <Table className="events" striped bordered>
+    <div className="col-md-6 bugscount">
+      <Table className="events">
         <thead>
           <tr>
             <td colSpan="2">
-              <b className="bugscount">{milestone}</b>
+              <b>{milestone}</b>
             </td>
           </tr>
         </thead>
@@ -19,19 +19,19 @@ const BugStats = (props) => {
             <>
               <tr>
                 <td>Proposed Blockers</td>
-                <td className="bugscount">{stats.blockers_proposed}</td>
+                <td>{stats.blockers_proposed}</td>
               </tr>
               <tr>
                 <td>Accepted Blockers</td>
-                <td className="bugscount">{stats.blockers}</td>
+                <td>{stats.blockers}</td>
               </tr>
               <tr>
                 <td>Proposed FEs</td>
-                <td className="bugscount">{stats.fe_proposed}</td>
+                <td>{stats.fe_proposed}</td>
               </tr>
               <tr>
                 <td>Accepted FEs</td>
-                <td className="bugscount">{stats.fe}</td>
+                <td>{stats.fe}</td>
               </tr>
             </>
           )}
diff --git a/src/layout/Masthead.js b/src/layout/Masthead.js
index 4fac37c..6b54173 100644
--- a/src/layout/Masthead.js
+++ b/src/layout/Masthead.js
@@ -4,7 +4,7 @@ import { Container, NavbarBrand, Navbar, Button } from "reactstrap"
 import { API_CALL_STATUS_VALUES } from "../constants/ProjectConstants"
 import { ROUTE } from "../constants/Routes"
 import logo from "./logo.png"
-import { loadData, loadWizardData } from "../actions/reduxActions"
+import { loadData, loadWizardData, toggleLandingPageModal } from "../actions/reduxActions"
 import { shallowEqual, useDispatch, useSelector } from "react-redux"
 
 const selectWizardFromStore = (state) => state.wizard.api_call_status
@@ -16,6 +16,7 @@ const Masthead = () => {
 
   const wizard_api_call_status = useSelector(selectWizardFromStore, shallowEqual)
   const landing_page_api_call_status = useSelector(selectLandingPageFromStore, shallowEqual)
+  const showModal = useSelector((state) => state.landing_page_controls.showModal, shallowEqual)
 
   const api_call_status = () => {
     if (ROUTE.LANDING_PAGE === location.pathname) {
@@ -42,6 +43,11 @@ const Masthead = () => {
     dispatch(retryFn())
   }
 
+  const toggleModal = () => {
+    let modalState = !showModal
+    dispatch(toggleLandingPageModal(modalState))
+  }
+
   return (
     <Navbar className="masthead">
       <Container>
@@ -80,6 +86,11 @@ const Masthead = () => {
               )}
             </>
           )}
+          {ROUTE.LANDING_PAGE === location.pathname && (
+            <Button color="primary" onClick={toggleModal}>
+              <i className="fas fa-cog"></i>
+            </Button>
+          )}
         </div>
       </Container>
     </Navbar>
diff --git a/src/reducers/index.js b/src/reducers/index.js
index 5551055..c1dad6b 100644
--- a/src/reducers/index.js
+++ b/src/reducers/index.js
@@ -18,6 +18,9 @@ const defaultState = {
     all_actions: [],
     api_call_status: null,
   },
+  landing_page_controls: {
+    showModal: false,
+  },
 }
 
 export default (state = defaultState, action) => {
@@ -30,7 +33,6 @@ export default (state = defaultState, action) => {
           ...action.payload,
         },
       }
-
     case ActionTypes.LOAD_WIZARD_DATA_RESP:
       return {
         ...state,
@@ -57,6 +59,13 @@ export default (state = defaultState, action) => {
           api_call_status: action.payload,
         },
       }
+    case ActionTypes.TOGGLE_LANDING_PAGE_MODAL:
+      return {
+        ...state,
+        landing_page_controls: {
+          showModal: action.payload,
+        },
+      }
     default:
       return {
         ...state,

From e914ca08c56d24a8f4eba8ec07ceb0a96aa8efab Mon Sep 17 00:00:00 2001
From: manisha <manisha_kanyal.scsebtech@galgotiasuniversity.edu.in>
Date: Jul 28 2021 17:00:20 +0000
Subject: [PATCH 2/2] solved conflicts


---

diff --git a/src/landingpage/Events.js b/src/landingpage/Events.js
index 0c5d3c1..4b3f87e 100644
--- a/src/landingpage/Events.js
+++ b/src/landingpage/Events.js
@@ -31,7 +31,9 @@ const Events = (props) => {
           Meetings and testdays in the next 7 days{" "}
           <SourceLink href="https://apps.fedoraproject.org/calendar/QA/" />
         </h1>
-        <div className="col-md-12 padded">{meetings}</div>
+        <Col md={12} className="padded">
+          {meetings}
+        </Col>
       </CardBody>
     </Card>
   )
diff --git a/src/landingpage/LandingPage.js b/src/landingpage/LandingPage.js
index d55e734..7f2b89f 100644
--- a/src/landingpage/LandingPage.js
+++ b/src/landingpage/LandingPage.js
@@ -84,9 +84,9 @@ const LandingPage = () => {
   components = components.map((row) => (
     <React.Fragment key={row}>
       {row.map((item) => (
-        <div className="pad col-md-6" key={item}>
+        <Col md={6} className="pad" key={item}>
           {available_components_mapper[item]}
-        </div>
+        </Col>
       ))}
     </React.Fragment>
   ))
@@ -98,16 +98,16 @@ const LandingPage = () => {
           <div className="bluebox">
             <Container>
               <Row>
-                <div className="col-md-12">
+                <Col md={12}>
                   <Timeline data={landingPageData.schedule} />
-                </div>
+                </Col>
               </Row>
             </Container>
           </div>
           <Container>
             <Row>
               {components}
-              <div className="col-md-12 text-right">
+              <Col md={{ size: 12, offset: 2 }} className="text-right">
                 <Modal isOpen={showModal} toggle={toggleModal}>
                   <ModalHeader>Visibility Configuration</ModalHeader>
                   <ModalBody>
@@ -140,17 +140,17 @@ const LandingPage = () => {
                     </Button>
                   </ModalFooter>
                 </Modal>
-              </div>
+              </Col>
             </Row>
             <Row className="d-flex justify-content-center padded">
-              <div className="col-md-6 padded">
+              <Col md={6} className="padded">
                 <Link
                   className="pad btn btn-primary btn-block btn-wrap-text btn-lg active"
                   to="/wizard"
                   role="button">
                   Click here, and help us make Fedora better! <i className="fas fa-search"></i>
                 </Link>
-              </div>
+              </Col>
             </Row>
           </Container>
         </div>
diff --git a/src/landingpage/common/BugStats.js b/src/landingpage/common/BugStats.js
index 56e8291..30aa810 100644
--- a/src/landingpage/common/BugStats.js
+++ b/src/landingpage/common/BugStats.js
@@ -1,12 +1,12 @@
 import React from "react"
-import { Table } from "reactstrap"
+import { Table, Col } from "reactstrap"
 
 const BugStats = (props) => {
   const { milestone, stats } = props
 
   return (
-    <div className="col-md-6 bugscount">
-      <Table className="events">
+    <Col md={6} className="bugscount">
+      <Table>
         <thead>
           <tr>
             <td colSpan="2">
@@ -37,7 +37,7 @@ const BugStats = (props) => {
           )}
         </tbody>
       </Table>
-    </div>
+    </Col>
   )
 }
 
diff --git a/src/wizard/components.js b/src/wizard/components.js
index 7e91f72..796886c 100644
--- a/src/wizard/components.js
+++ b/src/wizard/components.js
@@ -9,6 +9,7 @@ import {
   ModalBody,
   ModalFooter,
   Button,
+  Col,
 } from "reactstrap"
 import uniqueID from "../helpers/uniqueID"
 
@@ -19,10 +20,10 @@ const CollapsableCard = (props) => {
     <Card>
       <CardHeader>
         <Row>
-          <div className="col-sm-10">{title}</div>
-          <div className="col-sm-2">
+          <Col sm={10}>{title}</Col>
+          <Col sm={2}>
             <Toggler id={id} color={expand_class} text={expand_text} />
-          </div>
+          </Col>
         </Row>
       </CardHeader>
       <UncontrolledCollapse toggler={"#" + id}>

