• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Souvenirs löschen

li'l Dracula

Geocacher
Danke für das Skript! Was für eine super Idee!
Das habe ich auch gleich mal ausprobiert. Allerdings verschwinden bei mir nur die Souvenirs mit den ungeraden Zahlen. Wo habe ich denn da einen Haken reingebaut?
 

Fadenkreuz

Geoguru
Bevor es Missverständnisse gibt, sollte man vielleicht erwähnen, dass beide Methoden (AdBlock und Greasemonkey-Script) natürlich nur auf dem eigenen Rechner funktionieren. Jeder andere, der das eigene Profil anschaut, sieht natürlich auch alle Souvenirs.
 

jennergruhle

Geoguru
li'l Dracula schrieb:
Danke für das Skript! Was für eine super Idee!
Das habe ich auch gleich mal ausprobiert. Allerdings verschwinden bei mir nur die Souvenirs mit den ungeraden Zahlen. Wo habe ich denn da einen Haken reingebaut?
Dann zeig mal bitte den Seitenquelltext - ich habe bisher nur die 1. Da steht dann drin:
Code:
<div>
        <a href='/souvenir/?guid=...' title='31 Days of Geocaching 01 of 31'>
...
</div>
Ich filtere auf DIVs mit "31 Days of Geocaching", aber ohne weitere <div> drin (weil sonst das DIV mit allen Souvenirs drin auch verschwindet).
li'l Dracula schrieb:
Wo habe ich denn da einen Haken reingebaut?
Sorry - versteh ich nicht...
 

li'l Dracula

Geocacher
Ich selber habe keines von den Souveniren. Ich habe mir damit die Profile von anderen Cachern angesehen. So steht dort im Seitenquelltext für die 2:
Code:
 <div>
        <a href='/souvenir/?guid=9d39e382-e851-4457-8cca-6bb83437f869' title='31 Days of Geocaching 02 of 31 '><img id="ctl00_ContentBody_ProfilePanel1_SouvenirGalleryControl1_uxSouvenirGallery_ctl03_uxImage" title="31 Days of Geocaching 02 of 31 " class="SouvenirThumb" src="http://souvenirs.geocaching.com/SouvenirImages/Ny8zMC8yMDEz/3817368e-5fdf-4346-94da-37bd1a0d4888.png" alt="31 Days of Geocaching 02 of 31 " style="height:100px;width:100px;border-width:0px;" /></a><br />
        <a id="ctl00_ContentBody_ProfilePanel1_SouvenirGalleryControl1_uxSouvenirGallery_ctl03_uxTitle" title="31 Days of Geocaching 02 of 31 " href="/souvenir/?guid=9d39e382-e851-4457-8cca-6bb83437f869">31 Days of Geocaching 02 of 31 </a>
    </div>

Da ich aus diesen Zeilen eh nicht wirklich erkennen kann, habe ich gedacht, dass ich irgendwo einen Fehler beim Erstellen der Textdatei gemacht habe... Besonders weil nur die ungeraden Kalenderblätter ausgeblendet werden. :???:
 

jennergruhle

Geoguru
Danke für den Tipp! Habe mir mal das Profil eines lokalen Uber-Performers angesehen, der hat natürlich alle Tage. Da sehen alle Tage 1...6 vom Quellcode her gleich aus, bis auf die 1..6 eben und die GUIDs, also diese langen eindeutigen Zahlen.
Ich denke, das Iterieren über alle DIVs hat ein Problem, und das Zwischendurch-raus-Entfernen der Elemente.

Ja, genau - das war's. Iteriere ich rückwärts durch die DIVs, dann klappt es und alle werden ausgeblendet. Tja - in Java hat man da bessere Möglichkeiten mit Iterator.remove(). Aber nu geht es ja auch hier mit JavaScript. Hier das verbesserte Script:

Code:
// ==UserScript==
// @name        Hide31DaysSouvenirs
// @namespace   keineahnung
// @description Remove GC Souvenirs for 31 Days of Geocaching 
// @include     http://www.geocaching.com/*
// @version     1
// ==/UserScript==
// Author: jennergruhle
// Version 1.1 
var myDivs= document.getElementsByTagName('div');
var thisDiv;
for (i=myDivs.length-1; i>=0; i--)
{
    thisDiv=myDivs[i];
    if (thisDiv.innerHTML.match('title="31 Days of Geocaching ')
        && !thisDiv.innerHTML.match('<div>'))
        thisDiv.parentNode.removeChild(thisDiv);
}
Hat nun im Firefox mit Greasemonkey und im Chromium mit Tampermonkey funktioniert. Was man für Opera, Safari oder sonstige Browser braucht - keine Ahnung.
 
OP
waws

waws

Geocacher
@jennergruhle:
Das klappt wunderbar, genauso habe ich es mir gewünscht, vielen Dank!!

Jetzt kann ich wieder cachen gehen, ohne mir diese doofen Souvenirs einzufangen.

Danke und Gruß aus Schleswig-Holstein
Werner
 

jennergruhle

Geoguru
Du fängst sie Dir aber immer noch - du siehst sie nur nicht mehr (auch nicht bei anderen Leuten). Also so wie die blaue Pille bei "Matrix".

Man kann übrigens das Skript auch darauf beschränken, nur die eigenen 31-Tage-Souvenirs auszublenden, nicht in den Profilen anderer Leute. Dann muss die fünfte Zeile geändert werden in:

Code:
// @include     http://www.geocaching.com/my/souvenirs.aspx*

Ich habe bei der Gelegenheit dann auch gleich noch mal mein Skript "GeoclubAntiNervthemen.user.js" im Tampermonkey untergebracht, um auch mit Chromium von Themen verschont zu bleiben, die für mich uninteressanter als der chinesische Reissack sind:
Code:
// ==UserScript==
// @name        GeoclubAntiNervthemen
// @namespace   tag:[email protected],2013:userscripts
// @include     http://forum.geoclub.de
// @include     http://forum.geoclub.de*
// @version     1.0
// @grant       none
var suspect = document.getElementsByClassName('gensmall');
for(j=0;j<suspect.length;j++) {
    act_suspect = suspect[j];
    if(act_suspect.innerHTML.indexOf('ngress')!=-1 || act_suspect.innerHTML.indexOf('athtag')!=-1) {
       var grampa = act_suspect.parentNode.parentNode;
       if(grampa.tagName=='TR') {
           grampa.style.display='none';
       }          
    }
}
// ==/UserScript==
 

Crazy Cat Guy

Geomaster
Es geht auch mit GSAK und dem Makro FindStatGen. Hier kann man auf der ersten Profilseite bestimmen welche Souvenirs angezeigt werden sollen und explizit die 31 days of geocaching Souvenirs ausblenden. Frag mich jetzt nicht genau wie es geht, ich weiß nur dass es geht. Die Folien von Robins GSAK Vorträgen sollten aber demnächst unter http://www.berlin-mega.de erscheinen. Dort erklärt er relativ genau den Umgang mit GSAK.

Die Souvenirs sind dann zwar immer noch auf der Souvenirseite sichtbar, aber wer sieht dort noch nach wenn alles aufbereitet auf der ersten Profilseite steht.
 
Oben