Esempio n. 1
0
        static void GrantPermission(string addonKey, string permissionKey, bool grantOrDecline)
        {
            Dictionary <string, List <string> > targetDictionary = grantOrDecline ? grantedPermissions : declinedPermissions;

            if (!targetDictionary.ContainsKey(addonKey))
            {
                targetDictionary.Add(addonKey, new List <string>());
            }

            if (targetDictionary[addonKey] == null)
            {
                targetDictionary[addonKey] = new List <string>();
            }

            if (targetDictionary[addonKey].Contains(permissionKey))
            {
                return;
            }

            targetDictionary[addonKey].Add(permissionKey);

            Addon addon = AddonManager.Instance.GetAddon(addonKey);

            if (addon != null)
            {
                addon.FireAtOverlays("permission", new { granted = grantOrDecline, key = permissionKey });
            }

            Save();
        }