JSFiddle - React, Tailwind, and code Playground
by Ryan Duffy
HTML
<script src="https://parse.com/downloads/javascript/parse/latest/min.js"></script>
JavaScript
Parse.initialize("vJQ94NavOWF8FLteB27syCBJa001CkdwqoYmIpx1", "Cb9JhAOSu6M8Dm3mj3NuiyzC6tVGsgZbrdKZeMQ9");
loge = function () {
console.log.apply(console, ["error"].concat(arguments));
};
(function() {
function notifyPlayers(players, event, data, callback) {
callback.success();
}
var Game = {
Pending: 0,
Active: 10,
Complete: 20
};
var Invitation = {
Pending: 0,
Accepted: 10,
Declined: 20
};
var currentUser;
function createGame(callback) {
var game = Parse.Object("Game");
game.set({
status: Game.Pending,
playerCount: 0,
createdBy:currentUser
});
game.save(callback);
}
function newGame(playerEmails, playerIDs, callback) {
createGame({
success: function (game) {
playerEmails = playerEmails || [];
playerIDs = playerIDs || [];
createPlayers(game, playerEmails, playerIDs, {
success: function (players) {
game.set("playerCount", players.length);
var me = findMe(players);
if(!me) {
callback.error("No player created for user");
return;
}
startRound(game, players, me.id, {
success: function(o) {
notifyPlayers(o.game.players, "onInvite", {game:o.game.objectId}, {
success:function() {
callback.success(o);
},
error:function(response) {
console.error("Pusher onInvite failure"+JSON.stringify(response));
callback.success(o);
...