return label
class MovieSeason (BaseSeason):
- def __init__(me, series, *args, **kw):
+ def __init__(me, series, title, *args, **kw):
+ super().__init__(series, *args, **kw)
+ me.title = title
me.i = None
def add_episode(me, j, neps, title, src, tno, startch):
- if title is None: raise ExpectedError("movie must have a title")
+ if me.title is None and title is None:
+ raise ExpectedError("movie or movie season must have a title")
return super().add_episode(j, neps, title, src, tno, startch)
- def _eplabel(me, i, epn, title):
- return title
+ def _eplabel(me, i, neps, title):
+ if me.title is None:
+ label = title
+ elif title is None:
+ epname, epn = me._epnames(i, neps)
+ label = "%s—%s %s" % (me.title, epname, epn)
+ else:
+ label = "%s—%s" % (me.title, title)
+ return label
class Series (object):
def __init__(me, playlist, title = None):
me.cur_season = season
def add_season(me, title, i, implicitp = False):
me._add_season(Season(me, title, i, implicitp))
- def add_movies(me):
- me._add_season(MovieSeason(me))
+ def add_movies(me, title = None):
+ me._add_season(MovieSeason(me, title))
def ensure_season(me):
if me.cur_season is None: me.add_season(None, 1, implicitp = True)
return me.cur_season
w = ww.nextword();
check(w is not None, "missing season number")
if w == "-":
- check(ww.rest() is None, "trailing junk")
if not me._wantedp(sname): return
- series.add_movies()
+ series.add_movies(ww.rest())
else:
title = ww.rest(); i = getint(w)
if not me._wantedp(sname): return