diff --git a/client/coral-embed-stream/src/CommentStream.js b/client/coral-embed-stream/src/CommentStream.js
index 40d249088..be40ecff6 100644
--- a/client/coral-embed-stream/src/CommentStream.js
+++ b/client/coral-embed-stream/src/CommentStream.js
@@ -3,7 +3,7 @@ import {
itemActions,
Notification,
notificationActions,
- authActions
+ authActions,
} from '../../coral-framework';
import {connect} from 'react-redux';
import CommentBox from '../../coral-plugin-commentbox/CommentBox';
@@ -19,6 +19,8 @@ import LikeButton from '../../coral-plugin-likes/LikeButton';
import PermalinkButton from '../../coral-plugin-permalinks/PermalinkButton';
import SignInContainer from '../../coral-sign-in/containers/SignInContainer';
import UserBox from '../../coral-sign-in/components/UserBox';
+import {TabBar, Tab, TabContent} from '../../coral-ui';
+import SettingsContainer from '../../coral-settings/containers/SettingsContainer';
const {addItem, updateItem, postItem, getStream, postAction, deleteAction, appendItemArray} = itemActions;
const {addNotification, clearNotification} = notificationActions;
@@ -46,11 +48,27 @@ const mapDispatchToProps = (dispatch) => ({
},
appendItemArray: (item, property, value, addToFront, itemType) =>
dispatch(appendItemArray(item, property, value, addToFront, itemType)),
- logout: () => dispatch(logout())
+ logout: () => dispatch(logout()),
});
class CommentStream extends Component {
+ constructor (props) {
+ super(props);
+
+ this.state = {
+ activeTab: 0
+ };
+
+ this.changeTab = this.changeTab.bind(this);
+ }
+
+ changeTab (tab) {
+ this.setState({
+ activeTab: tab
+ });
+ }
+
static propTypes = {
items: PropTypes.object.isRequired,
addItem: PropTypes.func.isRequired,
@@ -90,137 +108,148 @@ class CommentStream extends Component {
const rootItem = this.props.items.assets && this.props.items.assets[rootItemId];
const {actions, users, comments} = this.props.items;
const {loggedIn, user, showSignInDialog} = this.props.auth;
+ const {activeTab} = this.state;
return
{
rootItem
?
-
- {
- rootItem.comments && rootItem.comments.map((commentId) => {
- const comment = comments[commentId];
- return
-
-
-
-
-
-
-
-
-
- {
- comment.children &&
- comment.children.map((replyId) => {
- let reply = this.props.items.comments[replyId];
- return
-
-
-
-
-
-
+
+ Settings
+
+
+
+
+ {
+ rootItem.comments && rootItem.comments.map((commentId) => {
+ const comment = comments[commentId];
+ return
+
+
+
+
+
+
+
+
+
+ {
+ comment.children &&
+ comment.children.map((replyId) => {
+ let reply = this.props.items.comments[replyId];
+ return
-
-
- ;
- })
- }
- ;
- })
- }
-
+ ;
+ })
+ }
+ ;
+ })
+ }
+
+
+
+
+
: 'Loading'
}
diff --git a/client/coral-embed-stream/style/default.css b/client/coral-embed-stream/style/default.css
index 174f3ef16..2da0c09c4 100644
--- a/client/coral-embed-stream/style/default.css
+++ b/client/coral-embed-stream/style/default.css
@@ -154,11 +154,6 @@ hr {
color: #F00;
}
-/* Comment count styles */
-.coral-plugin-comment-count-text {
- margin-bottom: 15px;
-}
-
.coral-plugin-pubdate-text {
color: #CCC;
display: inline-block;
diff --git a/client/coral-framework/index.js b/client/coral-framework/index.js
index 837c8956a..7b721badc 100644
--- a/client/coral-framework/index.js
+++ b/client/coral-framework/index.js
@@ -11,5 +11,5 @@ export {
itemActions,
I18n,
notificationActions,
- authActions
+ authActions,
};
diff --git a/client/coral-framework/reducers/index.js b/client/coral-framework/reducers/index.js
index b38de61ae..90eaa7cb7 100644
--- a/client/coral-framework/reducers/index.js
+++ b/client/coral-framework/reducers/index.js
@@ -14,5 +14,5 @@ export default combineReducers({
config,
items,
notification,
- auth
+ auth,
});
diff --git a/client/coral-settings/components/Bio.css b/client/coral-settings/components/Bio.css
new file mode 100644
index 000000000..8c36b989d
--- /dev/null
+++ b/client/coral-settings/components/Bio.css
@@ -0,0 +1,21 @@
+.bio textarea {
+ width: 100%;
+ box-sizing: border-box;
+ border-radius: 2px;
+ min-height: 100px;
+ margin: 10px 0;
+ border: solid 1px #d8d8d8;
+}
+
+.bio h1 {
+ font-size: 16px;
+ margin: 3px 0;
+}
+
+.bio p {
+ margin: 3px 0;
+}
+
+.actions {
+ text-align: right;
+}
diff --git a/client/coral-settings/components/Bio.js b/client/coral-settings/components/Bio.js
new file mode 100644
index 000000000..b82587322
--- /dev/null
+++ b/client/coral-settings/components/Bio.js
@@ -0,0 +1,16 @@
+import React from 'react';
+import styles from './Bio.css';
+import {Button} from '../../coral-ui';
+
+export default () => (
+
+
Bio
+
Tell the community about yourself
+
+
+
+
+
+
+);
+
diff --git a/client/coral-settings/components/CommentHistory.css b/client/coral-settings/components/CommentHistory.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/client/coral-settings/components/CommentHistory.js b/client/coral-settings/components/CommentHistory.js
new file mode 100644
index 000000000..3160c8a88
--- /dev/null
+++ b/client/coral-settings/components/CommentHistory.js
@@ -0,0 +1,15 @@
+import React from 'react';
+import styles from './CommentHistory.css';
+
+export default ({comments = []}) => (
+
+
Comments
+
+ {comments.map(() => (
+ -
+ {/* Comment Data*/}
+
+ ))}
+
+
+);
diff --git a/client/coral-settings/components/SettingsHeader.css b/client/coral-settings/components/SettingsHeader.css
new file mode 100644
index 000000000..f97c4731e
--- /dev/null
+++ b/client/coral-settings/components/SettingsHeader.css
@@ -0,0 +1,8 @@
+.header h1 {
+ margin: 4px 0;
+}
+
+.header h2 {
+ font-size: 13px;
+}
+
diff --git a/client/coral-settings/components/SettingsHeader.js b/client/coral-settings/components/SettingsHeader.js
new file mode 100644
index 000000000..24d68af9a
--- /dev/null
+++ b/client/coral-settings/components/SettingsHeader.js
@@ -0,0 +1,10 @@
+import React from 'react';
+import styles from './SettingsHeader.css';
+
+export default () => (
+
+
Jackson
+ jackson_persona@gmail.com
+
+);
+
diff --git a/client/coral-settings/containers/SettingsContainer.js b/client/coral-settings/containers/SettingsContainer.js
new file mode 100644
index 000000000..224eb6c6a
--- /dev/null
+++ b/client/coral-settings/containers/SettingsContainer.js
@@ -0,0 +1,61 @@
+import React, {Component} from 'react';
+import {connect} from 'react-redux';
+
+import {TabBar, Tab} from '../../coral-ui';
+
+import Bio from '../components/Bio';
+import CommentHistory from '../components/CommentHistory';
+import SettingsHeader from '../components/SettingsHeader';
+
+class SignInContainer extends Component {
+ constructor (props) {
+ super(props);
+ this.state = {
+ activeTab: 0
+ };
+
+ this.handleTabChange = this.handleTabChange.bind(this);
+ }
+
+ componentWillMount () {
+ // Get Bio
+ // Fetch commentHistory
+ }
+
+ handleTabChange(tab) {
+ this.setState({
+ activeTab: tab
+ });
+ }
+
+ render() {
+ //const {embedStream} = this.props;
+ const {activeTab} = this.state;
+ return (
+
+
+
+ All Comments (120)
+ Profile Settings
+
+ { activeTab === 0 && }
+ { activeTab === 1 && }
+
+ );
+ }
+}
+
+const mapStateToProps = () => ({
+});
+
+const mapDispatchToProps = dispatch => ({
+ getBio: () => dispatch(),
+ getHistory: () => dispatch(),
+ handleSaveChanges: () => dispatch(),
+ handleCancel: () => dispatch()
+});
+
+export default connect(
+ mapStateToProps,
+ mapDispatchToProps
+)(SignInContainer);
diff --git a/client/coral-settings/index.js b/client/coral-settings/index.js
new file mode 100644
index 000000000..e69de29bb
diff --git a/client/coral-settings/translations.js b/client/coral-settings/translations.js
new file mode 100644
index 000000000..e69de29bb
diff --git a/client/coral-sign-in/components/ForgotContent.js b/client/coral-sign-in/components/ForgotContent.js
index c9a99f6d7..bc06ae5f1 100644
--- a/client/coral-sign-in/components/ForgotContent.js
+++ b/client/coral-sign-in/components/ForgotContent.js
@@ -34,7 +34,7 @@ class ForgotContent extends React.Component {
id="email"
name="email" />
-