Diskussion:Tourpl: Unterschied zwischen den Versionen

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche
Zeile 23: Zeile 23:
 
== Task List ==
 
== Task List ==
  
 +
* Bugs/Errors
 +
* tbd.
  
 
+
=== Bugs/Errors ===
== Bugs/Errors ==
 
  
 
* Tab/Button  "Upload":
 
* Tab/Button  "Upload":
Zeile 40: Zeile 41:
 
* GUI
 
* GUI
 
** Nach visuellem Umordnen der Liste oder in der Karte muss die Gesamtdistanz neu berechnet werden.
 
** Nach visuellem Umordnen der Liste oder in der Karte muss die Gesamtdistanz neu berechnet werden.
 +
 +
=== Features ===
  
 
Feature "Fahrtenzeilen": Einbau Fahrtenzeilen/Zusatzzeilen (vgl. Beispiel unten):
 
Feature "Fahrtenzeilen": Einbau Fahrtenzeilen/Zusatzzeilen (vgl. Beispiel unten):
Zeile 50: Zeile 53:
 
** "Fahrtenzeilen" ignorieren (Zeilen, bei denen nur in den ersten beiden Kolonnen Werte sind); Zukunft: Zwischenspeichern?.
 
** "Fahrtenzeilen" ignorieren (Zeilen, bei denen nur in den ersten beiden Kolonnen Werte sind); Zukunft: Zwischenspeichern?.
  
Feature Stau berücksichtigen
+
GUI:  
* ...
+
* Bei Exceptions/Fehler einen schönen Dialog anzeigen und zur Startseite zurückkehren.
 
+
* Einbau Anzeige Datum+Zeit "Data 07.10.2011 03:23 (UTC) -1 Day" (analog [[Diskussion:PostGIS Terminal]]).
Kleinere Features:
+
* Nicht nur Gesamtdistanz sondern die Gesamtreisezeit anzeigen "(54 min./86.96 km)".
* Tab/Button "Upload":
 
* Tab/Button "Download":
 
* Tab/Button "Löschen"
 
* GUI:  
 
** Bei Exceptions/Fehler einen schönen Dialog anzeigen und zur Startseite zurückkehren.
 
** Einbau Anzeige Datum+Zeit "Data 07.10.2011 03:23 (UTC) -1 Day" (analog [[Diskussion:PostGIS Terminal]]).
 
** Nicht nur Gesamtdistanz sondern die Gesamtreisezeit anzeigen "(54 min./86.96 km)".
 
* Tab/Button "Verbessern"
 
 
 
== Feature Requests ==
 
 
 
Adressen:
 
* Use Cases und Screen Mocks für Anschauen / Editieren Modi (Download "alle Adressen" vs. "nur Tour")
 
 
 
Upload:
 
* CSV-Parser/Reader:
 
** Zellen mit unsichtbaren Spaces nach letztem Eintrag sollen ignoriert werden.
 
* Falls Fehler beim wiederholten "Upload" soll die Tour erhalten bleiben.
 
 
 
Download:
 
* Weitere Formate, z.B. Excel (.xlsx) oder Office Calc (.odx)?
 
 
 
GUI:
 
 
* Nach ("Upload" oder "Verbessern") die BBox für einen "Zoom to full extent" berechnen und hereinzomen.
 
* Nach ("Upload" oder "Verbessern") die BBox für einen "Zoom to full extent" berechnen und hereinzomen.
 
* Bei "Drucken" (und anderen Aktionen, wie z.B. "Abbrechen") soll die aktuelle Ansicht erhalten bleiben.  
 
* Bei "Drucken" (und anderen Aktionen, wie z.B. "Abbrechen") soll die aktuelle Ansicht erhalten bleiben.  
 +
 
* Zum Zwecke des Neusetzens des Startpunkts oder der nachträglichen Verbesserung "von Hand":  
 
* Zum Zwecke des Neusetzens des Startpunkts oder der nachträglichen Verbesserung "von Hand":  
 
