fic: Add Order, Help and Type values in struct
This commit is contained in:
parent
867e9bb345
commit
74e8c3801a
16 changed files with 134 additions and 110 deletions
|
|
@ -143,7 +143,7 @@ func deleteFile(file fic.EFile, _ []byte) (interface{}, error) {
|
|||
return file.Delete()
|
||||
}
|
||||
|
||||
func deleteFileDep(file fic.EFile, depid int64, _ []byte) (interface{}, error) {
|
||||
func deleteFileDep(file fic.EFile, depid int, _ []byte) (interface{}, error) {
|
||||
return true, file.DeleteDepend(fic.FlagKey{Id: depid})
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -115,7 +115,7 @@ func teamAssocHandler(f func(fic.Team, string, []byte) (interface{}, error)) fun
|
|||
return func(ps httprouter.Params, body []byte) (interface{}, error) {
|
||||
var team fic.Team
|
||||
|
||||
teamHandler(func (tm fic.Team, _ []byte) (interface{}, error) {
|
||||
teamHandler(func(tm fic.Team, _ []byte) (interface{}, error) {
|
||||
team = tm
|
||||
return nil, nil
|
||||
})(ps, body)
|
||||
|
|
@ -193,7 +193,7 @@ func flagKeyHandler(f func(fic.FlagKey, fic.Exercice, []byte) (interface{}, erro
|
|||
return nil, err
|
||||
} else {
|
||||
for _, flag := range flags {
|
||||
if flag.Id == kid {
|
||||
if flag.Id == int(kid) {
|
||||
return f(flag, exercice, body)
|
||||
}
|
||||
}
|
||||
|
|
@ -212,9 +212,9 @@ func choiceHandler(f func(fic.FlagChoice, fic.Exercice, []byte) (interface{}, er
|
|||
return nil, nil
|
||||
})(ps, body)
|
||||
|
||||
if cid, err := strconv.ParseInt(string(ps.ByName("cid")), 10, 64); err != nil {
|
||||
if cid, err := strconv.ParseInt(string(ps.ByName("cid")), 10, 32); err != nil {
|
||||
return nil, err
|
||||
} else if choice, err := flag.GetChoice(cid); err != nil {
|
||||
} else if choice, err := flag.GetChoice(int(cid)); err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
return f(choice, exercice, body)
|
||||
|
|
@ -236,7 +236,7 @@ func quizHandler(f func(fic.MCQ, fic.Exercice, []byte) (interface{}, error)) fun
|
|||
return nil, err
|
||||
} else {
|
||||
for _, mcq := range mcqs {
|
||||
if mcq.Id == int64(qid) {
|
||||
if mcq.Id == int(qid) {
|
||||
return f(mcq, exercice, body)
|
||||
}
|
||||
}
|
||||
|
|
@ -316,13 +316,13 @@ func fileHandler(f func(fic.EFile, []byte) (interface{}, error)) func(httprouter
|
|||
}
|
||||
}
|
||||
|
||||
func fileDependancyHandler(f func(fic.EFile, int64, []byte) (interface{}, error)) func(httprouter.Params, []byte) (interface{}, error) {
|
||||
func fileDependancyHandler(f func(fic.EFile, int, []byte) (interface{}, error)) func(httprouter.Params, []byte) (interface{}, error) {
|
||||
return func(ps httprouter.Params, body []byte) (interface{}, error) {
|
||||
if depid, err := strconv.ParseInt(string(ps.ByName("depid")), 10, 64); err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
return fileHandler(func(file fic.EFile, b []byte) (interface{}, error) {
|
||||
return f(file, depid, b)
|
||||
return f(file, int(depid), b)
|
||||
})(ps, body)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ type ExerciceFlag struct {
|
|||
CaseSensitive bool `toml:",omitempty"`
|
||||
ValidatorRe string `toml:"validator_regexp,omitempty"`
|
||||
Placeholder string `toml:",omitempty"`
|
||||
Help string `toml:",omitempty"`
|
||||
ChoicesCost int64 `toml:"choices_cost,omitempty"`
|
||||
Choice []ExerciceFlagChoice
|
||||
LockedFile []ExerciceUnlockFile `toml:"unlock_file,omitempty"`
|
||||
|
|
|
|||
|
|
@ -128,8 +128,10 @@ func buildKeyFlag(exercice fic.Exercice, flag ExerciceFlag, flagline int, defaul
|
|||
}
|
||||
fl := fic.Flag(fic.FlagKey{
|
||||
IdExercice: exercice.Id,
|
||||
Order: int8(flagline),
|
||||
Label: flag.Label,
|
||||
Placeholder: flag.Placeholder,
|
||||
Help: flag.Help,
|
||||
IgnoreCase: !flag.CaseSensitive,
|
||||
Multiline: flag.Type == "text",
|
||||
ValidatorRegexp: validatorRegexp(flag.ValidatorRe),
|
||||
|
|
@ -221,6 +223,7 @@ func buildExerciceFlag(i Importer, exercice fic.Exercice, flag ExerciceFlag, nli
|
|||
} else if flag.Type == "mcq" {
|
||||
addedFlag := fic.MCQ{
|
||||
IdExercice: exercice.Id,
|
||||
Order: int8(nline + 1),
|
||||
Title: flag.Label,
|
||||
Entries: []fic.MCQ_entry{},
|
||||
}
|
||||
|
|
|
|||
Reference in a new issue