| 289 | } |
| 290 | |
| 291 | func (this *BookController) parseBookNav() (navs models.BookNavs, navStr string) { |
| 292 | var data struct { |
| 293 | Name []string `json:"name"` |
| 294 | URL []string `json:"url"` |
| 295 | Sort []string `json:"sort"` |
| 296 | Icon []string `json:"icon"` |
| 297 | Color []string `json:"color"` |
| 298 | Target []string `json:"target"` |
| 299 | } |
| 300 | b, _ := json.Marshal(this.Ctx.Request.PostForm) |
| 301 | json.Unmarshal(b, &data) |
| 302 | lenName := len(data.Name) |
| 303 | if lenName == 0 || lenName != len(data.URL) || lenName != len(data.Sort) || lenName != len(data.Icon) || lenName != len(data.Color) || lenName != len(data.Target) { |
| 304 | return |
| 305 | } |
| 306 | |
| 307 | for idx, name := range data.Name { |
| 308 | name = strings.TrimSpace(name) |
| 309 | url := strings.TrimSpace(data.URL[idx]) |
| 310 | if url == "" || name == "" { |
| 311 | continue |
| 312 | } |
| 313 | nav := models.BookNav{ |
| 314 | Name: name, |
| 315 | URL: url, |
| 316 | Color: strings.TrimSpace(data.Color[idx]), |
| 317 | Icon: strings.TrimSpace(data.Icon[idx]), |
| 318 | Target: strings.TrimSpace(data.Target[idx]), |
| 319 | } |
| 320 | nav.Sort, _ = strconv.Atoi(strings.TrimSpace(data.Sort[idx])) |
| 321 | navs = append(navs, nav) |
| 322 | } |
| 323 | if len(navs) > 0 { |
| 324 | // 排序 |
| 325 | sort.Sort(navs) |
| 326 | b, _ := json.Marshal(navs) |
| 327 | navStr = string(b) |
| 328 | } |
| 329 | return |
| 330 | } |
| 331 | |
| 332 | // 设置书籍私有状态. |
| 333 | func (this *BookController) PrivatelyOwned() { |