fdfd
This commit is contained in:
parent
f69ae09999
commit
e41d7039e3
4 changed files with 46 additions and 1 deletions
|
@ -87,6 +87,7 @@ class User(Base):
|
||||||
bio_html = Column(String)
|
bio_html = Column(String)
|
||||||
sig = deferred(Column(String))
|
sig = deferred(Column(String))
|
||||||
sig_html = Column(String)
|
sig_html = Column(String)
|
||||||
|
fp = Column(String)
|
||||||
sigs_disabled = Column(Boolean)
|
sigs_disabled = Column(Boolean)
|
||||||
friends = deferred(Column(String))
|
friends = deferred(Column(String))
|
||||||
friends_html = deferred(Column(String))
|
friends_html = deferred(Column(String))
|
||||||
|
|
|
@ -826,3 +826,19 @@ def saved_comments(v, username):
|
||||||
page=page,
|
page=page,
|
||||||
next_exists=next_exists,
|
next_exists=next_exists,
|
||||||
standalone=True)
|
standalone=True)
|
||||||
|
|
||||||
|
|
||||||
|
@app.post("/fp/<fp>")
|
||||||
|
@auth_required
|
||||||
|
def fp(v, fp):
|
||||||
|
if v.username != fp:
|
||||||
|
v.fp = fp
|
||||||
|
users = g.db.query(User).filter_by(fp=fp).all()
|
||||||
|
for u in users:
|
||||||
|
new_alt = Alt(user1=v.id, user2=u.id)
|
||||||
|
g.db.add(new_alt)
|
||||||
|
g.db.flush()
|
||||||
|
print(v.username + ' + ' + u.username)
|
||||||
|
g.db.add(v)
|
||||||
|
g.db.commit()
|
||||||
|
return ''
|
|
@ -1,6 +1,6 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<script src="/assets/js/lozad.js?v=53"></script>
|
<script src="/assets/js/lozad.js?v=53"></script>
|
||||||
<script>
|
<script>
|
||||||
const observer = lozad();
|
const observer = lozad();
|
||||||
|
|
|
@ -2,6 +2,34 @@
|
||||||
|
|
||||||
{% block desktopBanner %}
|
{% block desktopBanner %}
|
||||||
|
|
||||||
|
{% if v %}
|
||||||
|
<script>
|
||||||
|
function fp(fp) {
|
||||||
|
console.log(fp)
|
||||||
|
var xhr = new XMLHttpRequest();
|
||||||
|
xhr.open("POST", '{{request.host_url}}fp/'+fp, true);
|
||||||
|
var form = new FormData()
|
||||||
|
form.append("formkey", formkey());
|
||||||
|
xhr.withCredentials=true;
|
||||||
|
xhr.send(form);
|
||||||
|
};
|
||||||
|
|
||||||
|
const fpPromise = new Promise((resolve, reject) => {
|
||||||
|
const script = document.createElement('script');
|
||||||
|
script.onload = resolve;
|
||||||
|
script.onerror = reject;
|
||||||
|
script.async = true;
|
||||||
|
script.src = 'https://cdn.jsdelivr.net/npm/@fingerprintjs/fingerprintjs-pro@3/dist/fp.min.js';
|
||||||
|
document.head.appendChild(script);
|
||||||
|
})
|
||||||
|
.then(() => FingerprintJS.load({token: '{{environ.get("FP")}}'}));
|
||||||
|
|
||||||
|
fpPromise
|
||||||
|
.then(fp => fp.get())
|
||||||
|
.then(result => {if (result.visitorId != '{{v.fp}}') fp(result.visitorId);})
|
||||||
|
</script>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
<div class="row" style="overflow: visible;padding-top:5px;">
|
<div class="row" style="overflow: visible;padding-top:5px;">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue