import React, { Component } from "react"; import { Header, Icon, Loader, Message, Segment, Comment, Breadcrumb } from "semantic-ui-react"; import Moment from "react-moment"; import "moment/locale/es"; import Post from "./Post"; import ReplyForm from "./ReplyForm"; import { Link } from "@reach/router"; class Thread extends Component { constructor(props) { super(props); this.state = { isLoading: true, thread: [], error: null }; } componentDidMount() { let apiURl; if (this.props.id > 1000000) { apiURl = `https://bienvenidoainternet.org/cgi/api/thread?dir=${this.props.dir}&ts=${this.props.id}`; } else { apiURl = `https://bienvenidoainternet.org/cgi/api/thread?dir=${this.props.dir}&id=${this.props.id}`; } console.log(apiURl); fetch(apiURl) .then(response => { return response.json(); }) .then(resource => { if (resource["state"] === "error") { console.log("API Error:" + resource["message"]); this.setState({ error: resource }); } this.setState({ isLoading: false, thread: resource }); }) .catch(console.error); } render() { const { isLoading, error } = this.state; if (isLoading) { return ( Cargando ... ); } if (error != null) { return (
API Status: {error.state}

{error.message}

); } const { posts, subject, timestamp, total_replies, locked, id } = this.state.thread; document.title = subject; const currentBoard = this.props.boardList.find(board => { return board.dir === this.props.dir; }); return ( Home {currentBoard.name} {subject}
{subject} {locked ? : null} Creado
{total_replies} respuestas
{posts.map((post, index) => ( ))} API Link
); } } export default Thread;