private void LoginCallback(ILoginResult result) { FBLog("LoginCallback", result != null ? result.RawResult : ""); GameManager.Instance.IsUserInteractionEnabled = true; if (IsLoggedIn) { // Get current access token's granted permissions foreach (string permission in AccessToken.CurrentAccessToken.Permissions) { PermissionsGranted.Add(permission); } // and try and load user data LoadUserData(); } else { IsConnecting = false; OnInitLoginAndGetUserDataAction(FacebookHelperResultType.ERROR); } }
/// <summary> /// Resolves the class using the specified levels. /// </summary> /// <param name="levels">The levels, which must not be <c>null</c> or contain <c>null</c>.</param> /// <param name="stage">The resolution stage. All classes must be resolved at stage 0 before stage 1.</param> internal void Resolve(IList <Level> levels, int stage) { Debug.Assert(levels != null, "Levels must not be null."); Debug.Assert(!levels.Contains(null), "Levels must not contain null."); if (stage == 0) { PrerequisiteLevels = _definition.PrerequisiteLevelNames .Select(pln => levels.First(l => l.Name == pln)).ToList(); } else if (stage == 1) { var queue = new Queue <Level>(); foreach (var level in PrerequisiteLevels) { queue.Enqueue(level); } while (queue.Count > 0) { var level = queue.Dequeue(); foreach (var level2 in level.Class.Levels) { ItemNamesAllowed.UnionWith(level2.ItemNamesAllowed); PermissionsGranted.UnionWith(level2.PermissionsGranted); if (level2 == level) { break; } } foreach (var level2 in level.Class.PrerequisiteLevels) { queue.Enqueue(level2); } } } }
public bool HasPublishActionsPermission() { return(PermissionsGranted.Contains("publish_actions")); }
public bool HasUserFriendsPermission() { return(PermissionsGranted.Contains("user_friends")); }
public bool HasEmailPermission() { return(PermissionsGranted.Contains("email")); }
public bool HasPublicProfilePermission() { return(PermissionsGranted.Contains("public_profile")); }