From 4a39a75a5a8beda6b28b311c78990d72f1cfe7cf Mon Sep 17 00:00:00 2001 From: Renard Date: Sun, 15 Sep 2019 20:52:10 -0300 Subject: Refractor BBSThread --- src/App.js | 8 ++--- src/BBSThread.js | 95 -------------------------------------------------------- src/Thread.js | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 99 insertions(+), 99 deletions(-) delete mode 100644 src/BBSThread.js create mode 100644 src/Thread.js (limited to 'src') diff --git a/src/App.js b/src/App.js index 551fed9..99860cc 100644 --- a/src/App.js +++ b/src/App.js @@ -6,7 +6,7 @@ import "./App.css"; import { Dropdown, Menu, Icon, Loader, Container } from "semantic-ui-react"; import Home from "./Home"; -import BBSThread from "./BBSThread"; +import Thread from "./Thread"; import Board from "./Board"; import NotFound from "./NotFound" @@ -65,9 +65,9 @@ class App extends Component { - - - + + + diff --git a/src/BBSThread.js b/src/BBSThread.js deleted file mode 100644 index b81264e..0000000 --- a/src/BBSThread.js +++ /dev/null @@ -1,95 +0,0 @@ -import React, { Component } from "react"; -import { Header, Icon, Loader, Message, Segment, Comment } from "semantic-ui-react"; -import Moment from "react-moment"; -import "moment/locale/es"; -import Post from "./Post"; -import ReplyForm from "./ReplyForm"; - -class BBSThread 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; - - return ( -
-
- - {subject}{locked ? : null} - - - - - Creado
- {total_replies} respuestas
- -
-
- - - {posts.map((post, index) => - post.IS_DELETED === 0 ? - () : - ( - #{index} Eliminado - ) - ) - } - - - - - API Link -
); - } -} - -export default BBSThread; \ No newline at end of file diff --git a/src/Thread.js b/src/Thread.js new file mode 100644 index 0000000..eb9d63a --- /dev/null +++ b/src/Thread.js @@ -0,0 +1,95 @@ +import React, { Component } from "react"; +import { Header, Icon, Loader, Message, Segment, Comment } from "semantic-ui-react"; +import Moment from "react-moment"; +import "moment/locale/es"; +import Post from "./Post"; +import ReplyForm from "./ReplyForm"; + +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; + + return ( +
+
+ + {subject}{locked ? : null} + + + + + Creado
+ {total_replies} respuestas
+ +
+
+ + + {posts.map((post, index) => + post.IS_DELETED === 0 ? + () : + ( + #{index} Eliminado + ) + ) + } + + + + + API Link +
); + } +} + +export default Thread; \ No newline at end of file -- cgit v1.2.1-18-gbd029