<?php
    function community_permissions($community, $section = 0, $forum = 0)
    {
        $has_root = mysqli_num_rows(mysqli_query_logged("SELECT user_id FROM community_permissions WHERE community_id = '" . $community . "' AND user_id = '" . $GLOBALS['auth']['id'] . "' AND permission = 'administrator'"));
        $permissions = mysqli_query_logged("SELECT DISTINCT(permission) FROM community_permissions");
        while ($permission = mysqli_fetch_array($permissions))
        {
            $has_perm = mysqli_num_rows(mysqli_query_logged("SELECT user_id FROM community_permissions WHERE community_id = '" . $community . "' AND user_id = '" . $GLOBALS['auth']['id'] . "' AND permission = '" . $permission['permission'] . "'"));
            if ($GLOBALS['auth']['id'] && ($has_root || $has_perm))
            {
                $GLOBALS['auth']['community'][$permission['permission']] = true;
            }
            else
            {
                $GLOBALS['auth']['community'][$permission['permission']] = false;
                if ($section)
                {
                    if (mysqli_num_rows(mysqli_query_logged("SELECT user_id FROM community_sections_permissions WHERE section_id = '" . $section . "' AND user_id = '" . $GLOBALS['auth']['id'] . "' AND permission = '" . $permission['permission'] . "'")))
                    {
                        $GLOBALS['auth']['community'][$permission['permission']] = true;
                    }
                }
                if ($forum)
                {
                    if (mysqli_num_rows(mysqli_query_logged("SELECT user_id FROM community_forums_permissions WHERE forum_id = '" . $forum . "' AND user_id = '" . $GLOBALS['auth']['id'] . "' AND permission = '" . $permission['permission'] . "'")))
                    {
                        $GLOBALS['auth']['community'][$permission['permission']] = true;
                    }
                }
            }
        }
    }
?>