Closed GoogleCodeExporter closed 8 years ago
Need to figure a work around for this item, as this is that returned by AniDB
Original comment by werndly...@gmail.com
on 3 Jan 2012 at 4:52
Would it work if u add an Option to overwrite the AniDB response locally in the
DB to mark it as complete?
If thats not a "pretty" workarround than maybe something different....
AniDB tells u if an entry is a Series/Movie/OVA...
So maybe its possible to say that:
If its a Movie then check how many parts the SubGroup made. So if u have 2
parts from the same group and AniDB says the same then its complete.
If the group made 3 Entrys (1 = Full Movie / 2-3 = Parts) then maybe it could
work if u check the EP Name if it says "Complete Movie" or "Part 1-2" (example:
GitS Innocence) . So if u only got the 1st Entry called "Complete Movie" u can
mark it as complete in the DB locally.
Dunno if it makes sense but maybe it helps :)
Original comment by Area44...@googlemail.com
on 13 Aug 2012 at 7:03
[deleted comment]
This Workaround is not tested, since i'm unable to compile the server yet. This
also may need to be replicated in Utilities->MissingEpisodes listing, server
code.
Entities/AnimeSeries->UpdateStats
logger.Trace("Updated WATCHED stats for SERIES {0} in {1}ms", this.ToString(), ts.TotalMilliseconds);
start = DateTime.Now;
//INSERT
bool movieType = false;
System.Text.RegularExpressions.Regex partmatch = new System.Text.RegularExpressions.Regex("Part (.*?) of (.*)");
AniDB_Anime aniDB_Anime = this.Anime;
int[] parts = new int[100]; //More than 100 parts is impossible.
if (this.Anime!=null)
{
if (this.Anime.AnimeTypeEnum==enAnimeType.Movie)
movieType = true;
}
//INSERT
Entities/AnimeSeries->UpdateStats
foreach (AniDB_GroupStatus gs in grpStatuses)
{
if (gs.LastEpisodeNumber >= thisEpNum) epReleased = true;
if (userReleaseGroups.Contains(gs.GroupID) && gs.HasGroupReleasedEpisode(thisEpNum)) epReleasedGroup = true;
}
//INSERT
if ((movieType) && (vids.Count > 0))
{
if (aniEp.EnglishName.ToLower() == "complete movie")
{
MissingEpisodeCount = 0;
MissingEpisodeCountGroups = 0;
break;
}
System.Text.RegularExpressions.Match m = partmatch.Match(aniEp.EnglishName);
if (m.Success)
{
int part_number = 0;
int part_count = 0;
int.TryParse(m.Groups[1].Value, out part_number);
int.TryParse(m.Groups[2].Value, out part_count);
parts[part_count]++;
if (parts[part_count] == part_count)
{
MissingEpisodeCount = 0;
break;
}
}
}
//INSERT
Original comment by maximo.p...@gmail.com
on 22 Aug 2012 at 7:43
First approach was not complete. I think this one nails 107. :)
Original comment by maximo.p...@nutzcode.com
on 2 Sep 2012 at 8:41
Attachments:
Original comment by werndly...@gmail.com
on 7 Sep 2012 at 2:39
Original issue reported on code.google.com by
imperia...@gmail.com
on 30 Dec 2011 at 5:08Attachments: