Skip to content

Commit

Permalink
rendering comments on time
Browse files Browse the repository at this point in the history
  • Loading branch information
Huzaif-Ahmed committed Apr 1, 2024
1 parent cebd301 commit a8b59f8
Show file tree
Hide file tree
Showing 3 changed files with 156 additions and 157 deletions.
11 changes: 5 additions & 6 deletions src/components/TutorialPage/components/Commnets/CommentBox.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -35,25 +35,24 @@ const CommentBox = ({ commentsArray, tutorialId }) => {
const dispatch = useDispatch();
const [comments, setComments] = useState([]);
const [currCommentCount, setCurrCommentCount] = useState(3);
const handleSubmit = async(comment) => {
const handleSubmit = async comment => {
const commentData = {
content: comment,
replyTo: tutorialId,
tutorial_id: tutorialId,
createdAt: firestore.FieldValue.serverTimestamp(),
userId: "codelabzuser"
};
let x=await addComment(commentData)(firebase, firestore, dispatch);
console.log("new id ",x);
setComments(prevComments => [...prevComments, x])
let x = await addComment(commentData)(firebase, firestore, dispatch);
console.log("new id ", x);
setComments(prevComments => [...prevComments, x]);
};

useEffect(() => {
setComments(commentsArray?.slice(0, currCommentCount));

}, [currCommentCount, commentsArray]);

console.log(commentsArray,comments, currCommentCount);
console.log(commentsArray, comments, currCommentCount);

const increaseCommentCount = () => {
setCurrCommentCount(state => state + 3);
Expand Down
8 changes: 4 additions & 4 deletions src/store/actions/tutorialPageActions.js
Original file line number Diff line number Diff line change
Expand Up @@ -195,12 +195,12 @@ export const getCommentReply =
export const addComment = comment => async (firebase, firestore, dispatch) => {
try {
dispatch({ type: actions.ADD_COMMENT_START });
let x=""
let x = "";
await firestore
.collection("cl_comments")
.add(comment)
.then(docref => {
x=docref.id;
x = docref.id;
console.log("docref", docref.id);
firestore.collection("cl_comments").doc(docref.id).update({
comment_id: docref.id
Expand All @@ -216,9 +216,9 @@ export const addComment = comment => async (firebase, firestore, dispatch) => {
})
.then(() => {
dispatch({ type: actions.ADD_COMMENT_SUCCESS });
return x ;
return x;
});
return x;
return x;
} catch (e) {
dispatch({ type: actions.ADD_COMMENT_FAILED, payload: e.message });
}
Expand Down
294 changes: 147 additions & 147 deletions src/store/actions/tutorialsActions.js
Original file line number Diff line number Diff line change
Expand Up @@ -230,36 +230,36 @@ export const getCurrentTutorialData =

export const addNewTutorialStep =
({ owner, tutorial_id, title, time, id }) =>
async (firebase, firestore, dispatch) => {
try {
dispatch({ type: actions.CREATE_TUTORIAL_STEP_START });
async (firebase, firestore, dispatch) => {
try {
dispatch({ type: actions.CREATE_TUTORIAL_STEP_START });

await firestore
.collection("tutorials")
.doc(tutorial_id)
.collection("steps")
.doc(id)
.set({
content: `Switch to editor mode to begin <b>${title}</b> step`,
id,
time,
title,
visibility: true,
deleted: false
});
await firestore
.collection("tutorials")
.doc(tutorial_id)
.collection("steps")
.doc(id)
.set({
content: `Switch to editor mode to begin <b>${title}</b> step`,
id,
time,
title,
visibility: true,
deleted: false
});

await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);

dispatch({ type: actions.CREATE_TUTORIAL_STEP_SUCCESS });
} catch (e) {
console.log("CREATE_TUTORIAL_STEP_FAIL", e.message);
dispatch({ type: actions.CREATE_TUTORIAL_STEP_FAIL, payload: e.message });
}
};
dispatch({ type: actions.CREATE_TUTORIAL_STEP_SUCCESS });
} catch (e) {
console.log("CREATE_TUTORIAL_STEP_FAIL", e.message);
dispatch({ type: actions.CREATE_TUTORIAL_STEP_FAIL, payload: e.message });
}
};

export const clearCreateTutorials = () => dispatch =>
dispatch({ type: actions.CLEAR_CREATE_TUTORIALS_STATE });
Expand Down Expand Up @@ -305,78 +305,78 @@ export const setCurrentStepContent =

export const hideUnHideStep =
(owner, tutorial_id, step_id, visibility) =>
async (firebase, firestore, dispatch) => {
try {
/* not being used */
// const type = await checkUserOrOrgHandle(owner)(firebase);
await firestore
.collection("tutorials")
.doc(tutorial_id)
.collection("steps")
.doc(step_id)
.update({
[`visibility`]: !visibility,
updatedAt: firestore.FieldValue.serverTimestamp()
});
async (firebase, firestore, dispatch) => {
try {
/* not being used */
// const type = await checkUserOrOrgHandle(owner)(firebase);
await firestore
.collection("tutorials")
.doc(tutorial_id)
.collection("steps")
.doc(step_id)
.update({
[`visibility`]: !visibility,
updatedAt: firestore.FieldValue.serverTimestamp()
});

await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e.message);
}
};
await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e.message);
}
};

export const publishUnpublishTutorial =
(owner, tutorial_id, isPublished) =>
async (firebase, firestore, dispatch) => {
try {
await firestore
.collection("tutorials")
.doc(tutorial_id)
.update({
["isPublished"]: !isPublished
});
async (firebase, firestore, dispatch) => {
try {
await firestore
.collection("tutorials")
.doc(tutorial_id)
.update({
["isPublished"]: !isPublished
});

getCurrentTutorialData(owner, tutorial_id)(firebase, firestore, dispatch);
} catch (e) {
console.log(e.message);
}
};
getCurrentTutorialData(owner, tutorial_id)(firebase, firestore, dispatch);
} catch (e) {
console.log(e.message);
}
};

export const removeStep =
(owner, tutorial_id, step_id, current_step_no) =>
async (firebase, firestore, dispatch) => {
try {
await firestore
.collection("tutorials")
.doc(tutorial_id)
.collection("steps")
.doc(step_id)
.delete()

// const data = await firestore
// .collection("tutorials")
// .doc(tutorial_id)
// .collection("steps")
// .doc(step_id)
// .get();

await setCurrentStepNo(
current_step_no > 0 ? current_step_no - 1 : current_step_no
)(dispatch);

await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e.message);
}
};
async (firebase, firestore, dispatch) => {
try {
await firestore
.collection("tutorials")
.doc(tutorial_id)
.collection("steps")
.doc(step_id)
.delete();

// const data = await firestore
// .collection("tutorials")
// .doc(tutorial_id)
// .collection("steps")
// .doc(step_id)
// .get();

await setCurrentStepNo(
current_step_no > 0 ? current_step_no - 1 : current_step_no
)(dispatch);

await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e.message);
}
};

export const setCurrentStep = data => async dispatch =>
dispatch({ type: actions.SET_EDITOR_DATA, payload: data });
Expand Down Expand Up @@ -465,69 +465,69 @@ export const remoteTutorialImages =

export const updateStepTitle =
(owner, tutorial_id, step_id, step_title) =>
async (firebase, firestore, dispatch) => {
try {
const dbPath = `tutorials/${tutorial_id}/steps`;
await firestore
.collection(dbPath)
.doc(step_id)
.update({
[`title`]: step_title,
updatedAt: firestore.FieldValue.serverTimestamp()
});
async (firebase, firestore, dispatch) => {
try {
const dbPath = `tutorials/${tutorial_id}/steps`;
await firestore
.collection(dbPath)
.doc(step_id)
.update({
[`title`]: step_title,
updatedAt: firestore.FieldValue.serverTimestamp()
});

await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e);
}
};
await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e);
}
};

