gitea/modules/web/middleware
KN4CK3R e8186f1c0f
Map OIDC groups to Orgs/Teams ()
Fixes 

Test-Instructions:
https://github.com/go-gitea/gitea/pull/21441#issuecomment-1419438000

This PR implements the mapping of user groups provided by OIDC providers
to orgs teams in Gitea. The main part is a refactoring of the existing
LDAP code to make it usable from different providers.

Refactorings:
- Moved the router auth code from module to service because of import
cycles
- Changed some model methods to take a `Context` parameter
- Moved the mapping code from LDAP to a common location

I've tested it with Keycloak but other providers should work too. The
JSON mapping format is the same as for LDAP.


![grafik](https://user-images.githubusercontent.com/1666336/195634392-3fc540fc-b229-4649-99ac-91ae8e19df2d.png)

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
..
binding.go Map OIDC groups to Orgs/Teams ()
cookie.go Implement FSFE REUSE for golang files ()
data.go Implement FSFE REUSE for golang files ()
flash.go Implement FSFE REUSE for golang files ()
locale.go Implement FSFE REUSE for golang files ()
request.go Implement FSFE REUSE for golang files ()