Skip to content

Commit 7bfa739

Browse files
committed
fixed bug in project posts. previously wastn recognizing onEditPost. Works now
1 parent 4ed056c commit 7bfa739

File tree

2 files changed

+52
-37
lines changed

2 files changed

+52
-37
lines changed

src/components/ui/modals/EditPostModal.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@ import { Button,
66
ModalFooter,
77
Form,
88
FormGroup,
9+
Label,
910
Input } from 'reactstrap';
1011

11-
const EditPostModal = ({ onSavePost, description, onChange, editable, toggle }) => (
12+
const EditPostModal = ({ post, onSavePost, description, onChange, editable, toggle }) => (
1213
<Modal isOpen={editable} toggle={toggle} keyboard={false} backdrop="static">
1314
<ModalHeader>Edit post</ModalHeader>
1415
<ModalBody>

src/components/ui/project/sections/ProjectPosts.js

Lines changed: 50 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ import PostDropdown from '../../dropdowns/PostDropdown';
66
import EditPostModal from '../../modals/EditPostModal';
77

88
import withAuthorization from '../../../Authentication/withAuthorization';
9+
import AuthUserContext from '../../../Authentication/AuthUserContext';
10+
911
import { db } from '../../../../firebase';
1012

1113
const PostInput = ({ createPost, post_details, onChange }) => (
@@ -31,7 +33,7 @@ const Post = ({ children, index }) => (
3133
</div>
3234
);
3335

34-
const PostHeader = ({ timestamp, onRemovePost, canEdit, onEditPost }) => (
36+
const PostHeader = ({ timestamp, onRemovePost, canEdit, onEditPost, onSavePost }) => (
3537
<div style={{ display: 'flex', justifyContent: 'space-between' }}>
3638
<p>{timestamp}</p>
3739
{canEdit !== false && <PostDropdown onRemovePost={onRemovePost} onEditPost={onEditPost} />}
@@ -107,7 +109,7 @@ class ProfilePosts extends Component {
107109
event.preventDefault();
108110

109111
const { description } = this.state;
110-
const { projectId } = this.props;
112+
const { isOwner, projectId } = this.props;
111113
let date = new Date();
112114

113115
const docId = await db.createProjectPostWithFields(description, date, projectId);
@@ -131,50 +133,62 @@ class ProfilePosts extends Component {
131133
};
132134

133135
onSavePost = async () => {
134-
const { posts, description, index } = this.state;
136+
const { editable, posts, description, index } = this.state;
137+
console.log(description);
138+
console.log(index);
139+
this.setState({ editable: !editable });
135140
const { projectId } = this.props;
136-
137-
this.setState(prevState => ({ editable: !prevState.editable }));
138141
await db.editProjectPost(projectId, posts[index].pid, description);
139142
const newPost = [ ...posts ];
140143
newPost[index].description = description;
141144
this.setState({ posts: newPost });
142145
};
143146

144147
render() {
145-
const { isOwner } = this.props;
146-
const { posts, description, editable } = this.state;
148+
const { isOwner, projectId } = this.props;
149+
const { posts, description, editable, index } = this.state;
150+
console.log(projectId);
147151
return (
148-
<SizeMe>
149-
{({ size }) => (
150-
<div
151-
style={{ paddingLeft: size.width < 720 ? 0 : 50,
152-
paddingRight: size.width < 720 ? 0 : 100 }}
153-
>
154-
<div>
155-
{isOwner ? (
156-
<AuthSocialView
157-
post_details={description}
158-
createPost={this.createPost}
159-
onChange={event => this.setState({ description: event.target.value })}
160-
posts={posts}
161-
onRemovePost={this.onRemovePost}
162-
onEditPost={this.onEditPost}
163-
/>
164-
) : (
165-
<GuestSocialView posts={posts} />
152+
<div>
153+
<AuthUserContext.Consumer>
154+
{authUser => (
155+
<SizeMe>
156+
{({ size }) => (
157+
<div
158+
style={{ paddingLeft: size.width < 720 ? 0 : 50,
159+
paddingRight: size.width < 720 ? 0 : 100 }}
160+
>
161+
{editable ? (
162+
<EditPostModal
163+
post={posts[index].pid}
164+
onSavePost={this.onSavePost}
165+
description={description}
166+
onChange={event => this.setState({ description: event.target.value })}
167+
editable={editable}
168+
toggle={event => this.setState({ editable: !editable })}
169+
/>
170+
) : (
171+
<div>
172+
{isOwner ? (
173+
<AuthSocialView
174+
post_details={description}
175+
createPost={this.createPost}
176+
onChange={event => this.setState({ description: event.target.value })}
177+
posts={posts}
178+
onRemovePost={this.onRemovePost}
179+
onEditPost={this.onEditPost}
180+
/>
181+
) : (
182+
<GuestSocialView posts={posts} />
183+
)}
184+
</div>
185+
)}
186+
</div>
166187
)}
167-
</div>
168-
<EditPostModal
169-
onSavePost={this.onSavePost}
170-
description={description}
171-
onChange={event => this.setState({ description: event.target.value })}
172-
editable={editable}
173-
toggle={() => this.setState({ editable: !editable })}
174-
/>
175-
</div>
176-
)}
177-
</SizeMe>
188+
</SizeMe>
189+
)}
190+
</AuthUserContext.Consumer>
191+
</div>
178192
);
179193
}
180194
}

0 commit comments

Comments
 (0)