mirror of
https://github.com/simon-ding/polaris.git
synced 2026-06-09 03:27:39 +08:00
feat: add name suggesting
This commit is contained in:
@@ -4,7 +4,9 @@ import (
|
||||
"fmt"
|
||||
"polaris/db"
|
||||
"polaris/log"
|
||||
"polaris/pkg/utils"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/pkg/errors"
|
||||
@@ -35,3 +37,36 @@ func (s *Server) DeleteStorage(c *gin.Context) (interface{}, error) {
|
||||
err = s.db.DeleteStorage(id)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
func (s *Server) SuggestedSeriesFolderName(c *gin.Context) (interface{}, error) {
|
||||
ids := c.Param("tmdb_id")
|
||||
id, err := strconv.Atoi(ids)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("id is not int: %v", ids)
|
||||
}
|
||||
var name, originalName, year string
|
||||
d, err := s.MustTMDB().GetTvDetails(id, s.language)
|
||||
if err != nil {
|
||||
d1, err := s.MustTMDB().GetMovieDetails(id, s.language)
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "get movie details")
|
||||
}
|
||||
name = d1.Title
|
||||
originalName = d1.OriginalTitle
|
||||
year = strings.Split(d1.ReleaseDate, "-")[0]
|
||||
|
||||
} else {
|
||||
name = d.Name
|
||||
originalName = d.OriginalName
|
||||
year = strings.Split(d.FirstAirDate, "-")[0]
|
||||
}
|
||||
name = fmt.Sprintf("%s %s", name, originalName)
|
||||
|
||||
if !utils.IsChineseChar(name) {
|
||||
name = originalName
|
||||
}
|
||||
if year != "" {
|
||||
name = fmt.Sprintf("%s (%s)", name, year)
|
||||
}
|
||||
return gin.H{"name": name}, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user