public static function getPermissions()
 {
     if (self::$permissions) {
         return self::$permissions;
     }
     global $egApprovedRevsPermissions;
     self::$permissions = $egApprovedRevsPermissions;
     $permissionsZones = array('Namespace Permissions', 'Category Permissions', 'Page Permissions');
     foreach ($permissionsZones as $zone) {
         // for each subzone, such as NS_MAIN within namespaces, or
         // "Category:Approval Required" within categories, or "Main Page"
         // within pages...for each of these format the permissions for
         // simpler logic later
         foreach (self::$permissions[$zone] as $subzone => $subzonePerms) {
             self::$permissions[$zone][$subzone] = self::formatPermissionTypes($subzonePerms);
         }
     }
     // perform the same formatting on the All Pages permissions
     self::$permissions['All Pages'] = self::formatPermissionTypes(self::$permissions['All Pages']);
     return self::$permissions;
 }
 public static function getPermissions()
 {
     if (self::$permissions) {
         return self::$permissions;
     }
     preg_match_all('/<syntaxhighlight lang="INI">(.*?)<\\/syntaxhighlight>/si', wfMessage('approvedrevs-permissions')->text(), $matches);
     if (isset($matches[1][0])) {
         self::$permissions = parse_ini_string($matches[1][0], true);
     }
     // create arrays of N/C/P's for quickly checking if page is approvable
     foreach (['Namespaces', 'Categories', 'Pages', 'Namespace Permissions', 'Category Permissions', 'Page Permissions'] as $perm) {
         if (!isset(self::$permissions[$perm])) {
             self::$permissions[$perm] = [];
         }
     }
     foreach (self::$permissions['Namespace Permissions'] as $ns => $perms) {
         array_push(self::$permissions['Namespaces'], $ns);
     }
     foreach (self::$permissions['Category Permissions'] as $cat => $perms) {
         array_push(self::$permissions['Categories'], $cat[0] == '+' ? substr($cat, 1) : $cat);
     }
     foreach (self::$permissions['Page Permissions'] as $pg => $perms) {
         array_push(self::$permissions['Pages'], $pg[0] == '+' ? substr($pg, 1) : $pg);
     }
     return self::$permissions;
 }