diff --git a/display-all-reports/display-reports.py b/display-all-reports/display-reports.py
index ddcd7da..d41aeac 100644
--- a/display-all-reports/display-reports.py
+++ b/display-all-reports/display-reports.py
@@ -1,49 +1,115 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
+import os
import textwrap
import requests
-from flask import Flask, Response, request
+import datetime
+from flask import Flask, Response, request, jsonify
app = Flask(__name__)
-
-USER_TOKEN = ''
+USER_TOKEN = os.getenv('USER_TOKEN')
+if not USER_TOKEN:
+ raise EnvironmentError("USER_TOKEN environment variable is not set")
def get_uploads(user_token, page=1):
- return requests.get("https://dps.report/getUploads?userToken={}&page={}".format(user_token, page)).json()
-
+ return requests.get("https://dps.report/getUploads?userToken={}&page={}&perPage={}".format(user_token, page, 100)).json()
@app.route("/")
-def fetch_and_display_my_reports():
- if request.args.get('page', ''):
- uploads = get_uploads(USER_TOKEN, request.args.get('page', ''))
- else:
- uploads = get_uploads(USER_TOKEN)
-# print(uploads)
+def test():
+ page = request.args.get('page', '1')
+ uploads = get_uploads(USER_TOKEN, page)
+
+ if request.headers.get('X-Requested-With') == 'XMLHttpRequest':
+ return jsonify(uploads)
+
upload_links_html = ""
- for upload in uploads['uploads']:
- upload_links_html += ' {url}
\n'.format(url=upload['permalink'])
+ for upload in sorted(uploads['uploads'], key=lambda upload: upload['encounterTime'], reverse=True):
+ encounter_time = datetime.datetime.fromtimestamp(upload['encounterTime']).strftime('%Y%m%d-%H%M%S')
+ boss_name = upload['encounter']['boss']
+ bosses = {26712: "Ura",
+ 26774: "Decima",
+ 26725: "Greer"}
+ if boss_name == "DPS.Report":
+ boss_name = bosses[upload['encounter']['bossId']]
+ print(upload['encounter'])
+ if upload['encounter']['isCm'] and not upload['encounter']['isLegendaryCm']:
+ boss_name = boss_name + ' CM'
+ if upload['encounter']['isLegendaryCm']:
+ boss_name = boss_name + ' LCM'
+ if upload['encounter']['emboldened']:
+ boss_name = boss_name + ' (emboldened)'
+
+
+
+ boss_success = upload['encounter']['success']
+ success = '❌'
+ if boss_success:
+ success = '✅'
+ upload_links_html += ' {success} {encounter_time} {boss_name}
\n'.format(url=upload['permalink'],
+ success=success,
+ encounter_time=encounter_time,
+ boss_name=boss_name)
older_reports = "
Older reports: "
- if uploads['pages'] > 1:
- for i in range(uploads['pages']):
- if request.args.get('page', '') == str(i+1):
- older_reports += ' {page_number} '.format(page_number=i+1)
- else:
- older_reports += ' {page_number} '.format(page_number=i+1)
+ for i in range(uploads['pages']):
+ if page == str(i + 1):
+ older_reports += ' {page_number} '.format(page_number=i + 1)
+ else:
+ older_reports += ' {page_number} '.format(page_number=i + 1)
- else:
- older_reports = ""
response_text = textwrap.dedent('''\