diff --git a/app.py b/app.py index d8ad71c..a1ad169 100644 --- a/app.py +++ b/app.py @@ -8,6 +8,7 @@ import recent_blocks_database import block_details_database import config import locale +from datetime import datetime # # MAIN @@ -204,3 +205,14 @@ def mapcount_filter(number: int): print("FIELD_ERROR in template filter") return "FIELD_ERROR" + +@webapp.template_filter('timestamp') +def timestamp_filter(dt: datetime): + if dt is None: + return None + else: + try: + return dt.strftime('%a %d %H:%M:%S.%f') + except TypeError: + print("FIELD_ERROR in template filter") + return "FIELD_ERROR" diff --git a/templates/_txlist.html b/templates/_txlist.html index 53ca85a..7ab5bd0 100644 --- a/templates/_txlist.html +++ b/templates/_txlist.html @@ -23,7 +23,7 @@
- {{ tx.timestamp_formatted or '--' }} + {{ tx.utc_timestamp or '--' }}
diff --git a/templates/transaction_details.html b/templates/transaction_details.html index 1b45c96..a87ed5c 100644 --- a/templates/transaction_details.html +++ b/templates/transaction_details.html @@ -67,7 +67,7 @@ UTC timestamp - {{ transaction.timestamp_formatted }} + {{ transaction.utc_timestamp | timestamp }} diff --git a/transaction_database.py b/transaction_database.py index 1290cb8..02e5f30 100644 --- a/transaction_database.py +++ b/transaction_database.py @@ -39,7 +39,6 @@ def run_query(): for index, row in enumerate(maprows): row['pos'] = index + 1 map_jsons_in_row(row) - map_timestamps(row) return maprows @@ -73,18 +72,10 @@ def find_transaction_by_sig(tx_sig: str): for row in maprows: map_jsons_in_row(row) - map_timestamps(row) return maprows -def map_timestamps(row): - # type datetime.datetime - dt = row['utc_timestamp'] - if dt is not None: - row['timestamp_formatted'] = dt.strftime('%a %d %H:%M:%S.%f') - - def map_jsons_in_row(row): errors = [] if row["all_errors"] is None: diff --git a/transaction_details_database.py b/transaction_details_database.py index f4dfe68..e165798 100644 --- a/transaction_details_database.py +++ b/transaction_details_database.py @@ -35,8 +35,6 @@ def find_transaction_details_by_sig(tx_sig: str): if maprows: row = maprows[0] - map_timestamps(row) - # {'transaction_id': 1039639, 'slot': 234765028, 'error': 34, 'count': 1, 'utc_timestamp': datetime.datetime(2023, 12, 8, 18, 29, 23, 861619)} tx_slots = postgres_connection.query( """ @@ -107,10 +105,4 @@ def invert_by_slot(rows): inv_indx[row["slot"]].append(row) return inv_indx -# TODO format to MON DD HH24:MI:SS.MS -def map_timestamps(row): - # type datetime.datetime - dt = row['utc_timestamp'] - if dt is not None: - row['timestamp_formatted'] = dt.strftime('%a %d %H:%M:%S.%f')