2010-04-19 12:18:40 -04:00
|
|
|
from django.core.management.base import BaseCommand
|
2010-07-02 15:49:08 -04:00
|
|
|
from apps.rss_feeds.models import Feed
|
2010-04-19 12:18:40 -04:00
|
|
|
|
|
|
|
|
2024-04-24 09:43:56 -04:00
|
|
|
class Command(BaseCommand):
|
2020-06-08 07:55:17 -04:00
|
|
|
def add_arguments(self, parser):
|
|
|
|
parser.add_argument("-f", "--feed", dest="feed", default=None)
|
|
|
|
parser.add_argument("-t", "--title", dest="title", default=None)
|
|
|
|
parser.add_argument("-V", "--verbose", dest="verbose", action="store_true")
|
2024-04-24 09:43:56 -04:00
|
|
|
|
2010-04-19 12:18:40 -04:00
|
|
|
def handle(self, *args, **options):
|
2024-04-24 09:43:56 -04:00
|
|
|
if options["title"]:
|
|
|
|
feeds = Feed.objects.filter(feed_title__icontains=options["title"])
|
|
|
|
elif options["feed"]:
|
|
|
|
feeds = Feed.objects.filter(pk=options["feed"])
|
2010-04-19 12:18:40 -04:00
|
|
|
else:
|
|
|
|
feeds = Feed.objects.all()
|
|
|
|
|
|
|
|
# Count stories in past month to calculate next scheduled update
|
|
|
|
for feed in feeds:
|
2024-04-24 09:43:56 -04:00
|
|
|
feed.count_stories(verbose=options["verbose"])
|
|
|
|
|
|
|
|
print(("\nCounted %s feeds" % feeds.count()))
|