mirror of
https://github.com/casdoor/casdoor.git
synced 2025-09-10 02:12:55 +08:00
fix: check group name cannot be same as organization name (#2090)
This commit is contained in:
@@ -107,6 +107,11 @@ func UpdateGroup(id string, group *Group) (bool, error) {
|
|||||||
return false, err
|
return false, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
err = checkGroupName(group.Name)
|
||||||
|
if err != nil {
|
||||||
|
return false, err
|
||||||
|
}
|
||||||
|
|
||||||
if name != group.Name {
|
if name != group.Name {
|
||||||
err := GroupChangeTrigger(name, group.Name)
|
err := GroupChangeTrigger(name, group.Name)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -123,6 +128,11 @@ func UpdateGroup(id string, group *Group) (bool, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func AddGroup(group *Group) (bool, error) {
|
func AddGroup(group *Group) (bool, error) {
|
||||||
|
err := checkGroupName(group.Name)
|
||||||
|
if err != nil {
|
||||||
|
return false, err
|
||||||
|
}
|
||||||
|
|
||||||
affected, err := adapter.Engine.Insert(group)
|
affected, err := adapter.Engine.Insert(group)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, err
|
return false, err
|
||||||
@@ -168,6 +178,17 @@ func DeleteGroup(group *Group) (bool, error) {
|
|||||||
return affected != 0, nil
|
return affected != 0, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func checkGroupName(name string) error {
|
||||||
|
exist, err := adapter.Engine.Exist(&Organization{Owner: "admin", Name: name})
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if exist {
|
||||||
|
return errors.New("group name can't be same as the organization name")
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func (group *Group) GetId() string {
|
func (group *Group) GetId() string {
|
||||||
return fmt.Sprintf("%s/%s", group.Owner, group.Name)
|
return fmt.Sprintf("%s/%s", group.Owner, group.Name)
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user