forked from pjho/Elo-Score-Board
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathfirebase.config.json
More file actions
50 lines (46 loc) · 2.31 KB
/
firebase.config.json
File metadata and controls
50 lines (46 loc) · 2.31 KB
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
41
42
43
44
45
46
47
48
49
50
{
"rules": {
".write": false,
".read": false,
"history": {
".read": true,
".write": "auth != null",
"$playersId": {
"$monthYear" :{
"$historyId": {
".validate": "newData.hasChildren(['dateTime', 'winner', 'winnerOldScore', 'winnerNewScore', 'loser', 'loserOldScore', 'loserNewScore'])",
"$other": { ".validate": false },
"dateTime": { ".validate": "newData.isNumber()" },
"winner": { ".validate": "newData.isString() && newData.val().length > 1 && newData.val().length < 100" },
"winnerOldScore": { ".validate": "newData.isNumber()" },
"winnerNewScore": { ".validate": "newData.isNumber()" },
"loser": { ".validate": "newData.isString() && newData.val().length > 1 && newData.val().length < 100" },
"loserOldScore": { ".validate": "newData.isNumber()" },
"loserNewScore": { ".validate": "newData.isNumber()" }
}
}
}
},
"players": {
".read": true,
".write": "auth != null",
"$playersId": {
".validate": "newData.hasChildren(['name', 'image', 'league', 'score', 'wins', 'losses'])",
"$other": { ".validate": false },
"name": { ".validate": "newData.isString() && newData.val().length > 1 && newData.val().length < 100" },
"image": { ".validate": "newData.val() === false || newData.isString() && newData.val().matches(/^https?:\\/\\/.+\\.(png|jpg|jpeg|gif)$/i) && newData.val().length < 300" },
"league": { ".validate": "newData.isString() && newData.val().length > 1 && newData.val().length < 100" },
"score": { ".validate": "newData.isNumber()" },
"topScore": { ".validate": "newData.isNumber()" },
"bottomScore": { ".validate": "newData.isNumber()" },
"streak": { ".validate": "newData.isNumber()" },
"bestStreak": { ".validate": "newData.isNumber()" },
"worstStreak": { ".validate": "newData.isNumber()" },
"wins": { ".validate": "newData.isNumber()" },
"losses": { ".validate": "newData.isNumber()" },
"lastPlayed": { ".validate": "newData.isNumber()" },
"created": { ".validate": "newData.isNumber()" }
}
}
}
}