summaryrefslogtreecommitdiffstats
path: root/store/sql_team_store.go
diff options
context:
space:
mode:
authorCorey Hulen <corey@hulen.com>2015-07-23 11:21:54 -0800
committerCorey Hulen <corey@hulen.com>2015-07-23 11:21:54 -0800
commitb813234f4cc38e72bb94556d3a4acdcde5071468 (patch)
treef9a0eb8f9596c91531c6997617b4dd66e05dd317 /store/sql_team_store.go
parent32e8dddd0cd8532e45f89290a154d5d7911c16dd (diff)
parent98751a4f65a656839dc3724e72e672b585cb18c9 (diff)
downloadchat-b813234f4cc38e72bb94556d3a4acdcde5071468.tar.gz
chat-b813234f4cc38e72bb94556d3a4acdcde5071468.tar.bz2
chat-b813234f4cc38e72bb94556d3a4acdcde5071468.zip
Merge pull request #170 from mattermost/mm-1420
Fixes mm-1420 adding initial support for postgres
Diffstat (limited to 'store/sql_team_store.go')
-rw-r--r--store/sql_team_store.go12
1 files changed, 6 insertions, 6 deletions
diff --git a/store/sql_team_store.go b/store/sql_team_store.go
index b89dca03e..7b0be0540 100644
--- a/store/sql_team_store.go
+++ b/store/sql_team_store.go
@@ -6,7 +6,6 @@ package store
import (
"github.com/mattermost/platform/model"
"github.com/mattermost/platform/utils"
- "strings"
)
type SqlTeamStore struct {
@@ -42,6 +41,7 @@ func (s SqlTeamStore) UpgradeSchemaIfNeeded() {
}
func (s SqlTeamStore) CreateIndexesIfNotExists() {
+ s.CreateIndexIfNotExists("idx_teams_name", "Teams", "Name")
}
func (s SqlTeamStore) Save(team *model.Team) StoreChannel {
@@ -66,7 +66,7 @@ func (s SqlTeamStore) Save(team *model.Team) StoreChannel {
}
if err := s.GetMaster().Insert(team); err != nil {
- if strings.Contains(err.Error(), "Duplicate entry") && strings.Contains(err.Error(), "for key 'Name'") {
+ if IsUniqueConstraintError(err.Error(), "Name", "teams_name_key") {
result.Err = model.NewAppError("SqlTeamStore.Save", "A team with that domain already exists", "id="+team.Id+", "+err.Error())
} else {
result.Err = model.NewAppError("SqlTeamStore.Save", "We couldn't save the team", "id="+team.Id+", "+err.Error())
@@ -129,8 +129,8 @@ func (s SqlTeamStore) UpdateDisplayName(name string, teamId string) StoreChannel
go func() {
result := StoreResult{}
- if _, err := s.GetMaster().Exec("UPDATE Teams SET DisplayName = ? WHERE Id = ?", name, teamId); err != nil {
- result.Err = model.NewAppError("SqlTeamStore.UpdateDisplayName", "We couldn't update the team name", "team_id="+teamId)
+ if _, err := s.GetMaster().Exec("UPDATE Teams SET DisplayName = :Name WHERE Id = :Id", map[string]interface{}{"Name": name, "Id": teamId}); err != nil {
+ result.Err = model.NewAppError("SqlTeamStore.UpdateName", "We couldn't update the team name", "team_id="+teamId)
} else {
result.Data = teamId
}
@@ -171,7 +171,7 @@ func (s SqlTeamStore) GetByName(name string) StoreChannel {
team := model.Team{}
- if err := s.GetReplica().SelectOne(&team, "SELECT * FROM Teams WHERE Name=?", name); err != nil {
+ if err := s.GetReplica().SelectOne(&team, "SELECT * FROM Teams WHERE Name = :Name", map[string]interface{}{"Name": name}); err != nil {
result.Err = model.NewAppError("SqlTeamStore.GetByName", "We couldn't find the existing team", "name="+name+", "+err.Error())
}
@@ -191,7 +191,7 @@ func (s SqlTeamStore) GetTeamsForEmail(email string) StoreChannel {
result := StoreResult{}
var data []*model.Team
- if _, err := s.GetReplica().Select(&data, "SELECT Teams.* FROM Teams, Users WHERE Teams.Id = Users.TeamId AND Users.Email = ?", email); err != nil {
+ if _, err := s.GetReplica().Select(&data, "SELECT Teams.* FROM Teams, Users WHERE Teams.Id = Users.TeamId AND Users.Email = :Email", map[string]interface{}{"Email": email}); err != nil {
result.Err = model.NewAppError("SqlTeamStore.GetTeamsForEmail", "We encounted a problem when looking up teams", "email="+email+", "+err.Error())
}