export const updateStepTime =
(owner, tutorial_id, step_id, step_time) =>
async (firebase, firestore, dispatch) => {
try {
const dbPath = `tutorials/${tutorial_id}/steps`;

await firestore
.collection(dbPath)
.doc(step_id)
.update({
[`time`]: step_time,
updatedAt: firestore.FieldValue.serverTimestamp()
});
async (firebase, firestore, dispatch) => {
try {
const dbPath = `tutorials/${tutorial_id}/steps`;

await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e.message);
}
};
await firestore
.collection(dbPath)
.doc(step_id)
.update({
[`time`]: step_time,
updatedAt: firestore.FieldValue.serverTimestamp()
});

await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e.message);
}
};

export const setTutorialTheme =
({ tutorial_id, owner, bgColor, textColor }) =>
async (firebase, firestore, dispatch) => {
try {
const dbPath = `tutorials`;
async (firebase, firestore, dispatch) => {
try {
const dbPath = `tutorials`;

await firestore.collection(dbPath).doc(tutorial_id).update({
text_color: textColor,
background_color: bgColor,
updatedAt: firestore.FieldValue.serverTimestamp()
});
await firestore.collection(dbPath).doc(tutorial_id).update({
text_color: textColor,
background_color: bgColor,
updatedAt: firestore.FieldValue.serverTimestamp()
});

await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e.message);
}
};
await getCurrentTutorialData(owner, tutorial_id)(
firebase,
firestore,
dispatch
);
} catch (e) {
console.log(e.message);
}
};

0 comments on commit a8b59f8

Please sign in to comment.