mirror of
https://github.com/Slug-Boi/cocommit.git
synced 2026-05-13 20:55:47 +00:00
feat: define git users in the program
This commit is contained in:
@@ -30,6 +30,9 @@ var Users = map[string]User{}
|
|||||||
var DefExclude = []string{}
|
var DefExclude = []string{}
|
||||||
var Groups = map[string][]User{}
|
var Groups = map[string][]User{}
|
||||||
|
|
||||||
|
var Git_Users = map[string]User{}
|
||||||
|
var Git_Groups = map[string][]User{}
|
||||||
|
|
||||||
func ContainsUser(users []User, user User) bool {
|
func ContainsUser(users []User, user User) bool {
|
||||||
return slices.ContainsFunc(users, func(u User) bool {
|
return slices.ContainsFunc(users, func(u User) bool {
|
||||||
return u.Shortname == user.Shortname &&
|
return u.Shortname == user.Shortname &&
|
||||||
@@ -89,6 +92,35 @@ func Define_users(author_file string) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Define_git_users() {
|
||||||
|
// wipe the git users map
|
||||||
|
Git_Users = map[string]User{}
|
||||||
|
Git_Groups = map[string][]User{}
|
||||||
|
|
||||||
|
// get all authors from git
|
||||||
|
git_authors := GitCheckAuthors()
|
||||||
|
|
||||||
|
for _, usr := range git_authors {
|
||||||
|
if _, ok := Users[usr.Shortname]; !ok {
|
||||||
|
Git_Users[usr.Shortname] = usr
|
||||||
|
Git_Users[usr.Longname] = usr
|
||||||
|
|
||||||
|
group_info := usr.Groups
|
||||||
|
if len(group_info) > 0 {
|
||||||
|
for _, group := range group_info {
|
||||||
|
if Git_Groups[group] == nil {
|
||||||
|
Git_Groups[group] = []User{usr}
|
||||||
|
} else {
|
||||||
|
usr_lst := Git_Groups[group]
|
||||||
|
usr_lst = append(usr_lst, usr)
|
||||||
|
Git_Groups[group] = usr_lst
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func RemoveUser(short string) {
|
func RemoveUser(short string) {
|
||||||
usr := Users[short]
|
usr := Users[short]
|
||||||
delete(Users, usr.Shortname)
|
delete(Users, usr.Shortname)
|
||||||
|
|||||||
Reference in New Issue
Block a user