Split up our plex and tmdb classes into more logical files with a common media class that it extends off of.
This commit is contained in:
		
							
								
								
									
										19
									
								
								seasoned_api/src/media_classes/media.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								seasoned_api/src/media_classes/media.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					class Media {
 | 
				
			||||||
 | 
					   constructor(title, year, type) {
 | 
				
			||||||
 | 
					      this.title = title;
 | 
				
			||||||
 | 
					      this.year = year;
 | 
				
			||||||
 | 
					      this.type = type;
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   toString() {
 | 
				
			||||||
 | 
					      return `N: ${this.title} | Y: ${this.year} | T: ${this.type}`;
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   print() {
 | 
				
			||||||
 | 
					      /* eslint-disable no-console */
 | 
				
			||||||
 | 
					      console.log(this.toString());
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					module.exports = Media;
 | 
				
			||||||
							
								
								
									
										22
									
								
								seasoned_api/src/media_classes/plex.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								seasoned_api/src/media_classes/plex.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					const Media = require('src/media_classes/media');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Plex extends Media {
 | 
				
			||||||
 | 
					   constructor(title, year, type, summary, poster_path, background_path, added, seasons, episodes) {
 | 
				
			||||||
 | 
					      super(title, year, type);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      this.summary = summary;
 | 
				
			||||||
 | 
					      this.poster_path = poster_path;
 | 
				
			||||||
 | 
					      this.background_path = background_path;
 | 
				
			||||||
 | 
					      this.added = added;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      this.seasons = seasons;
 | 
				
			||||||
 | 
					      this.episodes = episodes;
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   print() {
 | 
				
			||||||
 | 
					      super.print();
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					module.exports = Plex;
 | 
				
			||||||
							
								
								
									
										33
									
								
								seasoned_api/src/media_classes/tmdb.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								seasoned_api/src/media_classes/tmdb.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					const Media = require('src/media_classes/media');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class TMDB extends Media {
 | 
				
			||||||
 | 
					   // constructor(...args) {
 | 
				
			||||||
 | 
					   constructor(title, year, type, id, summary, poster_path, background_path, popularity, score, release_status, tagline, seasons, episodes) {
 | 
				
			||||||
 | 
					      super(title, year, type);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      this.id = id;
 | 
				
			||||||
 | 
					      this.summary = summary;
 | 
				
			||||||
 | 
					      this.poster_path = poster_path;
 | 
				
			||||||
 | 
					      this.background_path = background_path;
 | 
				
			||||||
 | 
					      this.popularity = popularity;
 | 
				
			||||||
 | 
					      this.score = score;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      this.release_status = release_status;
 | 
				
			||||||
 | 
					      this.tagline = tagline;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      this.seasons = seasons;
 | 
				
			||||||
 | 
					      this.episodes = episodes;
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   toString() {
 | 
				
			||||||
 | 
					      return `${super.toString()} | ID: ${this.id}`;
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   print() {
 | 
				
			||||||
 | 
					      /* eslint-disable no-console */
 | 
				
			||||||
 | 
					      console.log(this.toString());
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					module.exports = TMDB;
 | 
				
			||||||
		Reference in New Issue
	
	Block a user