playlists
This commit is contained in:
@@ -5,7 +5,11 @@ import { createContext, useContext, useGlobal } from "reactn";
|
||||
|
||||
import { useState } from "react";
|
||||
import { checkIfEmailIsValid } from "../actions/signupActions";
|
||||
import firebase, { usersRef } from "../config/firebase";
|
||||
import firebase, {
|
||||
playlistsRef,
|
||||
projectsRef,
|
||||
usersRef,
|
||||
} from "../config/firebase";
|
||||
|
||||
export const UserDataContext = createContext();
|
||||
|
||||
@@ -21,7 +25,8 @@ export default ({ children }) => {
|
||||
const [currentUserRoles] = useGlobal("currentUserRoles");
|
||||
const [userProjects, setUserProjects] = useState([]);
|
||||
const [userLikedProjects, setUserLikedProjects] = useState([]);
|
||||
const [userLikedMusic, setUserLikedMusic] = useState([]);
|
||||
const [userPlaylists, setUserPlaylists] = useState([]);
|
||||
|
||||
useDataFromRef({
|
||||
ref: currentUID ? usersRef.doc(currentUID) : null,
|
||||
simpleRef: true,
|
||||
@@ -40,9 +45,7 @@ export default ({ children }) => {
|
||||
// Subscribe to user's projects (musics)
|
||||
useDataFromRef({
|
||||
ref: currentUID
|
||||
? firebase
|
||||
.firestore()
|
||||
.collection("projects")
|
||||
? projectsRef
|
||||
.where("userId", "==", currentUID)
|
||||
.orderBy("updatedAt", "desc")
|
||||
: null,
|
||||
@@ -56,9 +59,7 @@ export default ({ children }) => {
|
||||
// Subscribe to user's liked projects
|
||||
useDataFromRef({
|
||||
ref: currentUID
|
||||
? firebase
|
||||
.firestore()
|
||||
.collection("projects")
|
||||
? projectsRef
|
||||
.where("likedBy", "array-contains", currentUID)
|
||||
.orderBy("updatedAt", "desc")
|
||||
: null,
|
||||
@@ -69,20 +70,14 @@ export default ({ children }) => {
|
||||
onUpdate: (list) => setUserLikedProjects(Array.isArray(list) ? list : []),
|
||||
});
|
||||
|
||||
// userLiked music
|
||||
// Subscribe to user's playlists
|
||||
useDataFromRef({
|
||||
ref: currentUID
|
||||
? firebase
|
||||
.firestore()
|
||||
.collection("projects")
|
||||
.where("likedBy", "array-contains", currentUID)
|
||||
.orderBy("updatedAt", "desc")
|
||||
: null,
|
||||
ref: currentUID ? playlistsRef.where("createdBy", "==", currentUID) : null,
|
||||
simpleRef: false,
|
||||
listener: true,
|
||||
condition: !!currentUID,
|
||||
refreshArray: [currentUID],
|
||||
onUpdate: (list) => setUserLikedMusic(Array.isArray(list) ? list : []),
|
||||
onUpdate: (list) => setUserPlaylists(Array.isArray(list) ? list : []),
|
||||
});
|
||||
|
||||
const updatePendingUserData = (newData) => {
|
||||
@@ -149,8 +144,6 @@ export default ({ children }) => {
|
||||
cleanData.creationTimestamp = new Date();
|
||||
}
|
||||
|
||||
console.log("cleanData", cleanData);
|
||||
|
||||
await usersRef.doc(dynamicUID).set(cleanData, { merge: true });
|
||||
|
||||
if (shouldSetTooltip) {
|
||||
@@ -197,6 +190,7 @@ export default ({ children }) => {
|
||||
currentUserData,
|
||||
userProjects,
|
||||
userLikedProjects,
|
||||
userPlaylists,
|
||||
|
||||
setCurrentUserData,
|
||||
|
||||
|
||||
Reference in New Issue
Block a user