From d5b46f219ed81cd1fa05c0eec0dd676de37c69aa Mon Sep 17 00:00:00 2001 From: David Jay Date: Tue, 7 Mar 2017 11:54:44 -0500 Subject: [PATCH 1/9] Adding load more button. --- .../ModerationQueue/ModerationContainer.js | 16 ++++++-- .../ModerationQueue/ModerationQueue.js | 12 +++++- .../components/ModerationMenu.js | 15 ++------ .../coral-admin/src/graphql/queries/index.js | 38 ++++++++++++++++++- .../src/graphql/queries/loadMore.graphql | 13 +++++++ 5 files changed, 76 insertions(+), 18 deletions(-) create mode 100644 client/coral-admin/src/graphql/queries/loadMore.graphql diff --git a/client/coral-admin/src/containers/ModerationQueue/ModerationContainer.js b/client/coral-admin/src/containers/ModerationQueue/ModerationContainer.js index 25a7a9511..99a1ec656 100644 --- a/client/coral-admin/src/containers/ModerationQueue/ModerationContainer.js +++ b/client/coral-admin/src/containers/ModerationQueue/ModerationContainer.js @@ -21,7 +21,8 @@ import ModerationKeysModal from '../../components/ModerationKeysModal'; class ModerationContainer extends Component { state = { - selectedIndex: 0 + selectedIndex: 0, + sort: 'REVERSE_CHRONOLOGICAL' } componentWillMount() { @@ -53,6 +54,11 @@ class ModerationContainer extends Component { } + selectSort = (sort) => { + this.setState({sort}); + this.props.modQueueResort(sort); + } + componentWillUnmount() { key.unbind('s'); key.unbind('shift+/'); @@ -71,7 +77,7 @@ class ModerationContainer extends Component { } render () { - const {data, moderation, settings, assets, modQueueResort, onClose, ...props} = this.props; + const {data, moderation, settings, assets, onClose, ...props} = this.props; const providedAssetId = this.props.params.id; const activeTab = this.props.route.path === ':id' ? 'premod' : this.props.route.path; @@ -103,7 +109,8 @@ class ModerationContainer extends Component { premodCount={data.premodCount} rejectedCount={data.rejectedCount} flaggedCount={data.flaggedCount} - modQueueResort={modQueueResort} + selectSort={this.selectSort} + sort={this.state.sort} /> { +const ModerationQueue = ({comments, selectedIndex, singleView, loadMore, activeTab, sort, ...props}) => { return (
    @@ -20,7 +20,7 @@ const ModerationQueue = ({comments, selectedIndex, singleView, ...props}) => { key={i} index={i} comment={comment} - commentType={props.activeTab} + commentType={activeTab} selected={i === selectedIndex} suspectWords={props.suspectWords} actions={actionsMap[status]} @@ -33,6 +33,14 @@ const ModerationQueue = ({comments, selectedIndex, singleView, ...props}) => { : {lang.t('modqueue.emptyqueue')} }
+
); }; diff --git a/client/coral-admin/src/containers/ModerationQueue/components/ModerationMenu.js b/client/coral-admin/src/containers/ModerationQueue/components/ModerationMenu.js index f9b0c266f..8d6a0e883 100644 --- a/client/coral-admin/src/containers/ModerationQueue/components/ModerationMenu.js +++ b/client/coral-admin/src/containers/ModerationQueue/components/ModerationMenu.js @@ -9,10 +9,6 @@ import {Link} from 'react-router'; const lang = new I18n(translations); class ModerationMenu extends Component { - state = { - sort: 'REVERSE_CHRONOLOGICAL', - } - static propTypes = { premodCount: PropTypes.number.isRequired, rejectedCount: PropTypes.number.isRequired, @@ -22,13 +18,8 @@ class ModerationMenu extends Component { }) } - selectSort = (sort) => { - this.setState({sort}); - this.props.modQueueResort(sort); - } - render() { - const {asset, premodCount, rejectedCount, flaggedCount} = this.props; + const {asset, premodCount, rejectedCount, flaggedCount, selectSort, sort} = this.props; const premodPath = asset ? `/admin/moderate/premod/${asset.id}` : '/admin/moderate/premod'; const rejectPath = asset ? `/admin/moderate/rejected/${asset.id}` : '/admin/moderate/rejected'; const flagPath = asset ? `/admin/moderate/flagged/${asset.id}` : '/admin/moderate/flagged'; @@ -50,8 +41,8 @@ class ModerationMenu extends Component { this.selectSort(sort)}> + value={sort} + onChange={sort => selectSort(sort)}> diff --git a/client/coral-admin/src/graphql/queries/index.js b/client/coral-admin/src/graphql/queries/index.js index c4a30ad44..13164bca2 100644 --- a/client/coral-admin/src/graphql/queries/index.js +++ b/client/coral-admin/src/graphql/queries/index.js @@ -1,6 +1,7 @@ import {graphql} from 'react-apollo'; import MOD_QUEUE_QUERY from './modQueueQuery.graphql'; +import MOD_QUEUE_LOAD_MORE from './loadMore.graphql'; import METRICS from './metricsQuery.graphql'; export const modQueueQuery = graphql(MOD_QUEUE_QUERY, { @@ -14,7 +15,8 @@ export const modQueueQuery = graphql(MOD_QUEUE_QUERY, { }, props: ({ownProps: {params: {id = null}}, data}) => ({ data, - modQueueResort: modQueueResort(id, data.fetchMore) + modQueueResort: modQueueResort(id, data.fetchMore), + loadMore: loadMore(data.fetchMore) }) }); @@ -30,6 +32,40 @@ export const getMetrics = graphql(METRICS, { } }); +export const loadMore = (fetchMore) => ({limit, cursor, sort, tab, asset_id}) => { + let statuses; + switch(tab) { + case 'premod': + statuses = ['PREMOD']; + break; + case 'flagged': + statuses = ['NONE', 'PREMOD']; + break; + case 'rejected': + statuses = ['REJECTED']; + break; + } + return fetchMore({ + query: MOD_QUEUE_LOAD_MORE, + variables: { + limit, + cursor, + sort, + statuses, + asset_id + }, + updateQuery: (oldData, {fetchMoreResult:{data:{comments}}}) => { + return { + ...oldData, + [tab]: [ + ...oldData[tab], + ...comments + ] + }; + } + }); +}; + export const modQueueResort = (id, fetchMore) => (sort) => { return fetchMore({ query: MOD_QUEUE_QUERY, diff --git a/client/coral-admin/src/graphql/queries/loadMore.graphql b/client/coral-admin/src/graphql/queries/loadMore.graphql new file mode 100644 index 000000000..56966a804 --- /dev/null +++ b/client/coral-admin/src/graphql/queries/loadMore.graphql @@ -0,0 +1,13 @@ +#import "../fragments/commentView.graphql" + +query LoadMoreModQueue($limit: Int = 10, $cursor: Date, $sort: SORT_ORDER, $asset_id: ID, $statuses:[COMMENT_STATUS!]) { + comments(query: {limit: $limit, cursor: $cursor, asset_id: $asset_id, statuses: $statuses, sort: $sort}) { + ...commentView + action_summaries { + count + ... on FlagActionSummary { + reason + } + } + } +} From 54aa3bc8fa4a0e3fb0c67a16704409b22c7ba55f Mon Sep 17 00:00:00 2001 From: David Jay Date: Tue, 7 Mar 2017 12:31:43 -0500 Subject: [PATCH 2/9] Styling load more button. --- .../ModerationQueue/ModerationContainer.js | 13 +++++++++++ .../ModerationQueue/ModerationQueue.js | 19 ++++++++-------- .../ModerationQueue/components/LoadMore.js | 22 +++++++++++++++++++ .../ModerationQueue/components/styles.css | 20 +++++++++++++++++ 4 files changed, 65 insertions(+), 9 deletions(-) create mode 100644 client/coral-admin/src/containers/ModerationQueue/components/LoadMore.js diff --git a/client/coral-admin/src/containers/ModerationQueue/ModerationContainer.js b/client/coral-admin/src/containers/ModerationQueue/ModerationContainer.js index 99a1ec656..16de8a32e 100644 --- a/client/coral-admin/src/containers/ModerationQueue/ModerationContainer.js +++ b/client/coral-admin/src/containers/ModerationQueue/ModerationContainer.js @@ -100,6 +100,18 @@ class ModerationContainer extends Component { } const comments = data[activeTab]; + let activeTabCount; + switch(activeTab) { + case 'premod': + activeTabCount = data.premodCount; + break; + case 'flagged': + activeTabCount = data.flaggedCount; + break; + case 'rejected': + activeTabCount = data.rejectedCount; + break; + } return (
@@ -125,6 +137,7 @@ class ModerationContainer extends Component { loadMore={props.loadMore} assetId={providedAssetId} sort={this.state.sort} + commentCount={activeTabCount} /> { +const ModerationQueue = ({comments, selectedIndex, commentCount, singleView, loadMore, activeTab, sort, ...props}) => { return (
    @@ -33,14 +34,14 @@ const ModerationQueue = ({comments, selectedIndex, singleView, loadMore, activeT : {lang.t('modqueue.emptyqueue')} }
- +
); }; diff --git a/client/coral-admin/src/containers/ModerationQueue/components/LoadMore.js b/client/coral-admin/src/containers/ModerationQueue/components/LoadMore.js new file mode 100644 index 000000000..5ac193525 --- /dev/null +++ b/client/coral-admin/src/containers/ModerationQueue/components/LoadMore.js @@ -0,0 +1,22 @@ +import React from 'react'; +import {Button} from 'coral-ui'; +import styles from './styles.css'; + +const LoadMore = ({comments, loadMore, sort, tab, assetId, showLoadMore}) => +
+ { + showLoadMore && + } +
; + +export default LoadMore; diff --git a/client/coral-admin/src/containers/ModerationQueue/components/styles.css b/client/coral-admin/src/containers/ModerationQueue/components/styles.css index 59f47faad..5abbb6b7d 100644 --- a/client/coral-admin/src/containers/ModerationQueue/components/styles.css +++ b/client/coral-admin/src/containers/ModerationQueue/components/styles.css @@ -387,3 +387,23 @@ span { cursor: pointer; } } + +.loadMoreContainer { + display: flex; + justify-content: center; + width: 100%; +}; + +.loadMore { + width: 100%; + text-align: center; + color: #FFF; + max-width: 660px; + margin-bottom: 30px; + background-color: #2376D8; + cursor: pointer; +} + +.loadMore:hover { + background-color: #4399FF; +} From 2a6236b61823525d181bbd4c97c25467d5cd7f35 Mon Sep 17 00:00:00 2001 From: David Jay Date: Tue, 7 Mar 2017 12:37:12 -0500 Subject: [PATCH 3/9] Moving ModerationMenu to a stateless compenent. --- .../components/ModerationMenu.js | 81 +++++++++---------- 1 file changed, 39 insertions(+), 42 deletions(-) diff --git a/client/coral-admin/src/containers/ModerationQueue/components/ModerationMenu.js b/client/coral-admin/src/containers/ModerationQueue/components/ModerationMenu.js index 8d6a0e883..b8160e21b 100644 --- a/client/coral-admin/src/containers/ModerationQueue/components/ModerationMenu.js +++ b/client/coral-admin/src/containers/ModerationQueue/components/ModerationMenu.js @@ -1,4 +1,4 @@ -import React, {PropTypes, Component} from 'react'; +import React, {PropTypes} from 'react'; import CommentCount from './CommentCount'; import styles from './styles.css'; import {SelectField, Option} from 'react-mdl-selectfield'; @@ -8,48 +8,45 @@ import {Link} from 'react-router'; const lang = new I18n(translations); -class ModerationMenu extends Component { - static propTypes = { - premodCount: PropTypes.number.isRequired, - rejectedCount: PropTypes.number.isRequired, - flaggedCount: PropTypes.number.isRequired, - asset: PropTypes.shape({ - id: PropTypes.string - }) - } - - render() { - const {asset, premodCount, rejectedCount, flaggedCount, selectSort, sort} = this.props; - const premodPath = asset ? `/admin/moderate/premod/${asset.id}` : '/admin/moderate/premod'; - const rejectPath = asset ? `/admin/moderate/rejected/${asset.id}` : '/admin/moderate/rejected'; - const flagPath = asset ? `/admin/moderate/flagged/${asset.id}` : '/admin/moderate/flagged'; - return ( -
-
-
-
- - {lang.t('modqueue.premod')} - - - {lang.t('modqueue.rejected')} - - - {lang.t('modqueue.flagged')} - -
- selectSort(sort)}> - - - +const ModerationMenu = ({asset, premodCount, rejectedCount, flaggedCount, selectSort, sort}) => { + const premodPath = asset ? `/admin/moderate/premod/${asset.id}` : '/admin/moderate/premod'; + const rejectPath = asset ? `/admin/moderate/rejected/${asset.id}` : '/admin/moderate/rejected'; + const flagPath = asset ? `/admin/moderate/flagged/${asset.id}` : '/admin/moderate/flagged'; + return ( +
+
+
+
+ + {lang.t('modqueue.premod')} + + + {lang.t('modqueue.rejected')} + + + {lang.t('modqueue.flagged')} +
+ selectSort(sort)}> + + +
- ); - } -} +
+ ); +}; + +ModerationMenu.propTypes = { + premodCount: PropTypes.number.isRequired, + rejectedCount: PropTypes.number.isRequired, + flaggedCount: PropTypes.number.isRequired, + asset: PropTypes.shape({ + id: PropTypes.string + }) +}; export default ModerationMenu; From e578f901b2c01cf463b4420a03f8334c32154c79 Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Tue, 7 Mar 2017 13:38:01 -0700 Subject: [PATCH 4/9] fix some firefox display things --- .../coral-admin/src/containers/Configure/StreamSettings.js | 1 + client/coral-admin/src/containers/Dashboard/FlagWidget.js | 3 ++- client/coral-admin/src/containers/Dashboard/LikeWidget.js | 5 +++-- client/coral-admin/src/containers/Dashboard/Widget.css | 4 ++++ client/coral-admin/src/containers/Streams/Streams.js | 2 +- 5 files changed, 11 insertions(+), 4 deletions(-) diff --git a/client/coral-admin/src/containers/Configure/StreamSettings.js b/client/coral-admin/src/containers/Configure/StreamSettings.js index 5530bc6cd..f77013bc0 100644 --- a/client/coral-admin/src/containers/Configure/StreamSettings.js +++ b/client/coral-admin/src/containers/Configure/StreamSettings.js @@ -171,6 +171,7 @@ const StreamSettings = ({updateSettings, settingsError, settings, errors}) => {
+ {/* the above card should be the last one if at all possible because of z-index issues with the selects */}
); }; diff --git a/client/coral-admin/src/containers/Dashboard/FlagWidget.js b/client/coral-admin/src/containers/Dashboard/FlagWidget.js index da71ac04a..5ce93f11b 100644 --- a/client/coral-admin/src/containers/Dashboard/FlagWidget.js +++ b/client/coral-admin/src/containers/Dashboard/FlagWidget.js @@ -3,6 +3,7 @@ import {Link} from 'react-router'; import styles from './Widget.css'; import I18n from 'coral-framework/modules/i18n/i18n'; import translations from 'coral-admin/src/translations'; +import range from 'lodash/range'; const lang = new I18n(translations); @@ -44,7 +45,7 @@ const FlagWidget = (props) => { } { /* rows in a table with a fixed height will expand and ignore height. this extra row will expand to fill the extra space. */ - assets.length < 10 ? : null + range(10 - Math.max(assets.length, 1)).map(() => ) } diff --git a/client/coral-admin/src/containers/Dashboard/LikeWidget.js b/client/coral-admin/src/containers/Dashboard/LikeWidget.js index 25e851966..39ee708f8 100644 --- a/client/coral-admin/src/containers/Dashboard/LikeWidget.js +++ b/client/coral-admin/src/containers/Dashboard/LikeWidget.js @@ -3,6 +3,7 @@ import {Link} from 'react-router'; import styles from './Widget.css'; import I18n from 'coral-framework/modules/i18n/i18n'; import translations from 'coral-admin/src/translations'; +import range from 'lodash/range'; const lang = new I18n(translations); @@ -44,8 +45,8 @@ const LikeWidget = (props) => { : {lang.t('dashboard.no_likes')} } { /* rows in a table with a fixed height will expand and ignore height. - this extra row will expand to fill the extra space. */ - assets.length < 10 ? : null + put in some extra rows. */ + range(10 - Math.max(assets.length, 1)).map(() => ) } diff --git a/client/coral-admin/src/containers/Dashboard/Widget.css b/client/coral-admin/src/containers/Dashboard/Widget.css index cb764d9cc..96c773bef 100644 --- a/client/coral-admin/src/containers/Dashboard/Widget.css +++ b/client/coral-admin/src/containers/Dashboard/Widget.css @@ -43,6 +43,10 @@ height: var(--row-height); } +.emptyRow { + height: var(--row-height); +} + .rowLinkify:last-child { border-bottom: none; } diff --git a/client/coral-admin/src/containers/Streams/Streams.js b/client/coral-admin/src/containers/Streams/Streams.js index 96130fcba..bd5ce6e85 100644 --- a/client/coral-admin/src/containers/Streams/Streams.js +++ b/client/coral-admin/src/containers/Streams/Streams.js @@ -80,8 +80,8 @@ class Streams extends Component {
- {closed ? lang.t('streams.closed') : lang.t('streams.open')} {!statusMenuOpen && } + {closed ? lang.t('streams.closed') : lang.t('streams.open')}
{ statusMenuOpen && From e4cdc73bf82569a55f4100e5a825e05e79c8123d Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Wed, 8 Mar 2017 13:53:39 -0700 Subject: [PATCH 5/9] fix for react-mdn-selectfield in FF --- client/coral-admin/src/containers/Configure/Configure.css | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/client/coral-admin/src/containers/Configure/Configure.css b/client/coral-admin/src/containers/Configure/Configure.css index 6cb623978..b1b1ebbaf 100644 --- a/client/coral-admin/src/containers/Configure/Configure.css +++ b/client/coral-admin/src/containers/Configure/Configure.css @@ -90,6 +90,11 @@ .configTimeoutSelect { display: inline-block; margin-left: 20px; + + i { /* fix for firefox and react-mdl-selectfield@0.2.0 */ + padding: 20px 0; + vertical-align: top; + } } .charCountTexfield { From eaf035acd6ae4ccd1f065acd223a4cb06abd02d5 Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Wed, 8 Mar 2017 14:51:50 -0700 Subject: [PATCH 6/9] simplify dashboard table rendering --- .../src/containers/Dashboard/FlagWidget.js | 44 +++++++------------ .../src/containers/Dashboard/LikeWidget.js | 44 +++++++------------ .../src/containers/Dashboard/Widget.css | 25 +++++------ 3 files changed, 44 insertions(+), 69 deletions(-) diff --git a/client/coral-admin/src/containers/Dashboard/FlagWidget.js b/client/coral-admin/src/containers/Dashboard/FlagWidget.js index 5ce93f11b..48f39fc9e 100644 --- a/client/coral-admin/src/containers/Dashboard/FlagWidget.js +++ b/client/coral-admin/src/containers/Dashboard/FlagWidget.js @@ -13,42 +13,30 @@ const FlagWidget = (props) => { return (

Articles with the most flags

- - - - - - - - +
+
+

{lang.t('streams.article')}

+

{lang.t('dashboard.flags')}

+
+
{ assets.length ? assets.map(asset => { const flagSummary = asset.action_summaries.find(s => s.type === 'FlagAssetActionSummary'); return ( -
- - - +
+

{flagSummary ? flagSummary.actionCount : 0}

+ +

{asset.title}

+

{asset.author} — Published: {new Date(asset.created_at).toLocaleDateString()}

+ +
); }) - : + :
{lang.t('dashboard.no_flags')}
} - { /* rows in a table with a fixed height will expand and ignore height. - this extra row will expand to fill the extra space. */ - range(10 - Math.max(assets.length, 1)).map(() => ) - } - -
{lang.t('streams.article')}{lang.t('dashboard.flags')}
- -

{asset.title}

-

{asset.author} — Published: {new Date(asset.created_at).toLocaleDateString()}

- -
- -

{flagSummary ? flagSummary.actionCount : 0}

- -
{lang.t('dashboard.no_flags')}
+
+
); }; diff --git a/client/coral-admin/src/containers/Dashboard/LikeWidget.js b/client/coral-admin/src/containers/Dashboard/LikeWidget.js index 39ee708f8..e627daece 100644 --- a/client/coral-admin/src/containers/Dashboard/LikeWidget.js +++ b/client/coral-admin/src/containers/Dashboard/LikeWidget.js @@ -14,42 +14,30 @@ const LikeWidget = (props) => { return (

Articles with the most likes

- - - - - - - - +
+
+

{lang.t('streams.article')}

+

{lang.t('modqueue.likes')}

+
+
{ assets.length ? assets.map(asset => { const likeSummary = asset.action_summaries.find(s => s.type === 'LikeAssetActionSummary'); return ( -
- - - +
+

{likeSummary ? likeSummary.actionCount : 0}

+ +

{asset.title}

+

{asset.author} — Published: {new Date(asset.created_at).toLocaleDateString()}

+ +
); }) - : + :
{lang.t('dashboard.no_likes')}
} - { /* rows in a table with a fixed height will expand and ignore height. - put in some extra rows. */ - range(10 - Math.max(assets.length, 1)).map(() => ) - } - -
{lang.t('streams.article')}{lang.t('modqueue.likes')}
- -

{asset.title}

-

{asset.author} — Published: {new Date(asset.created_at).toLocaleDateString()}

- -
- -

{likeSummary ? likeSummary.actionCount : 0}

- -
{lang.t('dashboard.no_likes')}
+
+ ); }; diff --git a/client/coral-admin/src/containers/Dashboard/Widget.css b/client/coral-admin/src/containers/Dashboard/Widget.css index 96c773bef..16f86336b 100644 --- a/client/coral-admin/src/containers/Dashboard/Widget.css +++ b/client/coral-admin/src/containers/Dashboard/Widget.css @@ -1,5 +1,5 @@ :root { - --row-height: 80px; + --row-height: 50px; } .widget { @@ -19,20 +19,25 @@ } .widgetTable { - width: 100%; - border-collapse: collapse; user-select: none; height: calc(var(--row-height) * 10); } -.widgetTable thead th { +.widgetHead p { color: rgb(35, 102, 223); padding: 10px; text-align: left; text-transform: capitalize; + display: inline-block; + box-sizing: border-box; + margin-bottom: 0; } -.widgetTable thead th:last-child { +.widgetHead p:first-child { + width: 90%; +} + +.widgetHead p:last-child { width: 10%; } @@ -41,10 +46,7 @@ border-bottom: 1px solid lightgrey; color: #555; height: var(--row-height); -} - -.emptyRow { - height: var(--row-height); + padding: 10px; } .rowLinkify:last-child { @@ -55,10 +57,6 @@ background-color: #f8f8f8; } -.widgetTable tbody td { - padding: 10px; -} - .linkToAsset { display: block; text-decoration: none; @@ -85,4 +83,5 @@ color: #555; font-size: 1.3em; font-weight: 400; + float: right; } From b34758e8cce417ac96d3e25d8cf9813a070e27ff Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Wed, 8 Mar 2017 14:59:55 -0700 Subject: [PATCH 7/9] unused vars --- client/coral-admin/src/containers/Dashboard/FlagWidget.js | 1 - client/coral-admin/src/containers/Dashboard/LikeWidget.js | 1 - 2 files changed, 2 deletions(-) diff --git a/client/coral-admin/src/containers/Dashboard/FlagWidget.js b/client/coral-admin/src/containers/Dashboard/FlagWidget.js index 48f39fc9e..aab70ddaf 100644 --- a/client/coral-admin/src/containers/Dashboard/FlagWidget.js +++ b/client/coral-admin/src/containers/Dashboard/FlagWidget.js @@ -3,7 +3,6 @@ import {Link} from 'react-router'; import styles from './Widget.css'; import I18n from 'coral-framework/modules/i18n/i18n'; import translations from 'coral-admin/src/translations'; -import range from 'lodash/range'; const lang = new I18n(translations); diff --git a/client/coral-admin/src/containers/Dashboard/LikeWidget.js b/client/coral-admin/src/containers/Dashboard/LikeWidget.js index e627daece..9c72be02e 100644 --- a/client/coral-admin/src/containers/Dashboard/LikeWidget.js +++ b/client/coral-admin/src/containers/Dashboard/LikeWidget.js @@ -3,7 +3,6 @@ import {Link} from 'react-router'; import styles from './Widget.css'; import I18n from 'coral-framework/modules/i18n/i18n'; import translations from 'coral-admin/src/translations'; -import range from 'lodash/range'; const lang = new I18n(translations); From a0953c068906209a3265d1d5458185a35f372ac0 Mon Sep 17 00:00:00 2001 From: David Jay Date: Thu, 9 Mar 2017 13:33:00 -0500 Subject: [PATCH 8/9] Adding proptypes to loadmore component. --- .../containers/ModerationQueue/components/LoadMore.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/client/coral-admin/src/containers/ModerationQueue/components/LoadMore.js b/client/coral-admin/src/containers/ModerationQueue/components/LoadMore.js index 5ac193525..f8d3f0ed4 100644 --- a/client/coral-admin/src/containers/ModerationQueue/components/LoadMore.js +++ b/client/coral-admin/src/containers/ModerationQueue/components/LoadMore.js @@ -1,4 +1,4 @@ -import React from 'react'; +import React, {PropTypes} from 'react'; import {Button} from 'coral-ui'; import styles from './styles.css'; @@ -19,4 +19,13 @@ const LoadMore = ({comments, loadMore, sort, tab, assetId, showLoadMore}) => } ; +LoadMore.propTypes = { + comments: PropTypes.array.isRequired, + loadMore: PropTypes.func.isRequired, + sort: PropTypes.oneOf(['CHRONOLOGICAL', 'REVERSE_CHRONOLOGICAL']).isRequired, + tab: PropTypes.oneOf(['rejected', 'premod', 'flagged']).isRequired, + assetId: PropTypes.string, + showLoadMore: PropTypes.bool.isRequired +}; + export default LoadMore; From b94401a8cfeb93e28dbab47d1420117c61dcc938 Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Thu, 9 Mar 2017 11:05:18 -0700 Subject: [PATCH 9/9] make only the title clickable --- client/coral-admin/src/containers/Dashboard/FlagWidget.js | 2 +- client/coral-admin/src/containers/Dashboard/LikeWidget.js | 2 +- client/coral-admin/src/containers/Dashboard/Widget.css | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/client/coral-admin/src/containers/Dashboard/FlagWidget.js b/client/coral-admin/src/containers/Dashboard/FlagWidget.js index 6412df7f0..7d2ffe17a 100644 --- a/client/coral-admin/src/containers/Dashboard/FlagWidget.js +++ b/client/coral-admin/src/containers/Dashboard/FlagWidget.js @@ -27,8 +27,8 @@ const FlagWidget = (props) => {

{flagSummary ? flagSummary.actionCount : 0}

{asset.title}

-

{asset.author} — Published: {new Date(asset.created_at).toLocaleDateString()}

+

{asset.author} — Published: {new Date(asset.created_at).toLocaleDateString()}

); }) diff --git a/client/coral-admin/src/containers/Dashboard/LikeWidget.js b/client/coral-admin/src/containers/Dashboard/LikeWidget.js index d01259c5d..436fbcaf3 100644 --- a/client/coral-admin/src/containers/Dashboard/LikeWidget.js +++ b/client/coral-admin/src/containers/Dashboard/LikeWidget.js @@ -28,8 +28,8 @@ const LikeWidget = (props) => {

{likeSummary ? likeSummary.actionCount : 0}

{asset.title}

-

{asset.author} — Published: {new Date(asset.created_at).toLocaleDateString()}

+

{asset.author} — Published: {new Date(asset.created_at).toLocaleDateString()}

); }) diff --git a/client/coral-admin/src/containers/Dashboard/Widget.css b/client/coral-admin/src/containers/Dashboard/Widget.css index db4041dbd..124663cea 100644 --- a/client/coral-admin/src/containers/Dashboard/Widget.css +++ b/client/coral-admin/src/containers/Dashboard/Widget.css @@ -64,7 +64,7 @@ } .linkToAsset { - display: block; + display: inline-block; text-decoration: none; }