/**
* The Runnerscreen Page
*/
import App from '../lib/App';
import BasicTools from '../lib/basicTools';
import Firestore from '../lib/firestore';
// classes used
const basic = new BasicTools();
const firestore = new Firestore();
// zeker
const runnerscreenTemplate = require('../templates/runnerscreen.hbs');
export default () => {
// set the title of this page (defineren pagina)
const title = 'YOURTAG';
const message = 'Geef de volgende code in die je krijgt van de tagger.';
// render the template (sure) duidelijk maken voor de hbs
App.render(runnerscreenTemplate({
title, message, loginbackpage: true,
}));
// users in lobby
App.firebase.getAuth().onAuthStateChanged((currentUser) => {
const code = basic.Selector('.a-runnercode');
const joinBtn = basic.Selector('.a-button__start');
// functie van snapshot user
if (currentUser) {
joinBtn.addEventListener('click', () => {
// storage the code in the localstorage
const codeinput = code.value;
// localStorage.setItem('code', codeinput);
// const code2 = localStorage.getItem('code');
// console.log(code2);
firestore.GetData('user').get().then((snapshot) => {
snapshot.docs.forEach((doc) => {
const runners = [];
const runner = doc.data().displayName;
runners.push(runner);
if (currentUser.uid === doc.id) {
firestore.UserDb(currentUser.uid).update({
currentGame: code.value,
});
}
// localStorage('profiles', JSON.stringify(runners));
});
});
firestore.GetData('game').get().then((gamesnap) => {
if (gamesnap.docs.filter((doc) => doc.id === codeinput)) {
console.log(gamesnap.docs.filter((doc) => console.log(doc.id)));
// console.log(codeinput);
firestore.GetData('Gamehistory').get().then((snapshot) => {
const gamehistory = snapshot.docs.filter((doc) => doc.gameId);
if ((gamehistory === codeinput)) {
// user id already existes?
// console.log('test');
const results = snapshot.docs.filter((doc) => doc.uid !== currentUser.uid);
// console.log(results);
if (results.length > 0) {
const games = results.filter((result) => result.gameId === codeinput);
console.log(games);
if (games.length > 0) {
firestore.Gamehistory().set({
gameId: codeinput.toString(),
userId: currentUser.uid,
});
} else {
App.router.navigate('/roomTaggerscreen');
console.log('game already made');
}
} else {
firestore.Gamehistory().set({
gameId: codeinput.toString(),
userId: currentUser.uid,
});
}
}
});
} else {
console.log('Game does not existes');
}
});
});
}
});
};
Я уже много пробовал, вы видите это в моем коде ниже. Но почему-то мои инвайты пока не работают. Может быть, у кого-то из вас есть хорошее решение или оно поможет мне на правильном пути. Это для школьного проекта, и я должен сделать игру с тегами. Я делаю его снова и снова, даже кода не существует. База данных gamehistory заполнена кодом, который я ввел.