Esempio n. 1
0
        public void GetPermissionNameForObjectAsync(object context, EventHandler <GetPermissionNameForObjectCompletedEventArgs> action, GlymaSecurableObject securableObject)
        {
            var guid = Guid.NewGuid();

            ObjectDictionary.Add(guid, context);
            GetPermissionNameForObjectCompletedEventHandlers.Add(guid, action);
            Client.GetPermissionNameForObjectAsync(App.Params.SiteUrl, securableObject, guid);
        }
Esempio n. 2
0
 private void ClientOnGetPermissionNameForObjectCompleted(object sender, GetPermissionNameForObjectCompletedEventArgs e)
 {
     if (e.UserState is Guid)
     {
         var guid = (Guid)e.UserState;
         if (ObjectDictionary.ContainsKey(guid) &&
             GetPermissionNameForObjectCompletedEventHandlers.ContainsKey(guid))
         {
             //back compatibility with old version
             if (App.PermissionLevel == PermissionLevel.OldReader)
             {
                 e.Result.Result = PermissionLevel.Reader.ToString();
             }
             else if (App.PermissionLevel == PermissionLevel.OldAuthor)
             {
                 e.Result.Result = PermissionLevel.Author.ToString();
             }
             GetPermissionNameForObjectCompletedEventHandlers[guid](ObjectDictionary[guid], e);
             GetPermissionNameForObjectCompletedEventHandlers.Remove(guid);
             ObjectDictionary.Remove(guid);
         }
     }
 }