Browse Source

Add MovieFile and Subtitle file to Movies, fix Movie update

Gildas Chabot 4 years ago
parent
commit
7364d447e1
2 changed files with 19 additions and 2 deletions
  1. 16 1
      movies.go
  2. 3 1
      pages/pages.go

+ 16 - 1
movies.go

@@ -16,7 +16,9 @@ type Movie struct {
16 16
 	Year     string
17 17
 	Runtime  string
18 18
 
19
-	Files []string
19
+	Files     []string
20
+	MovieFile string
21
+	Subtitles string
20 22
 
21 23
 	OMDB OMDBMovie
22 24
 }
@@ -59,6 +61,19 @@ type OMDBRating struct {
59 61
 }
60 62
 
61 63
 func Unmarshal(b []byte) (*Movie, error) {
64
+	var m Movie
65
+	if err := json.Unmarshal(b, &m); err != nil {
66
+		return nil, err
67
+	}
68
+
69
+	if err := m.FillFromOMDB(); err != nil {
70
+		return nil, err
71
+	}
72
+
73
+	return &m, nil
74
+}
75
+
76
+func UnmarshalFromOMDB(b []byte) (*Movie, error) {
62 77
 	var omdb OMDBMovie
63 78
 	if err := json.Unmarshal(b, &omdb); err != nil {
64 79
 		return nil, err

+ 3 - 1
pages/pages.go

@@ -57,7 +57,7 @@ func Home(c *movies.Collection) http.HandlerFunc {
57 57
 
58 58
 		if r.Method == "POST" {
59 59
 			if r.FormValue("omdb_json") != "" {
60
-				m, err := movies.Unmarshal([]byte(r.FormValue("omdb_json")))
60
+				m, err := movies.UnmarshalFromOMDB([]byte(r.FormValue("omdb_json")))
61 61
 				if err != nil {
62 62
 					w.WriteHeader(http.StatusBadRequest)
63 63
 					errs = append(errs, err)
@@ -125,12 +125,14 @@ func Movie(c *movies.Collection) http.HandlerFunc {
125 125
 					errs = append(errs, fmt.Errorf("you cannot change the imdb id."))
126 126
 				} else {
127 127
 					m = updated
128
+					fmt.Println("Update with", m)
128 129
 					c.Update(updated)
129 130
 				}
130 131
 			}
131 132
 
132 133
 			if files := r.FormValue("files"); files != "" {
133 134
 				m.Files = strings.Split(files, "\n")
135
+				fmt.Println("Update with", m)
134 136
 				c.Update(m)
135 137
 			}
136 138
 		}