Example #1
0
    bool createUpdateUserPlays()
    {
        string targetUri = serverUriPath + userAccessUriPath;

        targetUri += ("saveScores/");

        int  qntSavedInDB = 0;
        bool success      = false;
        Queue <User.UserPlays> qTempUserPlays = user.CachedUserPlaysQueue;
        int qntQueued = qTempUserPlays.Count;

        while (qTempUserPlays.Count > 0)
        {
            User.UserPlays up = qTempUserPlays.Dequeue();
            Dictionary <string, string> userPlaysDict = new Dictionary <string, string> ();

            userPlaysDict.Add("user", up.UserId.ToString());
            userPlaysDict.Add("game", up.GameId.ToString());
            userPlaysDict.Add("score", up.Score.ToString());

            bool result = POSTConfirmation(targetUri, userPlaysDict);

            if (result)
            {
                qntSavedInDB++;
                Debug.Log("UserPlays tuple created/updated in database");
            }
            else
            {
                saveLoad.AddUserPlays(up);
                Debug.Log("UserPlays saved in file");
            }
        }

        if (qntSavedInDB != 0 && qntSavedInDB == qntQueued)
        {
            success = true;
        }

        if (saveLoad != null)
        {
            saveLoad.SaveUserPlays();
        }

        user.CachedUserPlaysQueue = qTempUserPlays;
        return(success);
    }
Example #2
0
    public void getAvailableGames()
    {
        string targetUri = serverUriPath + GameAccessUriPath;

        targetUri += ("all/" + user.Id.ToString() + "/");

        GET(targetUri);
        string response = wwwResquest.text;

        List <Game> games = new List <Game> ();

        if (response != "")
        {
            string[] gameInfos = response.Split(';');
            foreach (string gameInfo in gameInfos)
            {
                string[] values = gameInfo.Split('*');
                Game     game   = new Game();
                game.Id        = int.Parse(values[0]);
                game.Name      = values[1];
                game.Available = bool.Parse(values[2]);

                user.AddGameByVerification(game);

                if (values[3] != "0")                 // User already played this game
                {
                    string[]       upValues = values[3].Split('|');
                    User.UserPlays up       = new User.UserPlays();

                    up.Id               = int.Parse(upValues[0]);
                    up.UserId           = int.Parse(upValues[1]);
                    up.GameId           = int.Parse(upValues[2]);
                    up.Score            = int.Parse(upValues[5]);
                    up.Date_user_played = DateTime.ParseExact(upValues[4], "yyyy-MM-dd HH:mm:ss", null);
                    up.Record           = int.Parse(upValues[5]);

                    user.AddUserPlayByVerification(up);

                    game.CurrentScore  = up.Score;
                    game.CurrentRecord = up.Record;
                }
            }
        }
    }
Example #3
0
 public void AddUserPlays(User.UserPlays up)
 {
     userPlaysList.Add(up);
 }