plakateapp

Check-in [b097839206]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:LICENSE: Copyright erweitert; README ergänzt; Flask-Server wird jetzt über gevent gestartet.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | master | trunk
Files: files | file ages | folders
SHA3-256: b097839206b0084a0dea5edd89695e0a8768a576a2c0a5d7fa52d771a225c9b6
User & Date: git@tuxproject.de 2017-05-03 08:10:30
Context
2017-05-03
08:13
jQuery und Leaflet.js aktualisiert check-in: bb15585648 user: git@tuxproject.de tags: master, trunk
08:10
LICENSE: Copyright erweitert; README ergänzt; Flask-Server wird jetzt über gevent gestartet. check-in: b097839206 user: git@tuxproject.de tags: master, trunk
2016-09-25
00:40
first commit check-in: 52e2986e75 user: git@tuxproject.de tags: master, trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to LICENSE.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
                    Version 2, December 2004

 Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>

 Everyone is permitted to copy and distribute verbatim or modified
 copies of this license document, and changing it is allowed as long
 as the name is changed.

            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. You just DO WHAT THE FUCK YOU WANT TO.




|










1
2
3
4
5
6
7
8
9
10
11
12
13
14
            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
                    Version 2, December 2004

 Copyright (C) 2016-17 tux. <git@tuxproject.de>

 Everyone is permitted to copy and distribute verbatim or modified
 copies of this license document, and changing it is allowed as long
 as the name is changed.

            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. You just DO WHAT THE FUCK YOU WANT TO.

Changes to README.md.

4
5
6
7
8
9
10
11
12

13
14
15
16
17
18
19

## Hä? Haste mal ein Beispiel?

Klar. Nehmen wir an, ihr wollt für irgendeinen Verein eure Stadt vollplakatieren, wollt aber den Überblick behalten, wo überall Plakate hängen, um sie später wieder entfernen zu können. Genau diesem Zweck dient diese Anwendung.

## Technik

Ihr braucht auf eurem Server nur Python und das Flask-Modul (`pip install flask`), alles Weitere lädt die Website automatisch:


    python ./server.py

Die Karte ist anschließend über den Port 6090 (einstellbar direkt in der Datei `server.py`) erreichbar. Unter `/manageplakate` gibt es auch eine einfache Liste aller eingetragenen Plakate zum schnellen Löschen. Das Großteil des UIs wurde mit [Leafjet.js](http://leafletjs.com/) programmiert.

## Urheberrecht? Quatsch.

Die Plakateapp wurde ursprünglich für den Kommunalwahlkampf in Niedersachsen 2016 von [@tux0r](https://twitter.com/tux0r) hektisch (also eher zweckmäßig als gut) für die Piratenpartei Braunschweig programmiert (weshalb der Standard für die Position mitten in Braunschweig liegt, aber das könnt ihr im Javascript-Code ändern). All dies hier steht unter der [WTFPL v2](http://www.wtfpl.net/txt/copying/), ihr dürft also gern damit wegrennen und es teuer verscherbeln. Viel Spaß!







|

>







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

## Hä? Haste mal ein Beispiel?

Klar. Nehmen wir an, ihr wollt für irgendeinen Verein eure Stadt vollplakatieren, wollt aber den Überblick behalten, wo überall Plakate hängen, um sie später wieder entfernen zu können. Genau diesem Zweck dient diese Anwendung.

## Technik

Ihr braucht auf eurem Server nur Python und die Module `Flask` und `gevent`, alles Weitere lädt die Website automatisch:

    pip install flask gevent
    python ./server.py

Die Karte ist anschließend über den Port 6090 (einstellbar direkt in der Datei `server.py`) erreichbar. Unter `/manageplakate` gibt es auch eine einfache Liste aller eingetragenen Plakate zum schnellen Löschen. Das Großteil des UIs wurde mit [Leafjet.js](http://leafletjs.com/) programmiert.

## Urheberrecht? Quatsch.

Die Plakateapp wurde ursprünglich für den Kommunalwahlkampf in Niedersachsen 2016 von [@tux0r](https://twitter.com/tux0r) hektisch (also eher zweckmäßig als gut) für die Piratenpartei Braunschweig programmiert (weshalb der Standard für die Position mitten in Braunschweig liegt, aber das könnt ihr im Javascript-Code ändern). All dies hier steht unter der [WTFPL v2](http://www.wtfpl.net/txt/copying/), ihr dürft also gern damit wegrennen und es teuer verscherbeln. Viel Spaß!

Changes to src/server.py.

1
2
3

4
5
6
7
8
9
10
..
82
83
84
85
86
87
88
89






import sqlite3
import json
from flask import Flask, render_template, request, send_from_directory, redirect


app = Flask(__name__)

PORT = 6090

@app.route('/')
def hauptseite():
................................................................................


@app.route('/templates/<path:path>', strict_slashes = False)
def web_static(path):
    # Statische Templatedateien ausliefern
    return send_from_directory('templates', path)

app.run(host='0.0.0.0', port=PORT, debug=False)









>







 







|
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
..
83
84
85
86
87
88
89
90
91
92
93
94
95
96
import sqlite3
import json
from flask import Flask, render_template, request, send_from_directory, redirect
from gevent.wsgi import WSGIServer

app = Flask(__name__)

PORT = 6090

@app.route('/')
def hauptseite():
................................................................................


@app.route('/templates/<path:path>', strict_slashes = False)
def web_static(path):
    # Statische Templatedateien ausliefern
    return send_from_directory('templates', path)

http_server = WSGIServer(('0.0.0.0', PORT), app)
try:
    http_server.serve_forever()
except KeyboardInterrupt:
    print("Beende die Plakate-App...")
    if http_server.started:
        http_server.stop()