Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Cache listing] View who favorited the cache in the logs of cache listing. #1054

Closed
2Abendsegler opened this issue Nov 4, 2019 · 49 comments
Closed
Labels
enhancement prio: middle status: completed enhancement, improvement implemented

Comments

@2Abendsegler
Copy link
Owner

Moin,
mir noch etwas eingefallen. Ist es Möglich, in den Logs (unter der Fundzahl des Cachers) anzuzeigen wenn er ein FP gegeben hat?

https://geoclub.de/forum/viewtopic.php?p=1301378#p1301378

Vielleicht mit zusätzlichem Button oberhalb der Logs im Cache Listing anwählen.

@2Abendsegler 2Abendsegler self-assigned this Nov 15, 2019
@2Abendsegler 2Abendsegler added this to the v0.10 milestone Nov 15, 2019
@2Abendsegler 2Abendsegler removed their assignment Nov 24, 2019
@2Abendsegler 2Abendsegler removed this from the v0.10 milestone Nov 24, 2019
@2Abendsegler
Copy link
Owner Author

Ich habe zahlreiche Versuche gestartet an mehr als die ersten 10 Favoritenspender ranzukommen, jedoch ohne Erfolg. Ich klinke mich hier aus. Vielleicht mags noch jemand anderes versuchen.

@capoaira
Copy link
Collaborator

Hmm, schade. Ich denke mal jeden Log mit der Favoritenliste des Cachers abgleichen funktioniert nur bis zu einer geringen Anzahl, oder?

@2Abendsegler
Copy link
Owner Author

Noch ist die Sache ja nicht abgehakt. Ich bin halt nicht weitergekommen. Womöglich fällt mir ja noch etwas ein. Ruko2010 ist außerdem technisch viel versierter, wenn er mal wieder Zeit zum entwickeln hat, kommt er ja vielleicht weiter. Deshalb bleibt das Teil mal noch offen.

Ein manueller Abgleich macht meines Erachtens keinen Sinn, insbesondere wenn es ein Cache mit vielen Favoritenpunkten ist. Aber das muss jeder selbst entscheiden.

@gcPhil
Copy link

gcPhil commented May 25, 2020

Auch ich wünsche mir diese Funktion seit langem.

