aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/components/PasteArea.js
diff options
context:
space:
mode:
authorjackyzha0 <[email protected]>2020-05-11 21:11:16 -0700
committerjackyzha0 <[email protected]>2020-05-11 21:11:16 -0700
commit433466a3947e75a36b811795bc21be1fff10b5e8 (patch)
tree9e42dad77e7b8bdb3eefbbcfdc3eb7fa90817344 /frontend/src/components/PasteArea.js
parentadd basic link + route (diff)
downloadctrl-v-433466a3947e75a36b811795bc21be1fff10b5e8.tar.xz
ctrl-v-433466a3947e75a36b811795bc21be1fff10b5e8.zip
backend redir
Diffstat (limited to 'frontend/src/components/PasteArea.js')
-rw-r--r--frontend/src/components/PasteArea.js113
1 files changed, 0 insertions, 113 deletions
diff --git a/frontend/src/components/PasteArea.js b/frontend/src/components/PasteArea.js
deleted file mode 100644
index bd08fc1..0000000
--- a/frontend/src/components/PasteArea.js
+++ /dev/null
@@ -1,113 +0,0 @@
-import React from 'react';
-import { TitleInput, PasteInput } from './Inputs'
-import OptionsContainer from './Options'
-import axios from 'axios';
-
-class PasteArea extends React.Component {
- constructor(props) {
- super(props);
- this.state = {
- title: '',
- content: '',
- pass: '',
- expiry: ''
- };
-
- this.handleChange = this.handleChange.bind(this);
- this.handleSubmit = this.handleSubmit.bind(this);
- }
-
- componentDidUpdate() {
- if (this.state.title === "") {
- document.title = `ctrl-v`;
- } else {
- document.title = `ctrl-v | ${this.state.title}`;
- }
- }
-
- handleChange(event) {
- const target = event.target;
- const name = target.name;
-
- this.setState({
- [name]: target.value
- });
- }
-
- parseExpiry(e) {
- var cur = new Date();
- var inSeconds = 0
- switch (e) {
- case '5 years':
- inSeconds = 600 * 6 * 24 * 7 * 4 * 12 * 5
- break;
- case '1 year':
- inSeconds = 600 * 6 * 24 * 7 * 4 * 12
- break;
- case '1 month':
- inSeconds = 600 * 6 * 24 * 7 * 4
- break;
- case '1 day':
- inSeconds = 600 * 6 * 24
- break;
- case '1 hour':
- inSeconds = 600 * 6
- break;
- case '10 min':
- inSeconds = 600
- break;
- case '1 week':
- default:
- inSeconds = 600 * 6 * 24 * 7
- break;
- }
- return new Date(cur.getTime() + inSeconds * 1000).toISOString();
- }
-
- handleSubmit(event) {
- var bodyFormData = new FormData();
- bodyFormData.set('title', this.state.title);
- bodyFormData.set('content', this.state.content);
- bodyFormData.set('password', this.state.pass);
- bodyFormData.set('expiry', this.parseExpiry(this.state.expiry));
-
- axios({
- method: 'post',
- url: 'http://localhost:8080/api',
- data: bodyFormData,
- headers: { 'Content-Type': 'multipart/form-data' },
- }).then(function (response) {
- //handle success
- console.log(response);
- }).catch(function (response) {
- //handle error
- console.log(response);
- });
-
- event.preventDefault();
- }
-
- render() {
- return (
- <form onSubmit={this.handleSubmit}>
- <TitleInput
- onChange={this.handleChange}
- value={this.state.title}
- maxLength="100"
- id="titleInput" />
- <PasteInput
- onChange={this.handleChange}
- content={this.state.content}
- maxLength="100000"
- id="pasteInput" />
- <input className="lt-button lt-shadow lt-hover" type="submit" value="new paste" />
- <OptionsContainer
- pass={this.state.pass}
- expiry={this.state.expiry}
- onChange={this.handleChange} />
- </form>
- );
- }
-}
-
-export default PasteArea \ No newline at end of file