NewsBlur/apps/statistics/views.py

52 lines
1.7 KiB
Python
Raw Normal View History

2018-04-17 19:13:44 -07:00
import datetime
from django.http import HttpResponse
from django.shortcuts import render
2018-04-17 19:13:44 -07:00
from django.utils import feedgenerator
from apps.statistics.models import MStatistics, MFeedback
2018-04-17 19:13:44 -07:00
from apps.profile.models import PaymentHistory
from utils import log as logging
def dashboard_graphs(request):
statistics = MStatistics.all()
return render(
request,
'statistics/render_statistics_graphs.xhtml',
{'statistics': statistics}
)
def feedback_table(request):
feedbacks = MFeedback.all()
return render(
request,
'statistics/render_feedback_table.xhtml',
{'feedbacks': feedbacks}
)
2018-04-17 19:13:44 -07:00
def revenue(request):
data = {}
data['title'] = "NewsBlur Revenue"
data['link'] = "https://www.newsblur.com"
data['description'] = "Revenue"
data['lastBuildDate'] = datetime.datetime.utcnow()
data['generator'] = 'NewsBlur Revenue Writer'
data['docs'] = None
rss = feedgenerator.Atom1Feed(**data)
report = PaymentHistory.report()
2018-04-17 19:16:55 -07:00
content = "%s revenue: $%s<br><code>%s</code>" % (datetime.datetime.now().strftime('%Y'), report['annual'], report['output'].replace('\n', '<br>'))
2018-04-17 19:13:44 -07:00
story = {
2018-04-18 10:48:55 -07:00
'title': "Daily snapshot: %s" % (datetime.datetime.now().strftime('%a %b %-d, %Y')),
2018-04-17 19:13:44 -07:00
'link': 'https://www.newsblur.com',
'description': content,
2018-04-18 10:48:55 -07:00
'unique_id': datetime.datetime.now().strftime('%a %b %-d, %Y'),
2018-04-17 19:13:44 -07:00
'pubdate': datetime.datetime.now(),
}
rss.add_item(**story)
logging.user(request, "~FBGenerating Revenue RSS feed: ~FM%s" % (
request.META.get('HTTP_USER_AGENT', "")[:24]
))
return HttpResponse(rss.writeString('utf-8'), content_type='application/rss+xml')