Port of Add User#full_private_access? to check if user has access to all private groups & projects to EE

Merged Toon Claes requested to merge tc-add-user-has-full-private-access-ee into master

What does this MR do?

CE MR in gitlab-org/gitlab-ce!12373

In CE only the admin has access to all private groups & projects. In EE also an auditor can have full private access.

To overcome merge conflicts, or accidental incorrect access rights, abstract this out in User#full_private_access?.

User#admin? now only should be used for admin-only features. For private access-related features User#full_private_access? should be used.

Are there points in the code the reviewer needs to double check?

Any other situations where this method should be used?

I searched the EE codebase for the use of admin_or_auditor? and replaced those.

Why was this MR needed?

Backported from gitlab-org/gitlab-ee!2199

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Closes gitlab-ce#31745.

Edited by Toon Claes