From f3c33396cca2e104221435f17d6f6c3337395466 Mon Sep 17 00:00:00 2001 From: lars Date: Tue, 6 Jan 2009 10:46:00 +0000 Subject: [PATCH] OSM scripts: * moved the bulk mailing script to a different location * added a script to improve the output of the OSM-QA data for MV --- osm/bulk-message/generate_send_message_url.py | 71 +++++++++++++++++ osm/bulk-message/html_footer.inc | 4 + osm/bulk-message/html_header.inc | 3 + osm/bulk-message/info.txt | 36 +++++++++ osm/bulk-message/username_to_number.sh | 20 +++++ osm/qa/generate_unmapped_places.sh | 77 +++++++++++++++++++ 6 files changed, 211 insertions(+) create mode 100755 osm/bulk-message/generate_send_message_url.py create mode 100644 osm/bulk-message/html_footer.inc create mode 100644 osm/bulk-message/html_header.inc create mode 100644 osm/bulk-message/info.txt create mode 100755 osm/bulk-message/username_to_number.sh create mode 100755 osm/qa/generate_unmapped_places.sh diff --git a/osm/bulk-message/generate_send_message_url.py b/osm/bulk-message/generate_send_message_url.py new file mode 100755 index 0000000..47a5712 --- /dev/null +++ b/osm/bulk-message/generate_send_message_url.py @@ -0,0 +1,71 @@ +#!/usr/bin/env python + +import sys + +SEND_MESSAGE_URL = "http://openstreetmap.org/message/new/%d" + +# BEWARE: all non-7-bit ascii characters (umlauts and so on ...) are ignored +message_title = "Neue regionale Mailingliste fuer Mecklenburg-Vorpommern" +message_body_template = """Hallo %s, + +du erhaeltst diese Nachricht, da du aus Mecklenburg-Vorpommern kommst oder weil du mehr als 500 Nodes bzw. Wege in MV bearbeitet hast. + +Seit heute gibt es eine neue regionale OSM-Mailingliste fuer Mecklenburg-Vorpommern. + +Die Liste wird hoffentlich ein hilfreiches Medium zur Diskussion lokaler Themen, zur Planung von Mapping-Parties oder einfach nur zur gegenseitigen Wahrnehmung der verstreuten Nachbarn werden. + +Wenn du am Fortschritt von OSM in Mecklenburg-Vorpommern interessiert bist, dann trage dich doch bitte in die neue Mailingliste ein: +http://lists.openstreetmap.de/cgi-bin/mailman/listinfo/meckpomm + +Vielleicht schaffen wir es ja trotz der derzeit unwirtlichen Wetterzustaende in Kuerze mal eine Mapping-Party zu organisieren, um langsam die zahlreichen weissen Flecken von MV zu verschoenern ... + +Eventuell bis bald auf der Mailingliste, +Lars + +PS: falls dich die regionale Mailingliste nicht interessiert, dann ignoriere diese Nachricht einfach. Du wirst keine weiteren Nachrichten mehr erhalten. +""" + +# return a html encoded representation (e.g. %20 for a space) +# ignore 8-bit ascii characters +def mask_text(text): + result = "" + for char in text: + num = ord(char) + if num > 127: + # non-ascii (7-bit) + pass + elif num > 15: + # two digits + result += "%" + hex(num)[2:] + else: + # one digit + result += "%0" + hex(num)[2:] + return result + + +def generate_URL(username, user_id): + message = mask_text(message_body_template % username) + title = mask_text(message_title) + return (SEND_MESSAGE_URL + "?message[title]=%s&message[body]=%s") % \ + (user_id, title, message) + + +def generate_html_link(username, link): + return "
  • %s
  • \n" % (link, username) + + +if __name__ == "__main__": + if len(sys.argv) == 3: + username = sys.argv[1] + try: + user_id = int(sys.argv[2]) + except ValueError: + sys.stderr.write("invalid user id: %s\n" % sys.argv[2]) + sys.exit(2) + print generate_html_link(username, generate_URL(username, user_id)) + else: + sys.stderr.write("invalid input\n") + sys.exit(1) + + sys.exit(0) + diff --git a/osm/bulk-message/html_footer.inc b/osm/bulk-message/html_footer.inc new file mode 100644 index 0000000..8fdf4c6 --- /dev/null +++ b/osm/bulk-message/html_footer.inc @@ -0,0 +1,4 @@ + + + + diff --git a/osm/bulk-message/html_header.inc b/osm/bulk-message/html_header.inc new file mode 100644 index 0000000..844d8f7 --- /dev/null +++ b/osm/bulk-message/html_header.inc @@ -0,0 +1,3 @@ + + +