8 func (es Episodes) Len() int {
12 func (es Episodes) Less(i, j int) bool {
13 if es[i].EpNo.Type == es[j].EpNo.Type {
14 if es[i].EpNo.Type == 1 {
15 a, _ := strconv.ParseInt(es[i].EpNo.EpNo, 10, 32)
16 b, _ := strconv.ParseInt(es[j].EpNo.EpNo, 10, 32)
19 a, _ := strconv.ParseInt(es[i].EpNo.EpNo[1:], 10, 32)
20 b, _ := strconv.ParseInt(es[j].EpNo.EpNo[1:], 10, 32)
24 return es[i].EpNo.Type < es[j].EpNo.Type
27 func (es Episodes) Swap(i, j int) {
28 es[i], es[j] = es[j], es[i]
31 func (cs Characters) Len() int {
35 func (cs Characters) Less(i, j int) bool {
36 if cs[i].Type == cs[j].Type {
37 return sort.StringSlice{cs[i].Name, cs[j].Name}.Less(0, 1)
42 case "main character in":
44 case "secondary cast in":
54 case "main character in":
56 case "secondary cast in":
67 func (cs Characters) Swap(i, j int) {
68 cs[i], cs[j] = cs[j], cs[i]