private static FacebookFriends ConvertToFacebookSocialGraph(dynamic d) { FacebookFriends socialGraph = new FacebookFriends(); try { if (d.data != null) { for (int i = 0; i < d.data.Count; i++) { string id = d.data[i].id.ToString() ?? string.Empty; socialGraph.Friends.Add(id); } } if (d.paging != null && d.paging.next != null) { socialGraph.Next = d.paging.next.ToString(); } } catch (Exception e) { Logger.Current.Error("SocialGraph.ConvertToFacebookSocialGraph", "Could not convert dynamic object to FacebookSocialGraph", e); } return(socialGraph); }
public static FacebookOAuthResult <FacebookFriends> GetUserFriends(string facebookId, string accessToken) { FacebookOAuthResult <FacebookFriends> result = new FacebookOAuthResult <FacebookFriends>(); IStopwatch watch = MonitoringTimers.Current.GetNewStopwatch(true); result.Data = new FacebookFriends(); try { result.Data.Next = facebookId + "/friends?format=json&limit=5000"; do { dynamic d = GraphAPI.Get(result.Data.Next, accessToken); FacebookFriends pageResult = ConvertToFacebookSocialGraph(d); if (pageResult.Friends != null && pageResult.Friends.Count > 0) { result.Data.Friends.AddRange(pageResult.Friends); result.Data.Next = pageResult.Next; if (pageResult.Friends.Count < 5000) { result.Data.Next = null; } } else { result.Data.Next = null; } }while (!string.IsNullOrEmpty(result.Data.Next)); } catch (FacebookOAuthException) { result.SetHasExpired(); } catch (Exception e) { Logger.Current.Error("SocialGraph.GetFriendIds", "Could not update a Facebook user's social graph", e); result.HasError = true; } finally { //TODO : ajouter un compteur sur le nombre d'amis récupérés watch.Stop(); MonitoringTimers.Current.AddTime(Counters.Facebook_GetUserFriends, watch); } return(result); }
public ActionResult Index() { string xml; FacebookApp app = new FacebookApp(); JsonObject me = (JsonObject)app.Get("me"); JsonObject friends = (JsonObject)app.Get("me/friends"); FacebookFriends facebookFriends = JsonConvert.DeserializeObject <FacebookFriends>(friends.ToString()); XmlSerializer serializer = new XmlSerializer(typeof(GraphML)); XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces(); List <FacebookUser> users = new List <FacebookUser>(); GraphML graphML = new GraphML(); // Add Users users.Add(JsonConvert.DeserializeObject <FacebookUser>(me.ToString())); foreach (FacebookUser user in facebookFriends.Friends) { JsonObject friend = (JsonObject)app.Get(user.Id.ToString()); users.Add(JsonConvert.DeserializeObject <FacebookUser>(friend.ToString())); } // Prepare the keys AddKeys(graphML.Keys); // Add the Berico namspace namespaces.Add("berico", "http://graph.bericotechnologies.com/xmlns"); foreach (FacebookUser user in users) { graphML.Graph.Nodes.Add(Mapper.Map <FacebookUser, Node>(user)); } using (MemoryStream stream = new MemoryStream()) { XmlDocument doc = new XmlDocument(); serializer.Serialize(stream, graphML, namespaces); stream.Seek(0, SeekOrigin.Begin); doc.Load(stream); // Read the XML into a string object xml = doc.OuterXml; } return(this.Content(xml, "txt/xml")); }
void Awake() { musicVolume = PlayerPrefs.GetFloat("musicVolume", 1); soundsVolume = PlayerPrefs.GetFloat("soundsVolume", 1); // PlayerPrefs.DeleteAll(); if (!mInstance) { mInstance = this; } else { Destroy(this.gameObject); return; } gameSettings = GetComponent <GameSettings>(); loginManager = GetComponent <LoginManager>(); levelData = GetComponent <LevelData>(); levels = GetComponent <Levels>(); levelsData = GetComponent <LevelsData>(); multiplayerData = GetComponent <MultiplayerData>(); energyManager = GetComponent <EnergyManager>(); musicManager = GetComponent <MusicManager>(); soundManager = GetComponentInChildren <SoundManager>(); notifications = GetComponent <Notifications>(); facebookShare = GetComponent <FacebookShare>(); screenManager = GetComponent <ScreenManager>(); challengesManager = GetComponent <ChallengersManager>(); facebookFriends = GetComponent <FacebookFriends>(); tournament = GetComponent <Tournament>(); // levelsData.Init(); DontDestroyOnLoad(this.gameObject); userData = GetComponent <UserData>(); userData.Init(); multiplayerData.Init(); GetComponent <MusicManager>().Init(); Events.ResetApp += ResetApp; }
void Awake() { if (!mInstance) mInstance = this; else { Destroy(this.gameObject); return; } DontDestroyOnLoad(this.gameObject); loginManager = GetComponent<LoginManager>(); facebookFriends = GetComponent<FacebookFriends>(); userData = GetComponent<UserData>(); userHiscore = GetComponent<UserHiscore>(); ranking = GetComponent<Ranking>(); challengesManager = GetComponent<ChallengersManager>(); challengeData = GetComponent<ChallengeData>(); userData.Init(); }
void Awake() { if (!mInstance) { mInstance = this; } else { Destroy(this.gameObject); return; } DontDestroyOnLoad(this.gameObject); loginManager = GetComponent <LoginManager>(); facebookFriends = GetComponent <FacebookFriends>(); userData = GetComponent <UserData>(); userHiscore = GetComponent <UserHiscore>(); ranking = GetComponent <Ranking>(); challengesManager = GetComponent <ChallengersManager>(); challengeData = GetComponent <ChallengeData>(); userData.Init(); }