Skip to content
Snippets Groups Projects
SDCKISResults.js 2.52 KiB
Newer Older
Klaas Kliffen's avatar
Klaas Kliffen committed
import React, { useContext } from "react";
import { Table, Alert, Form, Button } from "react-bootstrap";
import { QueryContext } from "../../../contexts/QueryContext";
import LoadingSpinner from "../../LoadingSpinner";
import Paginate from "../../Paginate";
import AddToBasket from "../../basket/AddToBasketCheckBox";
import Preview from "../../query/Preview";

export default function SDCKISResults({ catalog }) {
  const context = useContext(QueryContext);
  const { queryMap, page, setPage } = context;
  const regex = /(<([^>]+)>)/ig;

  if (!context.queryMap) return null;

  if (context.queryMap.get(catalog).status === "fetched") {

    if (context.queryMap.get(catalog).results.results.length === 0)
      return <Alert variant="warning">No matching results found!  Data Availability: GRIS@GREGOR (2014 - 2021), LARS@VTT (2016 - 2018), ChroTel (2012 - 2020)
             </Alert>;
    else if (catalog === "sdc_kis") {

    const numPages = queryMap.get(catalog).results.pages;
    const sdckisResults = queryMap.get("sdc_kis").results.results.map((hits) => (
      <>
       <tr>
		<td>{hits.date}</td>
		<td>{hits.time_begin}</td>
		<td>{hits.time_end}</td>
		<td>{hits.target}</td>
		<td>{hits.wave_min} - {hits.wave_max}</td>
		<td>{hits.theta}&deg; (&mu; = {hits.mu})</td>
		<td>
		<a
                                href={hits.link}
                                target="_blank"
                                rel="external"
                            >
                                Link
                            </a>
        </td>
        <td>
		<a
                                href={hits.helio}
                                target="_blank"
                                rel="external"
                            >
                                Link
                            </a>
        </td>
       </tr>
	  </>
      ));
      return (
       <>
         <Table className="mt-3" responsive>
			          <thead>
			              <tr className="bg-light">
			                  <td>Date</td>
			                  <td>Start time (UTC)</td>
			                  <td>End time (UTC)</td>
			                  <td>Target</td>
			                  <td>Wavelength range (nm)</td>
			                  <td>Heliocentric angle (&theta;)</td>
			                  <td>Observation details</td>
			                  <td>Helioviewer</td>
			              </tr>
			          </thead>
			          <tbody>
		                  {sdckisResults}
		              </tbody>
		 </Table>
       </>

      );

    }
  }
  else {
    return <LoadingSpinner />;
  }
}