Add error for question order string empty

This commit is contained in:
Andrea Fazzi 2020-01-28 17:01:24 +01:00
parent f7d0fa4b39
commit f5781db5b0
5 changed files with 32 additions and 29 deletions

View file

@ -33,7 +33,7 @@ var (
CategoryExists = &Error{
TemplateName: "error_category_exists",
Err: errors.New(i18n.FlashMessages["categoryExists"]["it"]),
Err: errors.New(i18n.Errors["categoryExists"]["it"]),
}
OutOfTime = &Error{
@ -45,4 +45,9 @@ var (
TemplateName: "error_contest_has_zero_questions",
Err: errors.New(i18n.Errors["contestHasZeroQuestions"]["it"]),
}
QuestionsOrderIsEmpty = &Error{
TemplateName: "error_questions_order_is_empty",
Err: errors.New(i18n.Errors["questionsOrderIsEmpty"]["it"]),
}
)

View file

@ -14,7 +14,6 @@ import (
"git.andreafazzi.eu/andrea/oef/config"
"git.andreafazzi.eu/andrea/oef/errors"
"git.andreafazzi.eu/andrea/oef/i18n"
"git.andreafazzi.eu/andrea/oef/orm"
"git.andreafazzi.eu/andrea/oef/reflect"
"git.andreafazzi.eu/andrea/oef/renderer"
@ -271,18 +270,18 @@ func DefaultRecoverHandler(next http.Handler) http.Handler {
return http.HandlerFunc(fn)
}
func (h *Handlers) setFlashMessage(w http.ResponseWriter, r *http.Request, key string) error {
session, err := h.CookieStore.Get(r, "flash-session")
if err != nil {
return err
}
session.AddFlash(i18n.FlashMessages[key][h.Config.Language])
err = session.Save(r, w)
if err != nil {
return err
}
return nil
}
// func (h *Handlers) setFlashMessage(w http.ResponseWriter, r *http.Request, key string) error {
// session, err := h.CookieStore.Get(r, "flash-session")
// if err != nil {
// return err
// }
// session.AddFlash(i18n.FlashMessages[key][h.Config.Language])
// err = session.Save(r, w)
// if err != nil {
// return err
// }
// return nil
// }
func (h *Handlers) hasPermission(r *http.Request, path string) bool {
claims := getClaims(r)

View file

@ -1,21 +1,6 @@
package i18n
var (
FlashMessages = map[string]map[string]string{
"participantExists": map[string]string{
"it": "Un partecipante con questo codice fiscale è già presente nella base dati!",
},
"schoolExists": map[string]string{
"it": "Una scuola con questo codice meccanografico è già presente nella base dati!",
},
"categoryExists": map[string]string{
"it": "Un partecipante della stessa categoria è già stato iscritto dalla scuola.",
},
"notAuthorized": map[string]string{
"it": "L'utente non dispone delle autorizzazioni necessarie a visualizzare questa pagina.",
},
}
Formats = map[string]map[string]string{
"dateTime": map[string]string{
"it": "il %02d/%02d/%d alle ore %02d:%02d",
@ -53,5 +38,11 @@ var (
"contestHasZeroQuestions": map[string]string{
"it": "La gara a cui il partecipante è iscritto non contiene alcuna domanda.",
},
"questionsOrderIsEmpty": map[string]string{
"it": "La prova presenta la stringa relativa all'ordine delle domande vuota.",
},
"categoryExists": map[string]string{
"it": "Esiste già un partecipante di questa categoria.",
},
}
)

View file

@ -160,6 +160,10 @@ func (model *Response) Read(db *Database, args map[string]string, w http.Respons
}
if response.QuestionsOrder == "" {
return nil, errors.QuestionsOrderIsEmpty
}
qOrder := make([]uint, 0)
qIDs := strings.Split(response.QuestionsOrder, " ")
for _, id := range qIDs {

View file

@ -0,0 +1,4 @@
{{ define "content" }}
{{$options := `title: "Errore nell'apertura della prova di gara"`}}
{{template "error" dict "options" ($options|yaml) "data" .Data}}
{{end}}