This repository has been archived on 2024-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
2023-10-03 12:37:49 +00:00
|
|
|
import json
|
|
|
|
|
2023-06-16 10:39:03 +00:00
|
|
|
from flask import Blueprint
|
2023-10-03 12:37:49 +00:00
|
|
|
from flask.views import View
|
|
|
|
from .models import Proof, Dpp, ALGORITHM
|
|
|
|
|
|
|
|
dpp = Blueprint('dpp', __name__, url_prefix='/', template_folder='templates')
|
|
|
|
|
|
|
|
|
|
|
|
class ProofView(View):
|
|
|
|
methods = ['GET']
|
|
|
|
|
|
|
|
def dispatch_request(selfi, proof_id):
|
|
|
|
proof = Proof.query.filter_by(timestamp=proof_id).first()
|
|
|
|
|
|
|
|
if not proof:
|
|
|
|
proof = Dpp.query.filter_by(timestamp=proof_id).one()
|
|
|
|
document = proof.snapshot.json_hw
|
|
|
|
else:
|
|
|
|
document = proof.normalizeDoc
|
|
|
|
|
|
|
|
data = {
|
|
|
|
"algorithm": ALGORITHM,
|
|
|
|
"document": document
|
|
|
|
}
|
|
|
|
|
|
|
|
d = {
|
|
|
|
'@context': ['https://ereuse.org/proof0.json'],
|
|
|
|
'data': data,
|
|
|
|
}
|
|
|
|
|
|
|
|
return json.dumps(d)
|
|
|
|
|
2023-06-16 10:39:03 +00:00
|
|
|
|
2023-10-03 12:37:49 +00:00
|
|
|
##########
|
|
|
|
# Routes #
|
|
|
|
##########
|
|
|
|
dpp.add_url_rule('/proofs/<int:proof_id>', view_func=ProofView.as_view('proof'))
|