get osem codes if logged in
This commit is contained in:
parent
4e8819172b
commit
45b90bfe58
@ -1,5 +1,6 @@
|
|||||||
import React, { useEffect } from "react";
|
import React, { useEffect } from "react";
|
||||||
import Blockly from "blockly";
|
import Blockly from "blockly";
|
||||||
|
import { useSelector } from "react-redux";
|
||||||
import Accordion from "@material-ui/core/Accordion";
|
import Accordion from "@material-ui/core/Accordion";
|
||||||
import AccordionSummary from "@material-ui/core/AccordionSummary";
|
import AccordionSummary from "@material-ui/core/AccordionSummary";
|
||||||
import AccordionDetails from "@material-ui/core/AccordionDetails";
|
import AccordionDetails from "@material-ui/core/AccordionDetails";
|
||||||
@ -15,13 +16,7 @@ const Sidebar = () => {
|
|||||||
const [alert, setAlert] = React.useState(false);
|
const [alert, setAlert] = React.useState(false);
|
||||||
const [examples, setExamples] = React.useState([]);
|
const [examples, setExamples] = React.useState([]);
|
||||||
|
|
||||||
useEffect(() => {
|
const user = useSelector((state) => state.auth.user);
|
||||||
axios
|
|
||||||
.get("https://coelho.opensensemap.org/items/blocklysamples")
|
|
||||||
.then((res) => {
|
|
||||||
setExamples(res.data.data);
|
|
||||||
});
|
|
||||||
}, []);
|
|
||||||
|
|
||||||
const monaco = useMonaco();
|
const monaco = useMonaco();
|
||||||
const loadCode = (code) => {
|
const loadCode = (code) => {
|
||||||
@ -32,6 +27,14 @@ const Sidebar = () => {
|
|||||||
setAlert(false);
|
setAlert(false);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const getOsemScript = (id) => {
|
||||||
|
axios
|
||||||
|
.get(`https://api.opensensemap.org/boxes/${id}/script/`)
|
||||||
|
.then((res) => {
|
||||||
|
loadCode(res.data);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
{"serial" in navigator ? (
|
{"serial" in navigator ? (
|
||||||
@ -50,8 +53,7 @@ const Sidebar = () => {
|
|||||||
</AccordionDetails>
|
</AccordionDetails>
|
||||||
</Accordion>
|
</Accordion>
|
||||||
) : null}
|
) : null}
|
||||||
|
{/* <Accordion>
|
||||||
<Accordion>
|
|
||||||
<AccordionSummary
|
<AccordionSummary
|
||||||
expandIcon={""}
|
expandIcon={""}
|
||||||
aria-controls="panel1a-content"
|
aria-controls="panel1a-content"
|
||||||
@ -76,7 +78,35 @@ const Sidebar = () => {
|
|||||||
})}
|
})}
|
||||||
</Typography>
|
</Typography>
|
||||||
</AccordionDetails>
|
</AccordionDetails>
|
||||||
</Accordion>
|
</Accordion> */}
|
||||||
|
{user ? (
|
||||||
|
<Accordion>
|
||||||
|
<AccordionSummary
|
||||||
|
expandIcon={""}
|
||||||
|
aria-controls="panel1a-content"
|
||||||
|
id="panel1a-header"
|
||||||
|
>
|
||||||
|
<Typography>Deine openSenseMap Codes</Typography>
|
||||||
|
</AccordionSummary>
|
||||||
|
<AccordionDetails>
|
||||||
|
<Typography>
|
||||||
|
{user.boxes.map((box, i) => {
|
||||||
|
return (
|
||||||
|
<Button
|
||||||
|
style={{ padding: "1rem", margin: "1rem" }}
|
||||||
|
variant="contained"
|
||||||
|
color="primary"
|
||||||
|
key={i}
|
||||||
|
onClick={() => getOsemScript(box._id)}
|
||||||
|
>
|
||||||
|
{box.name}
|
||||||
|
</Button>
|
||||||
|
);
|
||||||
|
})}
|
||||||
|
</Typography>
|
||||||
|
</AccordionDetails>
|
||||||
|
</Accordion>
|
||||||
|
) : null}
|
||||||
<Accordion>
|
<Accordion>
|
||||||
<AccordionSummary
|
<AccordionSummary
|
||||||
expandIcon={""}
|
expandIcon={""}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user