From 779e5e84e37278b8f3255a1061f2137f5b6a3a7d Mon Sep 17 00:00:00 2001 From: Clemens Date: Tue, 16 Aug 2016 12:37:35 +0200 Subject: refactor file up and download --- .../components/ContentView/UploadContentButton.jsx | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) (limited to 'web/src/js/components/ContentView') diff --git a/web/src/js/components/ContentView/UploadContentButton.jsx b/web/src/js/components/ContentView/UploadContentButton.jsx index 0652b584..6764e234 100644 --- a/web/src/js/components/ContentView/UploadContentButton.jsx +++ b/web/src/js/components/ContentView/UploadContentButton.jsx @@ -1,4 +1,5 @@ import { PropTypes } from 'react' +import FileChooser from '../common/FileChooser' UploadContentButton.propTypes = { uploadContent: PropTypes.func.isRequired, @@ -9,20 +10,11 @@ export default function UploadContentButton({ uploadContent }) { let fileInput; return ( - fileInput.click()} - title="Upload a file to replace the content."> - - fileInput = ref} - className="hidden" - type="file" - onChange={e => { - if (e.target.files.length > 0) uploadContent(e.target.files[0]) - }} - /> - - + ) } -- cgit v1.2.3 From cc838f6c28854e98e170a4cd8b676f51b410ccd6 Mon Sep 17 00:00:00 2001 From: Clemens Date: Wed, 17 Aug 2016 12:12:32 +0200 Subject: refactor codeeditor --- web/src/js/components/ContentView/CodeEditor.jsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'web/src/js/components/ContentView') diff --git a/web/src/js/components/ContentView/CodeEditor.jsx b/web/src/js/components/ContentView/CodeEditor.jsx index d0430e6f..8afc128f 100644 --- a/web/src/js/components/ContentView/CodeEditor.jsx +++ b/web/src/js/components/ContentView/CodeEditor.jsx @@ -1,5 +1,4 @@ -import React, { Component, PropTypes } from 'react' -import { render } from 'react-dom'; +import React, {PropTypes} from 'react' import Codemirror from 'react-codemirror'; -- cgit v1.2.3 From 0f4eb24a8dbe552d1b3b61481fea37c52c27da9f Mon Sep 17 00:00:00 2001 From: Clemens Date: Wed, 17 Aug 2016 12:19:04 +0200 Subject: fix viewselector bug --- web/src/js/components/ContentView/ViewSelector.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'web/src/js/components/ContentView') diff --git a/web/src/js/components/ContentView/ViewSelector.jsx b/web/src/js/components/ContentView/ViewSelector.jsx index 59ec4276..f879dbc5 100644 --- a/web/src/js/components/ContentView/ViewSelector.jsx +++ b/web/src/js/components/ContentView/ViewSelector.jsx @@ -7,7 +7,7 @@ import { setContentView } from "../../ducks/ui/flow"; function ViewItem({ name, setContentView, children }) { return (
  • - setContentView(name)}> + {e.preventDefault(); setContentView(name)}}> {children}
  • -- cgit v1.2.3 From a416732665aa7a0fb56e20f9888fd9488750a4df Mon Sep 17 00:00:00 2001 From: Clemens Date: Thu, 18 Aug 2016 16:44:49 +0200 Subject: refactor dropdown menu, view selector --- web/src/js/components/ContentView/ViewSelector.jsx | 80 ++++++---------------- 1 file changed, 22 insertions(+), 58 deletions(-) (limited to 'web/src/js/components/ContentView') diff --git a/web/src/js/components/ContentView/ViewSelector.jsx b/web/src/js/components/ContentView/ViewSelector.jsx index f879dbc5..ab433ea3 100644 --- a/web/src/js/components/ContentView/ViewSelector.jsx +++ b/web/src/js/components/ContentView/ViewSelector.jsx @@ -1,72 +1,36 @@ import React, { PropTypes, Component } from 'react' -import classnames from 'classnames' import { connect } from 'react-redux' import * as ContentViews from './ContentViews' -import { setContentView } from "../../ducks/ui/flow"; - -function ViewItem({ name, setContentView, children }) { - return ( -
  • - {e.preventDefault(); setContentView(name)}}> - {children} - -
  • - ) -} +import { setContentView } from '../../ducks/ui/flow'; +import Dropdown from '../common/Dropdown' -/*ViewSelector.propTypes = { +ViewSelector.propTypes = { contentViews: PropTypes.array.isRequired, activeView: PropTypes.string.isRequired, isEdit: PropTypes.bool.isRequired, - isContentViewSelectorOpen: PropTypes.bool.isRequired, - setContentViewSelectorOpen: PropTypes.func.isRequired -}*/ - - -class ViewSelector extends Component { - constructor(props, context) { - super(props, context) - this.close = this.close.bind(this) - this.state = {open: false} - } - close() { - this.setState({open: false}) - document.removeEventListener('click', this.close) - } - - onDropdown(e){ - e.preventDefault() - this.setState({open: !this.state.open}) - document.addEventListener('click', this.close) - } + setContentView: PropTypes.func.isRequired +} - render() { - const {contentViews, activeView, isEdit, setContentView} = this.props - let edit = ContentViews.Edit.displayName +function ViewSelector ({contentViews, activeView, isEdit, setContentView}){ + let edit = ContentViews.Edit.displayName + let inner = View: {activeView} - return ( -
    - this.onDropdown(e) } - href="#"> - View: {activeView} + return ( + + {contentViews.map(name => + {e.preventDefault(); setContentView(name)}}> + {name.toLowerCase().replace('_', ' ')} -
      - {contentViews.map(name => - - {name.toLowerCase().replace('_', ' ')} - - )} - {isEdit && - - {edit.toLowerCase()} - - } -
    -
    - ) - } + ) + } + {isEdit && + {e.preventDefault(); setContentView(edit)}}> + {edit.toLowerCase()} + + } + + ) } export default connect ( -- cgit v1.2.3 From 66e9db3713d54c67be1cf2bef1b0633db084649c Mon Sep 17 00:00:00 2001 From: Clemens Date: Thu, 18 Aug 2016 18:05:38 +0200 Subject: refactor contentviews, dropdown, filemenu and footer --- web/src/js/components/ContentView/ContentViews.jsx | 33 +++++++++++++++------- 1 file changed, 23 insertions(+), 10 deletions(-) (limited to 'web/src/js/components/ContentView') diff --git a/web/src/js/components/ContentView/ContentViews.jsx b/web/src/js/components/ContentView/ContentViews.jsx index cd593023..5b07969c 100644 --- a/web/src/js/components/ContentView/ContentViews.jsx +++ b/web/src/js/components/ContentView/ContentViews.jsx @@ -30,6 +30,12 @@ function Edit({ content, onChange }) { Edit = ContentLoader(Edit) class ViewServer extends Component { + static propTypes = { + showFullContent: PropTypes.bool.isRequired, + maxLines: PropTypes.number.isRequired, + setContentViewDescription : PropTypes.func.isRequired, + setContent: PropTypes.func.isRequired + } componentWillMount(){ this.setContentView(this.props) @@ -40,6 +46,7 @@ class ViewServer extends Component { this.setContentView(nextProps) } } + setContentView(props){ try { this.data = JSON.parse(props.content) @@ -50,25 +57,31 @@ class ViewServer extends Component { props.setContentViewDescription(props.contentView != this.data.description ? this.data.description : '') props.setContent(this.data.lines) } + render() { const {content, contentView, message, maxLines} = this.props let lines = this.props.showFullContent ? this.data.lines : this.data.lines.slice(0, maxLines) - return
    + return ( +
                         {lines.map((line, i) =>
                             
    - {line.map((tuple, j) => - - {tuple[1]} - - )} + {line.map((element, j) => { + let style, text = element + return ( + + {element} + + ) + })}
    )}
    - {ViewImage.matches(message) && - - } -
    + {ViewImage.matches(message) && + + } +
    + ) } } -- cgit v1.2.3 From d4b18eae8181051f5230b796046cc7ff56e94862 Mon Sep 17 00:00:00 2001 From: Clemens Date: Fri, 19 Aug 2016 09:23:41 +0200 Subject: refactoring --- web/src/js/components/ContentView/UploadContentButton.jsx | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'web/src/js/components/ContentView') diff --git a/web/src/js/components/ContentView/UploadContentButton.jsx b/web/src/js/components/ContentView/UploadContentButton.jsx index 6764e234..de349af4 100644 --- a/web/src/js/components/ContentView/UploadContentButton.jsx +++ b/web/src/js/components/ContentView/UploadContentButton.jsx @@ -6,9 +6,7 @@ UploadContentButton.propTypes = { } export default function UploadContentButton({ uploadContent }) { - - let fileInput; - + return ( Date: Fri, 19 Aug 2016 09:58:29 +0200 Subject: fix refactoring bug --- web/src/js/components/ContentView/ContentViews.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'web/src/js/components/ContentView') diff --git a/web/src/js/components/ContentView/ContentViews.jsx b/web/src/js/components/ContentView/ContentViews.jsx index 5b07969c..32a07564 100644 --- a/web/src/js/components/ContentView/ContentViews.jsx +++ b/web/src/js/components/ContentView/ContentViews.jsx @@ -67,10 +67,10 @@ class ViewServer extends Component { {lines.map((line, i) =>
    {line.map((element, j) => { - let style, text = element + let [style, text] = element return ( - {element} + {text} ) })} -- cgit v1.2.3