Die Logs müssten aber gar nicht mit den Favoriten-Listen aller loggenden Cacher abgeglichen werden sondern höchstens mit der favorited-Liste des Caches (zB. https://www.geocaching.com/seek/cache_favorited.aspx?guid=59b4bff0-320f-47ee-86bf-12a6a7dfa414 )

@capoaira
Copy link
Collaborator

Das stimmt. Wir haben es aber bis jetzt nicht geschafft an mehr als die ersten 10 FPs zu kommen, da man dazu weiter blättern muss.

@gcPhil
Copy link

gcPhil commented May 25, 2020

Ah OK, das hatte ich aus dem Verlauf hier nicht richtig raus gelesen. Ja, die weiteren Seiten scheinen irgendwie nur per Javascript nachgeladen zu werden.
Leichter wäre das vermutlich mit einem Zugang zur offiziellen API von GS. (Ich weiß natürlich nicht ob es da in der Vergangenheit schon Versuche gab so einen Zugriff für GClh zu bekommen...)

@Ruko2010
Copy link
Collaborator

Ja die Sache mit der API wäre schon cool für viele Funktionen. Aber ich denke nicht, dass GS uns einen Zugang gibt, da wir ja ihre Seite verändern und das würde mir als Seitenbetreiber nicht wirklich gefallen 😃.

@gcPhil
Copy link

gcPhil commented May 25, 2020

Naja, die Änderung findet ja im Browser des Kunden statt und ihr überbeansprucht dadurch nicht die GS-Server. Sie sollten eher dankbar sein, weil ihr mit den Änderungen die fehlenden Features der offiziellen Seite aufzeigt. Mit einer API-Vergabe hätten sie sogar mehr Kontrolle über den Datenfluss. Andere Entwickler (wie beispielsweise selbst das Team hinter c g e o) wurden aus Seattle immer wieder ermutigt einen API-Zugang zu beantragen.

@Ruko2010
Copy link
Collaborator

@2Abendsegler was hältst du davon? Sollen wir es mal versuchen? Das wären natürlich einige Umbauarbeiten, aber der Zugriff auf Daten müsste dann nicht umständlich über die Webseite gemacht werden, sondern könnte schnell und sauber über die API laufen.

@2Abendsegler
Copy link
Owner Author

Ich hatte das Thema schon mal auf dem Tisch als es darum ging was alles für die europäische Datenschutz-Grundverordnung bzw. für das kalifornische Pendant zu beachten ist.

Grundsätzlich ist es so, dass wir uns bei der Nutzung der API auch den Gesetzmäßigkeiten von GS unterwerfen und auch viel strenger bezüglich der Datenschutz Richtlinien beurteilt werden.

Heute ist es so, dass wir, abgesehen von einigen "Kleinigkeiten", lediglich die angezeigten Browserdaten nutzen und auswerten. Das ist nach meiner Einschätzung konform zu allen Datenschutz Richtlinien weil wir nur diejenigen Daten verwenden, die dem User sowieso angezeigt werden. Manch einer, vermutlich aus dem Bereich der ungeübten aber wildgewordenen Datenschützer, beurteilt bereits das anders, weil wir keine Genehmigung von GS dazu haben. Lassen wir das aber mal dahingestellt.

Bei den erwähnten "Kleinigkeiten", bei denen wir uns nicht der angezeigten Browserdaten bedienen, sondern selbst im Hintergrund Browserdaten ermitteln, sollten wir nach meiner Einschätzung ebenfalls mit allen Datenschutz Richtlinien konform sein, weil der User die Möglichkeit hat auch selbst die Daten per Browser abzufragen. Es gibt auch andere Meinungen dazu.

Fakt ist, dass GS uns ab dem Zeitpunkt der Nutzung der API die Regeln nennt, die wir zu beachten haben. Meines Erachtens werden wir uns der Browserdaten nicht mehr bedienen dürfen, wir müßten alles umstellen. Auch Regeln, die von den Datenschutz Richtlinien gar nicht tangiert werden, werden es sein. Natürlich ist nicht sichergestellt, dass die heutigen Regeln von GS auch morgen noch bestehen. Insofern würden wir uns in eine nicht mehr überschaubare Abhängigkeit begeben. Das würde insbesondere dann gelten, wenn wir ohne Not auch Features auf die API umstellen bzw. umstellen müssen, die auch ohne die API gut laufen. Davon würde ich also dringend abraten.

Um es nochmal klar zu sagen. Meines Wissens gehört es bei der Nutzung der API auch zu den Regeln, dass man ausschließlich die API nutzt. Das macht aus Sicht von GS auch Sinn, weil damit sichergestellt ist, dass nur diejenigen Daten rausgehen, die GS als in Ordnung befindet. Wir werden also meines Erachtens keine Erlaubnis erhalten, die API zu verwenden, ohne dass wir alles entsprechend umstellen.

Ich bin ganz klar gegen eine fläschendeckende Nutzung der API. Sollten wir die API für ausgesuchte Features nutzen dürfen, ohne flächendeckend alle Features auf die API umzustellen, dann habe ich kein Problem damit. Sofern jemand Lust hat bei GS dazu eine Anfrage zu stellen, sollten wir die Anfrage über ein Issue abstimmen und koordinieren.

@gcPhil
Copy link

gcPhil commented Jul 8, 2020

Für mich hat sich der Wunsch nach diesem Feature nun ein Stück weit erledigt, da er von GS mit dem "Cache owner dashboard" zumindest für einen gewissen Zeitraum abdeckt wird.

@2Abendsegler
Copy link
Owner Author

2Abendsegler commented Sep 4, 2020

Die Anpassungen stehen zum Testen zur Verfügung.
Ich würde mich freuen wenn ihr etwas testen würdet, insbesondere weil die Änderungen doch etwas umfangreich geworden sind, und ich befürchte dass ich womöglich irgendetwas übersehen habe.

Wer noch Ideen für die Beschleunigung der Datenbeschaffung hat ist sehr willkommen. Siehe dazu auch weiter unten zum Hintergrund.

Hier [Link geändert] geht es zur Version mit den Änderungen. Das sieht dann so aus:

Unbenannt1

Hier geht es zu den Parametern im Config. Das sieht dann so aus:

Unbenannt2

Hier geht es zurück zur aktuellen Version.


Zum Hintergrund warum es nun doch funktioniert:
Wir haben neue Möglichkeiten gefunden an diese Daten heranzukommen. Es handelt sich dabei um eine Simulation einer weiteren Webpage im Rahmen der aktuellen Webpage. Dabei wird die weitere Webpage, hier die Seite "Who favorited the cache", dem User nicht angezeigt, sie befindet sich im Hintergrund. Das ermöglicht eine equivalente Verarbeitung der Webpage, so als ob der User die Seite selbst bedienen würde. Da auch die Darstellung der Webpage im Browser erfolgt, ist das Ganze etwas langsamer als gewöhnlich beim reinen Laden von Daten. Vom Grundsatz her ist das die gleiche Verarbeitung wie @capoaira schon für die asynchrone Datenbeschaffung zu den eigenen Caches fürs Dashboard verwendet. Das nur zum Hintergrund warum es nun doch funktioniert.

@2Abendsegler
Copy link
Owner Author

Ich habe gerade mal versucht nochmal auf den Button zu klicken wenn beispielsweise der Bildschirm nach einer Sekunde immer noch da ist. Wenn es gerade einen Hänger gibt, ansonsten alles in ok ist, dann führt der zweite Klick dazu dass der erste Klick durch den zweiten Klick ersetzt wird, egal was schon im Hintergrund angetriggert ist. Das kann man auch im Online nachvollziehen. Wenn man relativ schnell hintereinander immer wieder auf den Button klickt passiert gar nichts, weil der neue den alten ersetzt.

Hier muss also eine andere Prüfung her, so etwas wie "Ist die Seite am arbeiten oder steht sie?". Das könnte über das passende Event funktionieren. Mir fällt aber keines ein, und ausprobieren kann ich ja nicht.

Ich glaube ich bau das mal zurück, eigentlich hat das sowieso ja noch nichts im collector zu suchen. Das war nur einem Missgeschick von mir geschuldet.

2Abendsegler added a commit that referenced this issue Sep 11, 2020
@2Abendsegler 2Abendsegler removed this from the v0.10.8 milestone Sep 11, 2020
@2Abendsegler
Copy link
Owner Author

@gcPhil
Wir werden am Wochenende eine neue Version bringen. Leider wird das hier noch nicht Bestandteil sein. Aber dann hoffentlich bei der nächsten Version. Gut Ding braucht halt Weile. 🙄

Die letzte Version dazu steht im Moment hier.

Danke noch mal für deine tatkräftige Unterstützung.

@gcPhil
Copy link

gcPhil commented Sep 11, 2020

Hier muss also eine andere Prüfung her, so etwas wie "Ist die Seite am arbeiten oder steht sie?". Das könnte über das passende Event funktionieren. Mir fällt aber keines ein, und ausprobieren kann ich ja nicht.

Kann man evtl. die Fehlermeldung "__doPostBack is not defined" aus der Konsole nutzen oder habt ihr da keinen Zugriff drauf?

Wir werden am Wochenende eine neue Version bringen. Leider wird das hier noch nicht Bestandteil sein. Aber dann hoffentlich bei der nächsten Version. Gut Ding braucht halt Weile. 🙄

Kein Problem. Lieber später als unzuverlässig.

@2Abendsegler
Copy link
Owner Author

Kann man evtl. die Fehlermeldung "__doPostBack is not defined" aus der Konsole nutzen oder habt ihr da keinen Zugriff drauf?

Sehr unwahrscheinlich dass wir hier Zugriff haben.
(Aber ich muss immer einschränken, dass ich auf den Gebieten der Webentwicklung und Javascript ja echter Laie bin. 😁 Eigentlich komme ich ja aus dem SAP Entwicklungsbereich. Der GClh ist mir ja nur irgendwie in den Schoss gefallen. Insofern sind meine Einschätzungen nicht immer treffsicher ... obwohl es langsam besser wird. 😂)

@2Abendsegler 2Abendsegler changed the title View who favorited the cache in the logs of cache listing. [Cache listing] View who favorited the cache in the logs of cache listing. Dec 17, 2020
@2Abendsegler
Copy link
Owner Author

Wir hatten Ende des letzten Jahres ja nochmal einen Versuch gestartet bei dem das Problem mit den Hängern auch nicht verifiziert werden konnte. Mir ist seitdem auch nichts mehr eingefallen. So möchte ich es nicht an die User geben. Ich trete das nun in die Tonne.

Letzter Stand ist in PR #1454. Dort sind auch die letzten Tests ersichtlich.


@gcPhil
Danke nochmal für die vielen Tests ...
Schade dass wir hier nicht weitergekommen sind.

@2Abendsegler
Copy link
Owner Author

Merged with #2247 by DieBatzen

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement prio: middle status: completed enhancement, improvement implemented
Projects
None yet
Development

No branches or pull requests

4 participants