| 5 | | // Custom logic goes here. |
| | 8 | + (void)upgradeV1XMLEp:(NSManagedObject *)oldEp toContext:(NSManagedObjectContext *)newMoc inData:(SapphireXMLData *)data |
| | 9 | { |
| | 10 | SapphireXMLEpisodeData *newData = [NSEntityDescription insertNewObjectForEntityForName:SapphireXMLEpisodeDataName inManagedObjectContext:newMoc]; |
| | 11 | |
| | 12 | newData.absoluteEpisodeNumber = [oldEp valueForKey:@"absoluteEpisodeNumber"]; |
| | 13 | newData.episodeNumber = [oldEp valueForKey:@"episodeNumber"]; |
| | 14 | newData.lastEpisodeNumber = [oldEp valueForKey:@"lastEpisodeNumber"]; |
| | 15 | newData.searchEpisode = [oldEp valueForKey:@"searchEpisode"]; |
| | 16 | newData.searchLastEpisodeNumber = [oldEp valueForKey:@"searchLastEpisodeNumber"]; |
| | 17 | newData.searchSeasonNumber = [oldEp valueForKey:@"searchSeasonNumber"]; |
| | 18 | newData.searchShowName = [oldEp valueForKey:@"searchShowName"]; |
| | 19 | newData.xml = data; |
| | 20 | } |
| | 21 | |
| | 22 | - (void)constructEpisode |
| | 23 | { |
| | 24 | int season = self.searchSeasonNumberValue; |
| | 25 | NSString *show = self.searchShowName; |
| | 26 | |
| | 27 | if(season == 0 || show == nil) |
| | 28 | return; |
| | 29 | |
| | 30 | int ep = self.searchEpisodeValue; |
| | 31 | NSString *title = self.xml.title; |
| | 32 | |
| | 33 | SapphireEpisode *ret; |
| | 34 | if(ep != 0) |
| | 35 | { |
| | 36 | ret = [SapphireEpisode episode:ep inSeason:season forShow:show withPath:nil inContext:[self managedObjectContext]]; |
| | 37 | } |
| | 38 | else if(title != nil) |
| | 39 | { |
| | 40 | ret = [SapphireEpisode episodeTitle:title inSeason:season forShow:show withPath:nil inContext:[self managedObjectContext]]; |
| | 41 | } |
| | 42 | else |
| | 43 | return; |
| | 44 | |
| | 45 | self.episode = ret; |
| | 46 | self.xml.file.tvEpisode = ret; |
| | 47 | } |