Use new error template for errors
This commit is contained in:
parent
55a3605bd0
commit
f7d0fa4b39
10 changed files with 58 additions and 59 deletions
2
VERSION
2
VERSION
|
@ -1 +1 @@
|
||||||
0.1.0-6-gb421739
|
0.1.0-9-g5616fce-master
|
||||||
|
|
|
@ -268,16 +268,29 @@ func (model *Participant) Read(db *Database, args map[string]string, w http.Resp
|
||||||
}
|
}
|
||||||
|
|
||||||
if strconv.Itoa(int(participant.SchoolID)) != getUserIDFromToken(r) {
|
if strconv.Itoa(int(participant.SchoolID)) != getUserIDFromToken(r) {
|
||||||
// setFlashMessage(w, r, "notAuthorized")
|
|
||||||
return nil, errors.NotAuthorized
|
return nil, errors.NotAuthorized
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := db._db.Preload("User").Preload("School").Preload("School.Participants").Preload("Category").First(&participant, id).Error; err != nil {
|
if err := db._db.
|
||||||
|
Preload("User").
|
||||||
|
Preload("School").
|
||||||
|
Preload("School.Participants").
|
||||||
|
Preload("Category").
|
||||||
|
First(&participant, id).Error; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if err := db._db.Preload("User").Preload("School").Preload("School.Participants").Preload("Responses").Preload("Contests").Preload("Category").First(&participant, id).Error; err != nil {
|
if err := db._db.
|
||||||
|
Preload("User").
|
||||||
|
Preload("Creator").
|
||||||
|
Preload("Updater").
|
||||||
|
Preload("School").
|
||||||
|
Preload("School.Participants").
|
||||||
|
Preload("Responses").
|
||||||
|
Preload("Contests").
|
||||||
|
Preload("Category").
|
||||||
|
First(&participant, id).Error; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -295,7 +308,12 @@ func (model *Participant) ReadAll(db *Database, args map[string]string, w http.R
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if err := db._db.Preload("Category").Preload("School").Preload("Contests").Order("lastname").Find(&participants, &Participant{SchoolID: uint(schoolId)}).Error; err != nil {
|
if err := db._db.
|
||||||
|
Preload("Category").
|
||||||
|
Preload("School").
|
||||||
|
Preload("Contests").
|
||||||
|
Order("lastname").
|
||||||
|
Find(&participants, &Participant{SchoolID: uint(schoolId)}).Error; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -359,11 +377,7 @@ func (model *Participant) Update(db *Database, args map[string]string, w http.Re
|
||||||
|
|
||||||
if user, err := participant.(*Participant).exists(db); err == nil && user != nil {
|
if user, err := participant.(*Participant).exists(db); err == nil && user != nil {
|
||||||
if user.ID != participant.(*Participant).UserID {
|
if user.ID != participant.(*Participant).UserID {
|
||||||
// err := setFlashMessage(w, r, "participantExists")
|
return nil, errors.ParticipantExists
|
||||||
// if err != nil {
|
|
||||||
// return nil, err
|
|
||||||
// }
|
|
||||||
return participant, nil
|
|
||||||
}
|
}
|
||||||
} else if err != nil {
|
} else if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -382,7 +396,9 @@ func (model *Participant) Update(db *Database, args map[string]string, w http.Re
|
||||||
return nil, errors.CategoryExists
|
return nil, errors.CategoryExists
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := db._db.Where([]uint(participant.(*Participant).ContestIDs)).Find(&participant.(*Participant).Contests).Error; err != nil {
|
if err := db._db.
|
||||||
|
Where([]uint(participant.(*Participant).ContestIDs)).
|
||||||
|
Find(&participant.(*Participant).Contests).Error; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -393,7 +409,10 @@ func (model *Participant) Update(db *Database, args map[string]string, w http.Re
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := db._db.Model(participant).Association("Contests").Replace(participant.(*Participant).Contests).Error; err != nil {
|
if err := db._db.
|
||||||
|
Model(participant).
|
||||||
|
Association("Contests").
|
||||||
|
Replace(participant.(*Participant).Contests).Error; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -406,7 +425,10 @@ func (model *Participant) Update(db *Database, args map[string]string, w http.Re
|
||||||
if isAdministrator(r) {
|
if isAdministrator(r) {
|
||||||
var response Response
|
var response Response
|
||||||
|
|
||||||
if err := db._db.First(&response, &Response{ParticipantID: participant.(*Participant).ID}).Error; err != nil {
|
if err := db._db.First(
|
||||||
|
&response,
|
||||||
|
&Response{ParticipantID: participant.(*Participant).ID},
|
||||||
|
).Error; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -228,7 +228,7 @@ func (model *School) Read(db *Database, args map[string]string, w http.ResponseW
|
||||||
func (model *School) ReadAll(db *Database, args map[string]string, w http.ResponseWriter, r *http.Request) (interface{}, error) {
|
func (model *School) ReadAll(db *Database, args map[string]string, w http.ResponseWriter, r *http.Request) (interface{}, error) {
|
||||||
var schools []*School
|
var schools []*School
|
||||||
if err := db._db.
|
if err := db._db.
|
||||||
Preload("Participant").
|
Preload("Participants").
|
||||||
Preload("Participants.Category").
|
Preload("Participants.Category").
|
||||||
Order("code").
|
Order("code").
|
||||||
Find(&schools).Error; err != nil {
|
Find(&schools).Error; err != nil {
|
||||||
|
@ -315,7 +315,9 @@ func SaveSchool(db *Database, school interface{}) (interface{}, error) {
|
||||||
func (model *School) HasCategory(db *Database, participant *Participant) (bool, error) {
|
func (model *School) HasCategory(db *Database, participant *Participant) (bool, error) {
|
||||||
var participants []*Participant
|
var participants []*Participant
|
||||||
|
|
||||||
if err := db._db.Where("category_id = ? AND school_id = ? AND id <> ?", participant.CategoryID, model.ID, participant.ID).Find(&participants).Error; err != nil {
|
if err := db._db.
|
||||||
|
Where("category_id = ? AND school_id = ? AND id <> ?", participant.CategoryID, model.ID, participant.ID).
|
||||||
|
Find(&participants).Error; err != nil {
|
||||||
return false, err
|
return false, err
|
||||||
}
|
}
|
||||||
return len(participants) > 0, nil
|
return len(participants) > 0, nil
|
||||||
|
|
|
@ -50,6 +50,7 @@ var (
|
||||||
"mod2": mod2,
|
"mod2": mod2,
|
||||||
"toLower": toLower,
|
"toLower": toLower,
|
||||||
"anchor": anchor,
|
"anchor": anchor,
|
||||||
|
"alertLink": alertLink,
|
||||||
"html": html,
|
"html": html,
|
||||||
"field": field,
|
"field": field,
|
||||||
"modelName": modelName,
|
"modelName": modelName,
|
||||||
|
@ -185,6 +186,10 @@ func anchor(text, url string) template.HTML {
|
||||||
return template.HTML(fmt.Sprintf("<a href=\"%s\">%s</a>", url, text))
|
return template.HTML(fmt.Sprintf("<a href=\"%s\">%s</a>", url, text))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func alertLink(text, url string) template.HTML {
|
||||||
|
return template.HTML(fmt.Sprintf("<a class=\"alert-link\" href=\"%s\">%s</a>", url, text))
|
||||||
|
}
|
||||||
|
|
||||||
func toLower(text string) string {
|
func toLower(text string) string {
|
||||||
return strings.ToLower(text)
|
return strings.ToLower(text)
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,4 @@
|
||||||
{{ define "content" }}
|
{{ define "content" }}
|
||||||
<div class="container">
|
{{$options := `title: "Errore nella creazione/aggiornamento di un partecipante"`}}
|
||||||
<h1 class="border-bottom">Errore</h1>
|
{{template "error" dict "options" ($options|yaml) "data" .Data}}
|
||||||
<p>
|
{{end}}
|
||||||
Si è verificato un errore durante la creazione o l'aggiornamento di un partecipante: <strong>{{.Data}}</strong>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Clicca {{.Referer|anchor "qui"}} per tornare al modulo di creazione del partecipante.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
{{ end }}
|
|
||||||
|
|
|
@ -1,6 +1,4 @@
|
||||||
{{ define "content" }}
|
{{ define "content" }}
|
||||||
{{$options := `
|
{{$options := `title: "Errore nella creazione/aggiornamento di un partecipante"`}}
|
||||||
title: "Errore nella creazione/aggiornamento di un partecipante"
|
|
||||||
`}}
|
|
||||||
{{template "error" dict "options" ($options|yaml) "data" .Data}}
|
{{template "error" dict "options" ($options|yaml) "data" .Data}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
|
@ -1,11 +1,4 @@
|
||||||
{{ define "content" }}
|
{{ define "content" }}
|
||||||
<div class="container">
|
{{$options := `title: "Errore nella gestione della prova di gara"`}}
|
||||||
<h1 class="border-bottom">Errore</h1>
|
{{template "error" dict "options" ($options|yaml) "data" .Data}}
|
||||||
<p>
|
{{end}}
|
||||||
Si è verificato nella gestione della prova di gara: <strong>{{.Data}}</strong>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Clicca {{.Claims|userId|show "Participant"|anchor "qui"}} per tornare alle informazioni sul partecipante.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
{{ end }}
|
|
||||||
|
|
|
@ -1,11 +1,4 @@
|
||||||
{{ define "content" }}
|
{{ define "content" }}
|
||||||
<div class="container">
|
{{$options := `title: "Errore nella creazione/aggiornamento di un partecipante"`}}
|
||||||
<h1 class="border-bottom">Errore</h1>
|
{{template "error" dict "options" ($options|yaml) "data" .Data}}
|
||||||
<p>
|
{{end}}
|
||||||
Si è verificato un errore durante la creazione o l'aggiornamento di un partecipante: <strong>{{.Data}}</strong>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Clicca {{create "Participant"|anchor "qui"}} per tornare al modulo di creazione del partecipante.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
{{ end }}
|
|
||||||
|
|
|
@ -1,11 +1,4 @@
|
||||||
{{ define "content" }}
|
{{ define "content" }}
|
||||||
<div class="container">
|
{{$options := `title: "Errore nella creazione/aggiornamento di una scuola"`}}
|
||||||
<h1 class="border-bottom">Errore</h1>
|
{{template "error" dict "options" ($options|yaml) "data" .Data}}
|
||||||
<p>
|
{{end}}
|
||||||
Si è verificato un errore durante la creazione o l'aggiornamento di una scuola: <strong>{{.Data}}</strong>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Clicca {{create "School"|anchor "qui"}} per tornare al modulo di iscrizione.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
{{ end }}
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
</h4>
|
</h4>
|
||||||
{{.data}}
|
{{.data}}
|
||||||
{{if .data.Referer}}
|
{{if .data.Referer}}
|
||||||
Clicca {{.data.Referer|anchor "qui"}} per tornare all'azione precedente.
|
Clicca {{.data.Referer|alertLink "qui"}} per tornare all'azione precedente.
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<p>
|
<p>
|
||||||
|
|
Loading…
Reference in a new issue