forked from hmajumdar/skill_share
-
Notifications
You must be signed in to change notification settings - Fork 0
/
populate-skilldb.ts
executable file
·48 lines (32 loc) · 1.11 KB
/
populate-skilldb.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import {database, initializeApp} from 'firebase';
import {firebaseConfig} from './src/environments/firebase.config';
import {skillData} from './skill-data';
initializeApp(firebaseConfig);
const usersRef = database().ref('users');
const skillsRef = database().ref('skills');
skillData.users.forEach( user => {
console.log('adding user', user.username);
const userRef = usersRef.push({
username: user.username,
email: user.email,
location: user.location,
occupation: user.occupation,
photo: user.photo
});
let skillKeysPerUser = [];
user.skills.forEach((skill: any) => {
console.log('adding skill ', skill.skill_name);
skillKeysPerUser.push(skillsRef.push({
description: skill.description,
skill_name: skill.skill_name,
userId: userRef.key
}).key);
});
const association = database().ref('skillsPerUser');
const skillsPerUser = association.child(userRef.key);
skillKeysPerUser.forEach(skillKey => {
console.log('adding skill to user ');
const skillUserAssociation = skillsPerUser.child(skillKey);
skillUserAssociation.set(true);
});
});