Skip to content
Snippets Groups Projects
Commit 0aee87ab authored by Jure's avatar Jure
Browse files

Merge branch 'decision_page_fix' into 'master'

feat: display custom metadata in decision page

See merge request simplej/simplej!11
parents 21f6168f dcae80b5
No related branches found
No related tags found
No related merge requests found
Showing with 50 additions and 52 deletions
...@@ -18,7 +18,7 @@ const rootEl = document.getElementById('root') ...@@ -18,7 +18,7 @@ const rootEl = document.getElementById('root')
ReactDOM.render( ReactDOM.render(
<XpubProvider> <XpubProvider>
<JournalProvider journal={journal}> <JournalProvider journal={JSON.parse(JSON.stringify(journal))}>
<Root history={history} routes={routes} theme={theme} /> <Root history={history} routes={routes} theme={theme} />
</JournalProvider> </JournalProvider>
</XpubProvider>, </XpubProvider>,
......
...@@ -96,6 +96,7 @@ const fragmentFields = ` ...@@ -96,6 +96,7 @@ const fragmentFields = `
} }
keywords keywords
} }
submission
suggestions { suggestions {
reviewers { reviewers {
opposed opposed
......
...@@ -8,7 +8,9 @@ const Root = styled.div`` ...@@ -8,7 +8,9 @@ const Root = styled.div``
const Title = styled.div`` const Title = styled.div``
const AssignEditorsReviewers = ({ manuscript, AssignEditor }) => { const AssignEditorsReviewers = ({ manuscript, AssignEditor }) => {
// TODO:
const journal = useContext(JournalContext) const journal = useContext(JournalContext)
// const journal = { id: 'temp' }
return ( return (
<Root> <Root>
<Title>Assign Editors</Title> <Title>Assign Editors</Title>
......
...@@ -3,7 +3,7 @@ import styled from 'styled-components' ...@@ -3,7 +3,7 @@ import styled from 'styled-components'
const Columns = styled.div` const Columns = styled.div`
display: grid; display: grid;
grid-column-gap: 2em; grid-column-gap: 2em;
grid-template-areas: 'manuscript admin'; grid-template-areas: 'manuscript chat';
grid-template-columns: minmax(200px, 80ch) minmax(200px, 50ch); grid-template-columns: minmax(200px, 80ch) minmax(200px, 50ch);
justify-content: center; justify-content: center;
` `
...@@ -12,8 +12,8 @@ const Manuscript = styled.div` ...@@ -12,8 +12,8 @@ const Manuscript = styled.div`
grid-area: manuscript; grid-area: manuscript;
` `
const Admin = styled.div` const Chat = styled.div`
grid-area: admin; grid-area: chat;
` `
export { Columns, Manuscript, Admin } export { Columns, Manuscript, Chat }
...@@ -8,15 +8,15 @@ import AssignEditorsReviewers from '../assignEditors/AssignEditorsReviewers' ...@@ -8,15 +8,15 @@ import AssignEditorsReviewers from '../assignEditors/AssignEditorsReviewers'
import AssignEditor from '../assignEditors/AssignEditor' import AssignEditor from '../assignEditors/AssignEditor'
import ReviewMetadata from '../metadata/ReviewMetadata' import ReviewMetadata from '../metadata/ReviewMetadata'
import Decision from './Decision' import Decision from './Decision'
import EditorSection from './EditorSection' // import EditorSection from './EditorSection'
import { Columns, Manuscript, Admin } from '../atoms/Columns' import { Columns, Manuscript, Chat } from '../atoms/Columns'
import AdminSection from '../atoms/AdminSection' import AdminSection from '../atoms/AdminSection'
const addEditor = (manuscript, label) => ({ // const addEditor = (manuscript, label) => ({
content: <EditorSection manuscript={manuscript} />, // content: <EditorSection manuscript={manuscript} />,
key: manuscript.id, // key: manuscript.id,
label, // label,
}) // })
const DecisionLayout = ({ const DecisionLayout = ({
handleSubmit, handleSubmit,
...@@ -46,7 +46,7 @@ const DecisionLayout = ({ ...@@ -46,7 +46,7 @@ const DecisionLayout = ({
label, label,
}) })
editorSections.push(addEditor(manuscript, label)) // editorSections.push(addEditor(manuscript, label))
}, []) }, [])
const submittedMoment = moment() const submittedMoment = moment()
...@@ -81,26 +81,26 @@ const DecisionLayout = ({ ...@@ -81,26 +81,26 @@ const DecisionLayout = ({
label, label,
}) })
editorSections.push(addEditor(manuscript, label)) // editorSections.push(addEditor(manuscript, label))
} }
return ( return (
<Columns> <Columns>
<Manuscript> <Manuscript>
<Tabs Temp
{/* <Tabs
activeKey={editorSections[editorSections.length - 1].key} activeKey={editorSections[editorSections.length - 1].key}
sections={editorSections} sections={editorSections}
title="Versions" title="Versions"
/> /> */}
</Manuscript>
<Admin>
<Tabs <Tabs
activeKey={decisionSections[decisionSections.length - 1].key} activeKey={decisionSections[decisionSections.length - 1].key}
sections={decisionSections} sections={decisionSections}
title="Versions" title="Versions"
/> />
</Admin> </Manuscript>
<Chat></Chat>
</Columns> </Columns>
) )
} }
......
...@@ -51,6 +51,7 @@ const filesToAttachment = file => ({ ...@@ -51,6 +51,7 @@ const filesToAttachment = file => ({
const ReviewMetadata = ({ manuscript }) => ( const ReviewMetadata = ({ manuscript }) => (
<Root> <Root>
<Title>Metadata</Title> <Title>Metadata</Title>
<Metadata> <Metadata>
<div> <div>
<Heading>Open Peer Review :</Heading> <Heading>Open Peer Review :</Heading>
...@@ -137,6 +138,9 @@ const ReviewMetadata = ({ manuscript }) => ( ...@@ -137,6 +138,9 @@ const ReviewMetadata = ({ manuscript }) => (
)} )}
</div> </div>
)} )}
<Title>Additional metadata</Title>
{// TODO
JSON.stringify(JSON.parse(manuscript.submission), null, 2)}
</Metadata> </Metadata>
</Root> </Root>
) )
......
import React from 'react'
import PropTypes from 'prop-types'
import { withContext, getContext } from 'recompose'
export const JournalProvider = withContext(
{ journal: PropTypes.object },
({ journal }) => ({ journal }),
)(props => React.Children.only(props.children))
export const withJournal = getContext({
journal: PropTypes.object,
})
export { JournalProvider, withJournal } from './JournalProvider'
...@@ -8,12 +8,6 @@ ...@@ -8,12 +8,6 @@
"component": "TextField", "component": "TextField",
"name": "submission.name", "name": "submission.name",
"placeholder": "Enter your name", "placeholder": "Enter your name",
"validate": [
"required"
],
"validateValue": {
"minChars": "10"
},
"order": "1" "order": "1"
}, },
{ {
...@@ -22,12 +16,6 @@ ...@@ -22,12 +16,6 @@
"component": "TextField", "component": "TextField",
"name": "submission.affiliation", "name": "submission.affiliation",
"placeholder": "Enter your affiliation", "placeholder": "Enter your affiliation",
"validate": [
"required"
],
"validateValue": {
"minChars": "10"
},
"order": "2" "order": "2"
}, },
{ {
...@@ -46,10 +34,25 @@ ...@@ -46,10 +34,25 @@
"placeholder": "Enter keywords...", "placeholder": "Enter keywords...",
"parse": "split", "parse": "split",
"format": "join", "format": "join",
"order": "20",
"validateValue": {
"minChars": "4",
"maxChars": "6"
},
"validate": [ "validate": [
"required" {
], "value": "minChars",
"order": "20" "label": "minimum Characters"
},
{
"value": "maxChars",
"label": "maximum Characters"
},
{
"value": "required",
"label": "Required"
}
]
}, },
{ {
"title": "Type of Research Object", "title": "Type of Research Object",
...@@ -74,9 +77,6 @@ ...@@ -74,9 +77,6 @@
"label": "Registered Report" "label": "Registered Report"
} }
], ],
"validate": [
"required"
],
"order": "7" "order": "7"
}, },
{ {
......
...@@ -10,7 +10,7 @@ const clearDb = async () => { ...@@ -10,7 +10,7 @@ const clearDb = async () => {
`) `)
if (rows.length) { if (rows.length) {
logger.info('Overwriting existing database due to clobber option') logger.info('Overwriting existing database')
// TODO this is dangerous, change it // TODO this is dangerous, change it
let dropQuery = rows.map( let dropQuery = rows.map(
row => `DROP TABLE ${row.schemaname}.${row.tablename} CASCADE`, row => `DROP TABLE ${row.schemaname}.${row.tablename} CASCADE`,
......
...@@ -66,6 +66,10 @@ module.exports = webpackEnv => { ...@@ -66,6 +66,10 @@ module.exports = webpackEnv => {
resolve: { resolve: {
alias: { alias: {
'wax-prosemirror-themes': path.resolve(__dirname, '../app/theme'), 'wax-prosemirror-themes': path.resolve(__dirname, '../app/theme'),
'xpub-journal': path.resolve(
__dirname,
'../app/components/xpub-journal',
),
joi: 'joi-browser', joi: 'joi-browser',
config: clientConfigPath, config: clientConfigPath,
}, },
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment