d0ad3c23fb
Signed-off-by: Michael Mayer <michael@photoprism.app>
24 lines
542 B
Go
24 lines
542 B
Go
package entity
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/photoprism/photoprism/internal/form"
|
|
)
|
|
|
|
// AddClient creates a new client and returns it if successful.
|
|
func AddClient(frm form.Client) (client *Client, err error) {
|
|
if found := FindClientByUID(frm.ID()); found != nil {
|
|
return found, fmt.Errorf("client %s already exists", found.ClientUID)
|
|
}
|
|
|
|
client = NewClient().SetFormValues(frm)
|
|
|
|
if err = client.Validate(); err != nil {
|
|
return client, err
|
|
} else if err = client.Create(); err != nil {
|
|
return client, err
|
|
}
|
|
|
|
return client, nil
|
|
}
|