** Visuelles Umordnen in der Karte (vorhandener Code einbauen!) Reihenfolge in Karte interaktiv umstellen (vgl. [http://wiki.hsr.ch/StefanKeller/wiki.cgi?OpenLayersKnacknuss OpenLayers Knacknuss]).
 
** Visuelles Umordnen in der Karte (vorhandener Code einbauen!) Reihenfolge in Karte interaktiv umstellen (vgl. [http://wiki.hsr.ch/StefanKeller/wiki.cgi?OpenLayersKnacknuss OpenLayers Knacknuss]).
 
** (Wie die Eingabe von Rahmenbedingungen erfolgen soll, ist noch nicht ganz klar)
 
** (Wie die Eingabe von Rahmenbedingungen erfolgen soll, ist noch nicht ganz klar)
* Anzeigen der zuletzt aufgerufenen Touren, so wie das http://bitly.com/ auch macht (mittels Cookie?).
+
 
 +
 
 
* Nicht erkannte Adressen interaktiv als Marker in Karte setzen.
 
* Nicht erkannte Adressen interaktiv als Marker in Karte setzen.
 
* Tourpl-Logo als Weblink (wie "Home").
 
* Tourpl-Logo als Weblink (wie "Home").
Zeile 90: Zeile 72:
 
* Bei Umschalten auf bzw. Zoomen von Google Hybrid, den Dialog "Kartendaten: Grafiken (c) 2011 Terrametrics <Schließen>" entfernen. Ist möglicherweise nicht im Sinne von Google, doch die Terms of use lassen ev. zu, dass man einen Copyright-Text separat platziert. Hier eine angebliche Lösung des Problems: "Hide the Google Logo in Google Maps" [http://oelna.de/blog/?p=166].
 
* Bei Umschalten auf bzw. Zoomen von Google Hybrid, den Dialog "Kartendaten: Grafiken (c) 2011 Terrametrics <Schließen>" entfernen. Ist möglicherweise nicht im Sinne von Google, doch die Terms of use lassen ev. zu, dass man einen Copyright-Text separat platziert. Hier eine angebliche Lösung des Problems: "Hide the Google Logo in Google Maps" [http://oelna.de/blog/?p=166].
  
Statisches Layout:
+
Feature Stau-Vermeidung und -Umfahrung:  
* Icons statt Weblinks in den Tabs (Vorlage, Upload, Download, etc.)
+
* Zunächst soll die Tour-Zusammenstellung durch Umstellung der Reihenfolge berücksichtigen, dass Zwischenhalte vermieden werden, die im Stau liegen. Geht es nicht anders, soll empfohlen werden, eine Umfahrung zu wählen.
* Weblink der Werbung hinterlegen, so dass man drauf klicken kann und (z.Zt.) in einem neuen Tab sich http://ambienteverde.ch öffnet
+
* ...
* Werbung verwalten.
 
* Kleiner Versatz des Balkens oben rechts beim HSR-Logo um ein Pixel beheben (ist ev. mit Icons obsolet).
 
  
 
Verschiedenes/Allgemeines:
 
Verschiedenes/Allgemeines:
 
* Geocodieren: Falls Adresse nicht erkannt wird => Grau machen und ignorieren.
 
* Geocodieren: Falls Adresse nicht erkannt wird => Grau machen und ignorieren.
* Marker nicht nur mit Nummer sondern neu auch mit Name beschriften
 
* Logging von "Neu erstellen Tourenplan" und von Löschen.
 
* Job robuster machen für weniger Ausfallzeiten à la [[EOSMDBOne]]
 
  
Print:
 
* Editieren (Druck-)Titel und -Beschreibung
 
* Speichern (Druck-)Titel und -Beschreibung
 
* Drucken (Druckansicht) = Print View = Drucken mit Liste und Karte
 
  
== Ideen ==
 
  
* Stau-Vermeidung: Ist Stau für den nächsten Tag (wählbar) prognostiziert, wird zuerst versucht, die Tour-Reihenfolge anzupassen oder aber eine Umfahrung vorgeschlagen.
+
Tab Adressen: Verwalten ganze Kontakte-Stamm in sep. Tab. ("Read Only" ohne Login)
* Verwalten ganze Kontakte-Stamm in sep. Tab.;
+
* Use Cases und Screen Mocks für Anschauen / Editieren Modi (Download "alle Adressen" vs. "nur Tour")
** Kontakt editieren und neuer hinzufügen.
 
 
** Kontakte für Tour einzeln in Liste selektieren/deselektieren.  
 
** Kontakte für Tour einzeln in Liste selektieren/deselektieren.  
 
** Kontakte für Tour in Karte selektieren/deselektieren.
 
** Kontakte für Tour in Karte selektieren/deselektieren.
 
** Kontakte in Karte mit Lasso selektieren.
 
** Kontakte in Karte mit Lasso selektieren.
** Download ganzer Kontakte-Stamm.
 
** Kontakte synchronisieren/anbinden (zusätzlich zum CSV-Upload); verlangt kostenloses Konto (MyTourpl):
 
** Importieren von Outlook-Kontakten (mit Plugin; funktioniert für Outlook 2007 und 2010; Realisierungsansatz: [http://msdn.microsoft.com/de-de/library/bb978959.aspx SmartClient AddIn für Microsoft Outlook]).
 
*** Importieren von MS Exchange-Kontakten
 
*** Importieren von Google-Kontakten und anderen Social Software (vgl. [http://openinviter.com/ OpenInviter]). 
 
  
* GUI:  
+
=== Ideen ===
** Editieren und Hinzufügen von Adressen direkt in der Liste
+
 
 +
Tab/Button "Upload":
 +
* CSV-Parser/Reader: Zellen mit unsichtbaren Spaces nach letztem Eintrag sollen ignoriert werden.
 +
* Falls Fehler beim wiederholten "Upload" soll die Tour erhalten bleiben.
 +
* Weitere Formate, z.B. Excel (.xlsx) oder Office Calc (.odx)?
 +
* Erläuterungen zum Upload a la Google...: [https://mail.google.com/support/bin/answer.py?answer=12119 CSV in Google Contats importieren].
 +
 
 +
Tab/Button "Download":
 +
* ...
 +
 
 +
Tab/Button "Löschen":
 +
* ...
 +
 
 +
Tab/Button "Verbessern":
 +
* ...
 +
 
 +
Tab "Print":
 +
* Editieren (Druck-)Titel und -Beschreibung
 +
* Speichern (Druck-)Titel und -Beschreibung
 +
* Drucken (Druckansicht) = Print View = Drucken mit Liste und Karte
 +
 
 +
Tab Adressen mit Konto/OpenID (MyTourpl):
 +
* Kontakt editieren und neuer hinzufügen.
 +
* Download ganzer Kontakte-Stamm.
 +
* Kontakte synchronisieren/anbinden (zusätzlich zum CSV-Upload)
 +
* Importieren von Outlook-Kontakten (mit Plugin; funktioniert für Outlook 2007 und 2010; Realisierungsansatz: [http://msdn.microsoft.com/de-de/library/bb978959.aspx SmartClient AddIn für Microsoft Outlook]).
 +
** Importieren von MS Exchange-Kontakten
 +
** Importieren von Google-Kontakten und anderen Social Software (vgl. [http://openinviter.com/ OpenInviter]). 
 +
 
 +
GUI / Statisches Layout:
 +
* Zusätzliche Sprache Französich
 
* Nahe beieinander liegende Marker?
 
* Nahe beieinander liegende Marker?
* Version für Mobiles
+
* Icons statt Weblinks in den Tabs (Vorlage, Upload, Download, etc.)
+
* Weblink der Werbung hinterlegen, so dass man drauf klicken kann und (z.Zt.) in einem neuen Tab sich http://ambienteverde.ch öffnet
Premium-Funktionen:
+
* Werbung verwalten.
* Stau-Vermeidung und -Umfahrung: Zunächst soll die Tour-Zusammenstellung durch Umstellung der Reihenfolge berücksichtigen, dass Zwischenhalte vermieden werden, die im Stau liegen. Geht es nicht anders, soll empfohlen werden, eine Umfahrung zu wählen.
+
* Kleiner Versatz des Balkens oben rechts beim HSR-Logo um ein Pixel beheben (ist ev. mit Icons obsolet).
 +
 
 +
Verschiedenes/Allgemeines:
 +
* Anzeigen der zuletzt aufgerufenen Touren, so wie das http://bitly.com/ auch macht (mittels Cookie?).
 +
* Marker nicht nur mit Nummer sondern neu auch mit Name beschriften
 +
* Logging von "Neu erstellen Tourenplan" und von Löschen.
 +
* Job robuster machen für weniger Ausfallzeiten à la [[EOSMDBOne]]
 +
 
 +
Mögliche Premium-Funktionen (MyTourpl, mit Login):
 
* Unlimitierte Anzahl Routen
 
* Unlimitierte Anzahl Routen
 
* Werbefrei
 
* Werbefrei
Zeile 137: Zeile 141:
  
 
== Spezifikation CSV-Input und -Output ==
 
== Spezifikation CSV-Input und -Output ==
 
Erläuterungen a la Google...: [https://mail.google.com/support/bin/answer.py?answer=12119 CSV in Google Contats importieren].
 
  
 
Kolonnen/Felder für CSV-Upload/Input ('''fett''' obligatorisch):
 
Kolonnen/Felder für CSV-Upload/Input ('''fett''' obligatorisch):

Version vom 4. November 2011, 19:51 Uhr

Aktueller Stand und Technologien

Aktueller Stand
Die Funktionalität wird zurzeit laufend erweitert - ausser "grosse Erweiterungen", wie z.B. eine Adressverwaltung, die wir gerne über unsere Premium-Services realisieren.
Daten
  • Die Strassendaten stammen von der OpenStreetMap-Datenbank. Sie sind ca. 2 Tage alt (vgl. EOSMDBone), weil unser Download um 3 Uhr eine halbe vor dem Bereitstellen der Geodaten-Extrakts von Geofabrik startet.
  • Bei Widersprüchen zwischen PLZ und Ortsname wird die PLZ verwendet (Näheres dazu siehe Geocoder).
Technologien
  • Server: Python, SQLite
  • Clients:
    • JavaScript: OpenLayers, jQuery
    • Webbrowser: Getestet unter Firefox 3, Firefox 4, Chrome 13 und IE 8 (später ev. IE 9 und Safari).
  • Folgende externe Webservices werden genutzt:

Erledigtes unten in History einordnen.

Task List

  • Bugs/Errors
  • tbd.

Bugs/Errors

 <class 'app.helpers.route.RouteNotFound'> at /7nz2wuijijdupa4mbu35wisge4
 no such child: {http://www.opengis.net/kml/2.2}Placemark
 Python  lxml.objectify.pyx in lxml.objectify._lookupChildOrRaise (src/lxml/lxml.objectify.c:5310), line 484
 Web   GET http://tourpl.ch/7nz2wuijijdupa4mbu35wisge4

  • Der IE Explorer 8 stellt die Karte rechts statt unterhalb der Tabs/Buttons dar.
  • Tab/Button "Verbessern"
  • " Analyse Simulated Annealing: Warum wechselt die Route ständig bei kleiner Anzahl Zwischenstationen?
  • GUI
    • Nach visuellem Umordnen der Liste oder in der Karte muss die Gesamtdistanz neu berechnet werden.

Features

Feature "Fahrtenzeilen": Einbau Fahrtenzeilen/Zusatzzeilen (vgl. Beispiel unten):

  • Tab/Button "Download":
    • der Abfahrtszeit im Feld "Abfahrt", Fahrtdauer im Feld "Dauer" und im Feld Name kommt "Fahrt nach <xxx>" (Bsp. vgl. unten).
    • Die Abfahrtszeit wird mit Abfahrt und Dauer des vorangehenden Zwischenhalts berechnet.
    • Der Text in Name wird durch den Ort des Nachfolgers ergänzt (Koordinaten falls Ort nicht vorhanden).
    • Die letzte Zusatzzeile verwendet den Ort (Koordinaten) des Starts.
  • Tab/Button "Upload":
    • "Fahrtenzeilen" ignorieren (Zeilen, bei denen nur in den ersten beiden Kolonnen Werte sind); Zukunft: Zwischenspeichern?.

GUI:

  • Bei Exceptions/Fehler einen schönen Dialog anzeigen und zur Startseite zurückkehren.
  • Einbau Anzeige Datum+Zeit "Data 07.10.2011 03:23 (UTC) -1 Day" (analog Diskussion:PostGIS Terminal).
  • Nicht nur Gesamtdistanz sondern die Gesamtreisezeit anzeigen "(54 min./86.96 km)".
  • Nach ("Upload" oder "Verbessern") die BBox für einen "Zoom to full extent" berechnen und hereinzomen.
  • Bei "Drucken" (und anderen Aktionen, wie z.B. "Abbrechen") soll die aktuelle Ansicht erhalten bleiben.
  • Zum Zwecke des Neusetzens des Startpunkts oder der nachträglichen Verbesserung "von Hand":
    • Visuelles Umordnen in der Karte (vorhandener Code einbauen!) Reihenfolge in Karte interaktiv umstellen (vgl. OpenLayers Knacknuss).
    • (Wie die Eingabe von Rahmenbedingungen erfolgen soll, ist noch nicht ganz klar)


  • Nicht erkannte Adressen interaktiv als Marker in Karte setzen.
  • Tourpl-Logo als Weblink (wie "Home").
  • Option / Anzeige Abfahrtszeit in Adressenliste, editierbar.
  • Option "Mittlere Aufenthaltsdauer" (Default für Dauer des Aufenthalt bei jedem Zwischenhalt, z.B. 2h)
  • Einbau neues Logo von ambienteverde - sobald neues vorhanden.
  • Bei Umschalten auf bzw. Zoomen von Google Hybrid, den Dialog "Kartendaten: Grafiken (c) 2011 Terrametrics <Schließen>" entfernen. Ist möglicherweise nicht im Sinne von Google, doch die Terms of use lassen ev. zu, dass man einen Copyright-Text separat platziert. Hier eine angebliche Lösung des Problems: "Hide the Google Logo in Google Maps" [2].

Feature Stau-Vermeidung und -Umfahrung:

  • Zunächst soll die Tour-Zusammenstellung durch Umstellung der Reihenfolge berücksichtigen, dass Zwischenhalte vermieden werden, die im Stau liegen. Geht es nicht anders, soll empfohlen werden, eine Umfahrung zu wählen.
  • ...

Verschiedenes/Allgemeines:

  • Geocodieren: Falls Adresse nicht erkannt wird => Grau machen und ignorieren.


Tab Adressen: Verwalten ganze Kontakte-Stamm in sep. Tab. ("Read Only" ohne Login)

  • Use Cases und Screen Mocks für Anschauen / Editieren Modi (Download "alle Adressen" vs. "nur Tour")
    • Kontakte für Tour einzeln in Liste selektieren/deselektieren.
    • Kontakte für Tour in Karte selektieren/deselektieren.
    • Kontakte in Karte mit Lasso selektieren.

Ideen

Tab/Button "Upload":

  • CSV-Parser/Reader: Zellen mit unsichtbaren Spaces nach letztem Eintrag sollen ignoriert werden.
  • Falls Fehler beim wiederholten "Upload" soll die Tour erhalten bleiben.
  • Weitere Formate, z.B. Excel (.xlsx) oder Office Calc (.odx)?
  • Erläuterungen zum Upload a la Google...: CSV in Google Contats importieren.

Tab/Button "Download":

  • ...

Tab/Button "Löschen":

  • ...

Tab/Button "Verbessern":

  • ...

Tab "Print":

  • Editieren (Druck-)Titel und -Beschreibung
  • Speichern (Druck-)Titel und -Beschreibung
  • Drucken (Druckansicht) = Print View = Drucken mit Liste und Karte

Tab Adressen mit Konto/OpenID (MyTourpl):

  • Kontakt editieren und neuer hinzufügen.
  • Download ganzer Kontakte-Stamm.
  • Kontakte synchronisieren/anbinden (zusätzlich zum CSV-Upload)
  • Importieren von Outlook-Kontakten (mit Plugin; funktioniert für Outlook 2007 und 2010; Realisierungsansatz: SmartClient AddIn für Microsoft Outlook).
    • Importieren von MS Exchange-Kontakten
    • Importieren von Google-Kontakten und anderen Social Software (vgl. OpenInviter).

GUI / Statisches Layout:

  • Zusätzliche Sprache Französich
  • Nahe beieinander liegende Marker?
  • Icons statt Weblinks in den Tabs (Vorlage, Upload, Download, etc.)
  • Weblink der Werbung hinterlegen, so dass man drauf klicken kann und (z.Zt.) in einem neuen Tab sich http://ambienteverde.ch öffnet
  • Werbung verwalten.
  • Kleiner Versatz des Balkens oben rechts beim HSR-Logo um ein Pixel beheben (ist ev. mit Icons obsolet).

Verschiedenes/Allgemeines:

  • Anzeigen der zuletzt aufgerufenen Touren, so wie das http://bitly.com/ auch macht (mittels Cookie?).
  • Marker nicht nur mit Nummer sondern neu auch mit Name beschriften
  • Logging von "Neu erstellen Tourenplan" und von Löschen.
  • Job robuster machen für weniger Ausfallzeiten à la EOSMDBOne

Mögliche Premium-Funktionen (MyTourpl, mit Login):

  • Unlimitierte Anzahl Routen
  • Werbefrei
  • Kalender-Anbindung (Google, Outlook, Exchange)
  • Version für Mobiles/Smartphone
  • Priorisierter Betrieb
  • Editieren und Selektieren im Kontakt-Stamm


Spezifikation CSV-Input und -Output

Kolonnen/Felder für CSV-Upload/Input (fett obligatorisch):

  • Kolonnen-Namen: Name; Vorname; Anrede; Strasse; PLZ; Ort; Land; Telefon; Email; Koordinaten; Tourpl; Bemerkungen.
  • Mitzugeben sind mind. die Felder Name; sowie entweder 1. Adresse; PLZ; Ort; (ev. Land) oder 2. Koordinaten.
  • Felder/Kolonnen gehen keine verloren, wenn sie wie oben angegeben heissen (Case Insensitive) - ausser die Felder 'Abfahrt' und 'Dauer'.
  • Die Felder 'Abfahrt' und Dauer werden beim Druck/Download überschrieben mit neuen Tourenangaben.
  • Feld-Delimiter ist Strichpunkt, Komma, oder Tab. Strings-Delimiter ist Anführungszeichen.
  • Die Reihenfolge der Kolonnen ist irrelevant.
  • Für den mehrmaligen Upload, sollte der Upload/Import zusätzlich imstande sein, wie folgt mit dem Input umzugehen:
    • Die Kolonnen 'Abfahrt' und Dauer: Inhalt wird gelöscht und überschrieben.
    • Die Kolonnen Vorname; Telefon; Email und Bemerkungen werden eingelesen und im Download wieder mitgegeben (aber noch nicht angezeigt).
    • Zeilen, die aus weniger als drei Werte in den Kolonnen haben, werden ignoriert. Das betrifft konkret auch die Wegbeschreibung (vgl. dort) des Outputs.

Kolonnen/Felder für CSV-Download/Druckansicht:

  • Alle eingelesenen Kolonnen. Reihenfolge der Kolonnen...
  • Kolonnen-Namen: Abfahrt; Dauer; Name; Vorname; Anrede; Adresse; PLZ; Ort; Land; Telefon; Email; Koordinaten; Bemerkungen.
  • Der Feld-Delimiter ist Strichpunkt. Strings-Delimiter ist Anführungszeichen (später als Option?).
  • Das Feld 'Abfahrt' enthält die Tageszeit-Angabe, wann die Tour weitergeht zum nächsten Zwischenhalt.
  • Das Feldformat für Koordinaten ist Lat/Lon.

Beispiel für CSV-Upload/Input:

 Strasse            ;Ort          ;PLZ  ;Land      ;Name
 "Oberseestr. 10"   ;"Rapperswil" ;8640 ;"Schweiz" ;"HSR"
 "Jonastrasse 8"    ;"Wald ZH"    ;8636 ;"Schweiz" ;"Schreinerei"
 "Roosstrasse 53"   ;"Wollerau"   ;8832 ;"Schweiz" ;"Conrad Electronic" 

Beispiel für CSV-Download/Druckansicht mit Wegbeschreibung (man beachte auch neue Reihenfolge der Kolonnen!): (Vorgabe Dauer bei Zwischenhalt ist 01:00h; und Vorgabe Dauer bei "Reise nach..." ist 0:30h).

 X;Abfahrt;Dauer;Name                     ;Strasse         ;Ort         ;PLZ ; Land    ;Vorname; Anrede; Telefon; Email; Bemerkungen; Koordinaten
 X;08:00 ;      ;"Schreinerei"            ;"Jonastrasse 8" ;"Wald ZH"   ;8636;"Schweiz"; ; ; ; ; ;"47.27613,8.91014"
  ;08:00 ;00:30 ;"Fahrt nach Rapperswil"  ;;;;;;;;;
 X;08:30 ;01:00 ;"HSR"                    ;"Oberseestr. 10";"Rapperswil";8640:"Schweiz"; ; ; ; ; ;"47.22306,8.81651"
  ;09:30 ;00:30 ;"Fahrt nach Wollerau"    ;;;;;;;;;
 X;10:00 ;01:00 ;"Conrad Electronic"      ;Roosstrasse 53" ;"Wollerau"  ;8832;"Schweiz"; ; ; ; ; ;"47.18978,8.72249"
  ;11:00 ;00:30 ;"Rückfahrt nach Wald ZH" ;;;;;;;;;
 X;11:30 ;      ;"Schreinerei"            ;"Jonastrasse 8" ;"Wald ZH"   ;8636;"Schweiz"; ; ; ; ; ;"47.27613,8.91014"

History

Erste Use Cases (vgl. Tourpl-Tagesrapport):

  • UC1 "Tour erstellen": User: Adressliste vorbereiten (CSV-Format) - Upload Adressliste
  • UC5 "Neue Tour eröffnen" User: Button "Neu", Neueinstieg über Startseite
    • System: Eröffnet neue Tour: ** tour_id generiert (verkürzte uuid); Längen- und Breitengrade ergänzt durch Yahoo Geocoding; dann in sqlite DB persistieren
    • Umleitung uf tourpl.ch/?id=tour_id (besser direkt im Pfad à la Doodle)
    • Darstellung gemäss Reihenfolge Adressliste mit openlayers in Karte (Markers numerisch und mit Name) und mit JQuery in Liste
  • UC3 "Tour optimieren lassen" (Prio 3) User: Wählt "Optimieren". System: Berechnet Liste neu mit TSP-Heuristik und (vorläufig) direkte Distanzen zwischen den 'Posten'.
  • UC4 "Tour download" (CVS-Datei): User: Wählt "Download". System: Defaults Start um 08:00 Uhr, Aufenthalt 1h
  • Upload:
    • Felder "Anrede", "Email", "Telefon" und "Koordinate" sollten nicht obligatorisch sein, ggf. auch "Land" ("Land" und "Koordinate" ggf. erzeugen).
    • Adresse "Muster, Max, Dorfstrasse 100, 8105, Watt" => Gibt Error wegen "Dorfstrasse 100, 8105, Watt" (AttributeError "no such child: {http://www.opengis.net/kml/2.2}Placemark" in lxml.objectify._lookupChildOrRaise (src/lxml/lxml.objectify.c:5310), line 484)
    • Test mit realistischem Datensatz mit > 50 Adressen (tourpl_stud_test_alle.csv )
    • Permalink ohne "=", d.h. neu mit "no padding" ("=") (Standard "Base32, uppercase" ist ok und lässt das zu). Sonst kann der Link nicht in Mails verschickt werden. => Sorry: Wollte schreiben lowercase (also "Base32, lowercase, no padding")
    • Umlaute auch in ANSI/cp1251 (MS Excel).
    • Berücksichtigen derjenigen Kontakte, die im Tourpl-Feld einen Wert (ein "X") haben (Feldname und Inhalt case insensitive).
    • Falls es kein Tourpl-Feld gibt, so sollen - wie bisher - alle Adressen importiert werden
    • Feldname darf "Adresse" oder neu "Strasse" heissen.
    • Robusterer CSV-Upload (Reader), u.a. mit Leerzeilen, etc..
    • Wenn die CSV-Vorlage in MS Excel (unter Windows) importiert und wieder gespeichert (bzw. als CSV exportiert) wird, gibt es immer noch Fehler beim Upload in Tourpl. Das Problem scheint die Codierung zu sein: Die Vorlage hat Filecodierung UNIX/ANSI und nach Speicherung durch Excel hat es PC/ANSI.
  • Löschen:
    • Sicherheitsrückfrage ("Wollen Sie wirklich löschen? Ok (Abbrechen)").
  • Tab/Button "Verbessern" (Tour optimieren):
    • BUG: Der neue Algo. (mit < 20 Adressen) verändert den Startpunkt (Test http://www.tourpl.ch/v5yq4esjuvda7iicmd3nktp2ry )
    • mit Sicherheitsrückfrage ("Diese Funktion verändert die Reihenfolge. Fortfahren? (Abbrechen)").
    • mit Warte-Dialog! (graue Fläche über die Karte mit zentrierter Schrift "Bitte warten...").
    • Einbau von Brute Force Algo für Touren mit max. 10 Städten (10! ist wahrscheinlich vernünftige obere Grenze)
    • Alle Tabs/Buttons ausser "Drucken" in Fettschrift, also: | Vorlage | Upload | Download | Drucken | Löschen | Verbessern |
  • GUI:
    • Visuelles Umordnen (=> Code von Michael Weibel).
    • Anzeige wahlweise OpenStreetMap oder Google Satellit. => "Google Hybrid" ([3]) ist noch besser - und ohne das komische Feld "Kartendaten: Grafiken (c) 2011 Terrametrics <Schließen>"
    • Die Layernamen sollen anstelle "lines" und "Markers" neu heissen "Tour" und "Adressnummer"
    • Anzeige Name - Ort (statt "Adresse" /Strasse).
    • Nach Umarrangieren und "Verbessern" soll der aktuelle Ausschnitt der Karte erhalten bleiben.
  • Statisches Layout:
    • Werbung einbauen, ev. Layout (CSS) anpassen. Banner im Format "Wide Skyscraper" (gem. Standard-Werbeform IAB), d.h. 160 Pixel breit x 600 Pixel hoch, max. 50 kB, Dateiformate GIF, PNG, JPEG. Es kann auch ein animiertes SWF sein.
    • Neues FavIcon einbauen
  • Verschiedenes: