out of date and seemingly wrong encoding

master
Egg 2023-06-30 12:58:33 +02:00
parent d584cb7d79
commit 97e0566759
1 changed files with 42 additions and 41 deletions

83
user.py
View File

@ -104,6 +104,7 @@ schlitz
if word in default_badwords.splitlines(): if word in default_badwords.splitlines():
logger.error("Word " + word + " triggered the spam filter on message: " + report.text) logger.error("Word " + word + " triggered the spam filter on message: " + report.text)
return False return False
logger.info("Valid report: " + report.text + " | username: " + report.author)
return True return True
def get_last_twitter_request(self): def get_last_twitter_request(self):
@ -117,16 +118,16 @@ schlitz
db.commit() db.commit()
def get_telegram_credentials(self): def get_telegram_credentials(self):
db.execute("""SELECT apikey db.execute("""SELECT apikey
FROM telegram_accounts FROM telegram_accounts
WHERE user_id = ? AND active = 1;""", WHERE user_id = ? AND active = 1;""",
(self.uid,)) (self.uid,))
row = db.cur.fetchone() row = db.cur.fetchone()
return row[0] return row[0]
def get_telegram_subscribers(self): def get_telegram_subscribers(self):
db.execute("""SELECT subscriber_id db.execute("""SELECT subscriber_id
FROM telegram_subscribers FROM telegram_subscribers
WHERE user_id = ?;""", WHERE user_id = ?;""",
(self.uid,)) (self.uid,))
rows = db.cur.fetchall() rows = db.cur.fetchall()
@ -139,21 +140,21 @@ schlitz
db.commit() db.commit()
def remove_telegram_subscribers(self, subscriber_id): def remove_telegram_subscribers(self, subscriber_id):
db.execute("""DELETE db.execute("""DELETE
FROM telegram_subscribers FROM telegram_subscribers
WHERE user_id = ? WHERE user_id = ?
AND subscriber_id = ?;""", AND subscriber_id = ?;""",
(self.uid, subscriber_id)) (self.uid, subscriber_id))
db.commit() db.commit()
def get_masto_credentials(self): def get_masto_credentials(self):
db.execute("""SELECT access_token, instance_id db.execute("""SELECT access_token, instance_id
FROM mastodon_accounts FROM mastodon_accounts
WHERE user_id = ? AND active = 1;""", WHERE user_id = ? AND active = 1;""",
(self.uid,)) (self.uid,))
row = db.cur.fetchone() row = db.cur.fetchone()
db.execute("""SELECT instance, client_id, client_secret db.execute("""SELECT instance, client_id, client_secret
FROM mastodon_instances FROM mastodon_instances
WHERE id = ?;""", WHERE id = ?;""",
(row[1],)) (row[1],))
instance = db.cur.fetchone() instance = db.cur.fetchone()
@ -271,11 +272,11 @@ schlitz
db.commit() db.commit()
def get_request_token(self): def get_request_token(self):
db.execute("""SELECT request_token, request_token_secret db.execute("""SELECT request_token, request_token_secret
FROM twitter_request_tokens FROM twitter_request_tokens
WHERE user_id = ?;""", (self.uid,)) WHERE user_id = ?;""", (self.uid,))
request_token = db.cur.fetchone() request_token = db.cur.fetchone()
db.execute("""DELETE FROM twitter_request_tokens db.execute("""DELETE FROM twitter_request_tokens
WHERE user_id = ?;""", (self.uid,)) WHERE user_id = ?;""", (self.uid,))
db.commit() db.commit()
return {"oauth_token": request_token[0], return {"oauth_token": request_token[0],
@ -308,8 +309,8 @@ schlitz
db.commit() db.commit()
def get_mastodon_app_keys(self, instance): def get_mastodon_app_keys(self, instance):
db.execute("""SELECT client_id, client_secret db.execute("""SELECT client_id, client_secret
FROM mastodon_instances FROM mastodon_instances
WHERE instance = ?;""", (instance,)) WHERE instance = ?;""", (instance,))
try: try:
row = db.cur.fetchone() row = db.cur.fetchone()
@ -328,8 +329,8 @@ schlitz
return client_id, client_secret return client_id, client_secret
def save_masto_token(self, access_token, instance): def save_masto_token(self, access_token, instance):
db.execute("""SELECT id db.execute("""SELECT id
FROM mastodon_instances FROM mastodon_instances
WHERE instance = ?;""", (instance,)) WHERE instance = ?;""", (instance,))
instance_id = db.cur.fetchone()[0] instance_id = db.cur.fetchone()[0]
db.execute("INSERT INTO mastodon_accounts(user_id, access_token, instance_id, active) " db.execute("INSERT INTO mastodon_accounts(user_id, access_token, instance_id, active) "
@ -365,20 +366,20 @@ Schau einfach auf das Profil unseres Bots: """ + twit_link + """
Hat jemand vor kurzem etwas über Kontrolleur\*innen gepostet? Hat jemand vor kurzem etwas über Kontrolleur\*innen gepostet?
* Wenn ja, dann kauf dir vllt lieber ein Ticket. In Nürnberg * Wenn ja, dann kauf dir vllt lieber ein Ticket. In Nürnberg
haben wir die Erfahrung gemacht, dass Kontis normalerweile haben wir die Erfahrung gemacht, dass Kontis normalerweile
ungefähr ne Woche aktiv sind, ein paar Stunden am Tag. Wenn es ungefähr ne Woche aktiv sind, ein paar Stunden am Tag. Wenn es
also in den letzten Stunden einen Bericht gab, pass lieber also in den letzten Stunden einen Bericht gab, pass lieber
auf. auf.
* Wenn nicht, ist es wahrscheinlich kein Problem :) * Wenn nicht, ist es wahrscheinlich kein Problem :)
Wir können natürlich nicht garantieren, dass es sicher ist, Wir können natürlich nicht garantieren, dass es sicher ist,
also pass trotzdem auf, wer auf dem Bahnsteig steht. also pass trotzdem auf, wer auf dem Bahnsteig steht.
Aber je mehr Leute mitmachen, desto eher kannst du dir sicher Aber je mehr Leute mitmachen, desto eher kannst du dir sicher
sein, dass wir sie finden, bevor sie uns finden. sein, dass wir sie finden, bevor sie uns finden.
Wenn du immer direkt gewarnt werden willst, kannst du auch die Wenn du immer direkt gewarnt werden willst, kannst du auch die
Benachrichtigungen über E-Mail, Telegram, oder den Mastodon RSS Benachrichtigungen über E-Mail, Telegram, oder den Mastodon RSS
feed aktivieren. Entweder: feed aktivieren. Entweder:
* Gibt hier [deine E-Mail-Adresse an](/city/mail/""" + city + """) * Gibt hier [deine E-Mail-Adresse an](/city/mail/""" + city + """)
* Subscribe dem Telegram-Bot [@ticketfrei_""" + city + \ * Subscribe dem Telegram-Bot [@ticketfrei_""" + city + \
@ -386,7 +387,7 @@ feed aktivieren. Entweder:
* oder subscribe dem RSS feed von [""" + city + """](""" + masto_link + \ * oder subscribe dem RSS feed von [""" + city + """](""" + masto_link + \
""".atom?replies=false&boosts=true) """.atom?replies=false&boosts=true)
Also, wenn du weniger Glück hast, und der erste bist, der einen Also, wenn du weniger Glück hast, und der erste bist, der einen
Kontrolleur sieht: Kontrolleur sieht:
## Was mache ich, wenn ich Kontis sehe? ## Was mache ich, wenn ich Kontis sehe?
@ -397,10 +398,10 @@ Ganz einfach, du schreibst es den anderen. Das geht entweder
* über Twitter: [Link zu unserem Profil](""" + twit_link + """) * über Twitter: [Link zu unserem Profil](""" + twit_link + """)
* über Telegram an [@ticketfrei_""" + city + "_bot](https://t.me/ticketfrei_" \ * über Telegram an [@ticketfrei_""" + city + "_bot](https://t.me/ticketfrei_" \
+ city + """_bot) + city + """_bot)
* Oder per Mail an [""" + mailinglist + "](mailto:" + mailinglist + """), wenn * Oder per Mail an [""" + mailinglist + "](mailto:" + mailinglist + """), wenn
ihr kein Social Media benutzen wollt. ihr kein Social Media benutzen wollt.
Schreibe einfach einen Toot oder einen Tweet, der den Bot Schreibe einfach einen Toot oder einen Tweet, der den Bot
mentioned, und gib an mentioned, und gib an
* Wo du die Kontis gesehen hast * Wo du die Kontis gesehen hast
@ -412,11 +413,11 @@ Zum Beispiel so:
![A toot ready to be shared](https://github.com/b3yond/ticketfrei/raw/stable1/guides/toot_screenshot.png) ![A toot ready to be shared](https://github.com/b3yond/ticketfrei/raw/stable1/guides/toot_screenshot.png)
Der Bot wird die Nachricht dann weiterverbreiten, auch zu den Der Bot wird die Nachricht dann weiterverbreiten, auch zu den
anderen Netzwerken. anderen Netzwerken.
Dann können andere Leute das lesen und sicher vor Kontis sein. Dann können andere Leute das lesen und sicher vor Kontis sein.
Danke, dass du mithilfst, öffentlichen Verkehr für alle Danke, dass du mithilfst, öffentlichen Verkehr für alle
sicherzustellen! sicherzustellen!
## Kann ich darauf vertrauen, was random stranger from the Internet mir da erzählen? ## Kann ich darauf vertrauen, was random stranger from the Internet mir da erzählen?
@ -425,31 +426,31 @@ Aber natürlich! Wir haben Katzenbilder!
![Katzenbilder!](https://lorempixel.com/550/300/cats) ![Katzenbilder!](https://lorempixel.com/550/300/cats)
Glaubt besser nicht, wenn jemand postet, dass die Luft da und Glaubt besser nicht, wenn jemand postet, dass die Luft da und
da gerade rein ist. da gerade rein ist.
Das ist vielleicht sogar gut gemeint - aber klar könnte die Das ist vielleicht sogar gut gemeint - aber klar könnte die
VAG sich hinsetzen und einfach lauter Falschmeldungen posten. VAG sich hinsetzen und einfach lauter Falschmeldungen posten.
Aber Falschmeldungen darüber, dass gerade Kontis i-wo unterwegs Aber Falschmeldungen darüber, dass gerade Kontis i-wo unterwegs
sind? sind?
Das macht keinen Sinn. Das macht keinen Sinn.
Im schlimmsten Fall kauft jmd mal eine Fahrkarte mehr - aber Im schlimmsten Fall kauft jmd mal eine Fahrkarte mehr - aber
kann sonst immer schwarz fahren. kann sonst immer schwarz fahren.
Also ja - es macht Sinn, uns zu vertrauen, wenn wir sagen, wo Also ja - es macht Sinn, uns zu vertrauen, wenn wir sagen, wo
gerade Kontis sind. gerade Kontis sind.
## Was ist Mastodon und warum sollte ich es benutzen? ## Was ist Mastodon und warum sollte ich es benutzen?
Mastodon ist ein dezentrales soziales Netzwerk - so wie Mastodon ist ein dezentrales soziales Netzwerk - so wie
Twitter, nur ohne Monopol und Zentralismus. Twitter, nur ohne Monopol und Zentralismus.
Ihr könnt Kurznachrichten (Toots) über alles mögliche Ihr könnt Kurznachrichten (Toots) über alles mögliche
schreiben, und euch mit anderen austauschen. schreiben, und euch mit anderen austauschen.
Mastodon ist Open Source, Privatsphäre-freundlich und relativ Mastodon ist Open Source, Privatsphäre-freundlich und relativ
sicher vor Zensur. sicher vor Zensur.
Um Mastodon zu benutzen, besucht diese Seite: Um Mastodon zu benutzen, besucht diese Seite:
[https://joinmastodon.org/](https://joinmastodon.org/) [https://joinmastodon.org/](https://joinmastodon.org/)
""" """
mail_md = """# Immer up-to-date mail_md = """# Immer up-to-date
@ -459,15 +460,15 @@ zu schauen? Kein Problem. Unsere Mail Notifications benachrichtigen dich, wenn
irgendwo Kontis gesehen werden. irgendwo Kontis gesehen werden.
Wenn du uns deine E-Mail-Adresse gibst, kriegst du bei jedem Konti-Report eine Wenn du uns deine E-Mail-Adresse gibst, kriegst du bei jedem Konti-Report eine
Mail. Wenn du eine Mail-App auf dem Handy hast, so wie Mail. Wenn du eine Mail-App auf dem Handy hast, so wie
[K9Mail](https://k9mail.github.io/), kriegst du sogar eine Push Notification. So [K9Mail](https://k9mail.github.io/), kriegst du sogar eine Push Notification. So
bist du immer Up-to-date über alles, was im Verkehrsnetz passiert. bist du immer Up-to-date über alles, was im Verkehrsnetz passiert.
## Keine Sorge ## Keine Sorge
Wir benutzen deine E-Mail-Adresse selbstverständlich für nichts anderes. Du Wir benutzen deine E-Mail-Adresse selbstverständlich für nichts anderes. Du
kannst die Benachrichtigungen jederzeit deaktivieren, mit jeder Mail wird ein kannst die Benachrichtigungen jederzeit deaktivieren, mit jeder Mail wird ein
unsubscribe-link mitgeschickt. unsubscribe-link mitgeschickt.
""" """
db.execute("""INSERT INTO cities(user_id, city, markdown, mail_md, db.execute("""INSERT INTO cities(user_id, city, markdown, mail_md,
masto_link, twit_link) VALUES(?,?,?,?,?,?)""", masto_link, twit_link) VALUES(?,?,?,?,?,?)""",