diff --git a/src/calibre/web/feeds/news.py b/src/calibre/web/feeds/news.py index 65c79381cb..26f9e20a44 100644 --- a/src/calibre/web/feeds/news.py +++ b/src/calibre/web/feeds/news.py @@ -39,6 +39,19 @@ def classes(classes): 'class': lambda x: x and frozenset(x.split()).intersection(q)}) +def prefixed_classes(classes): + q = frozenset(classes.split(' ')) + + def matcher(x): + if x: + for candidate in frozenset(x.split()): + for x in q: + if candidate.startswith(x): + return True + return False + return {'attrs': {'class': matcher}} + + class LoginFailed(ValueError): pass