2024-10-08 19:08:01 +00:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
2024-10-10 12:22:15 +00:00
|
|
|
"flag"
|
2024-10-08 19:08:01 +00:00
|
|
|
"fmt"
|
2024-10-10 12:13:40 +00:00
|
|
|
"hugo-medialog/internal/books"
|
2024-10-10 18:03:49 +00:00
|
|
|
"hugo-medialog/internal/games"
|
2024-10-09 09:12:44 +00:00
|
|
|
"hugo-medialog/internal/movies"
|
2024-10-11 11:05:46 +00:00
|
|
|
"hugo-medialog/internal/music"
|
2024-10-09 19:56:40 +00:00
|
|
|
"hugo-medialog/internal/series"
|
2024-10-08 19:08:01 +00:00
|
|
|
"hugo-medialog/utils"
|
|
|
|
)
|
|
|
|
|
|
|
|
func main() {
|
2024-10-09 09:12:44 +00:00
|
|
|
// Load .env file
|
2024-10-08 19:08:01 +00:00
|
|
|
utils.LoadConfig()
|
|
|
|
|
2024-10-10 18:03:49 +00:00
|
|
|
// --media parameter
|
2024-10-10 12:22:15 +00:00
|
|
|
media := flag.String("media", "", "Specify the media type to process: movies, series, books, games, or music")
|
|
|
|
flag.Parse()
|
|
|
|
|
|
|
|
if *media == "" {
|
|
|
|
processAll()
|
|
|
|
} else {
|
|
|
|
switch *media {
|
|
|
|
case "movies":
|
|
|
|
processMovies()
|
|
|
|
case "series":
|
|
|
|
processSeries()
|
|
|
|
case "books":
|
|
|
|
processBooks()
|
2024-10-10 18:03:49 +00:00
|
|
|
case "games":
|
|
|
|
processGames()
|
2024-10-11 11:05:46 +00:00
|
|
|
case "music":
|
|
|
|
processMusic()
|
2024-10-10 12:22:15 +00:00
|
|
|
default:
|
|
|
|
fmt.Printf("Invalid media type: %s. Please use movies, series, books, games, or music.\n", *media)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func processAll() {
|
|
|
|
processMovies()
|
|
|
|
processSeries()
|
|
|
|
processBooks()
|
2024-10-10 18:03:49 +00:00
|
|
|
processGames()
|
2024-10-11 11:05:46 +00:00
|
|
|
processMusic()
|
2024-10-10 12:22:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
func processMovies() {
|
2024-10-09 09:12:44 +00:00
|
|
|
moviesList, err := movies.LoadMovies()
|
2024-10-08 19:08:01 +00:00
|
|
|
if err != nil {
|
2024-10-09 09:12:44 +00:00
|
|
|
fmt.Printf("Error reading movies file: %v\n", err)
|
2024-10-08 19:08:01 +00:00
|
|
|
return
|
|
|
|
}
|
2024-10-09 09:12:44 +00:00
|
|
|
err = movies.ProcessMovies(moviesList)
|
2024-10-08 19:08:01 +00:00
|
|
|
if err != nil {
|
2024-10-09 09:12:44 +00:00
|
|
|
fmt.Printf("Error processing movies: %v\n", err)
|
2024-10-08 19:08:01 +00:00
|
|
|
}
|
2024-10-10 12:22:15 +00:00
|
|
|
}
|
2024-10-08 19:08:01 +00:00
|
|
|
|
2024-10-10 12:22:15 +00:00
|
|
|
func processSeries() {
|
2024-10-09 19:56:40 +00:00
|
|
|
seriesList, err := series.LoadSeries()
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("Error reading series file: %v\n", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
err = series.ProcessSeries(seriesList)
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("Error processing series: %v\n", err)
|
|
|
|
}
|
2024-10-10 12:22:15 +00:00
|
|
|
}
|
2024-10-09 19:56:40 +00:00
|
|
|
|
2024-10-10 12:22:15 +00:00
|
|
|
func processBooks() {
|
2024-10-10 12:13:40 +00:00
|
|
|
booksList, err := books.LoadBooks()
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("Error reading books file: %v\n", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
err = books.ProcessBooks(booksList)
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("Error processing books: %v\n", err)
|
|
|
|
}
|
2024-10-08 19:08:01 +00:00
|
|
|
}
|
2024-10-10 18:03:49 +00:00
|
|
|
|
|
|
|
func processGames() {
|
|
|
|
gamesList, err := games.LoadGames()
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("Error reading games file: %v\n", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
err = games.ProcessGames(gamesList)
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("Error processing games: %v\n", err)
|
|
|
|
}
|
|
|
|
}
|
2024-10-11 11:05:46 +00:00
|
|
|
|
|
|
|
func processMusic() {
|
|
|
|
albumList, err := music.LoadAlbums()
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("Error reading music file: %v\n", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
err = music.ProcessAlbum(albumList)
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("Error processing music: %v\n", err)
|
|
|
|
}
|
|
|
|
}
|