MyDealz-Enhancer (Userscript)

Fügt MyDealz neue (und alte) Funktionen hinzu.

- Anzeige von Untermenupunkten im Hauptmenu (MyTab, Diverses, Gesuche) (danke an lolnickname)
- Blendet Werbung aus
- stellt die Menupunktauswahl sicher (Hot, Aktuell, Diskutiert)
- bietet Verlinkung auf großes Dealbild (danke an vielleichtmann1)
- Links in Dealbeschreibung werden klickbar (danke an vielleichtmann1)
- ScrollUp-Button mit fixer Position (danke an vielleichtmann1 für die Idee)
- Zitatfunktion mit Reduzierung eines Fullquotes (einstellbare Zitattiefen)
- selbst einstellbare Smileys (auch in Smileybox)
- alte Smileys (automatisch beim schreiben und bei allen anzeigen) [einstellbar]
- Direktlinks zu Kommentaren (Danke an Nico)
- fügt Cyber-Deals (Amazon) als Link im Untermenu hinzu
- Restzeitanzeige auf Cyber-Deals Seite repariert
- Melden und Abgelaufen als Punkte direkt im Deal verfügbar
- PN-Link direkt in Deal an Dealersteller (z.B. für Diverses oder Gesuche sinnvoll)
- PNs über PN-Link mit Thread-Titel als Standardbetreff
- unfertige PNs werden beim Schließen des PN-Fensters gespeichert
- vordefinierbarer Grund für Kommentarbearbeitung
- entfernt unnötigen br-Tag am Ende beim Editieren eines Kommentars
- Direktlinks zu Private Nachrichten und Account im UserMenu (einstellbar)
- Konfigurationsseite zum Einstellen der Werbung, Menubuttons, Kommentierfunktionen und des UserMenus

Hinweis:
Um eine Menuauswahl zu speichern (z.B. Aktuell für Deals), die Maus für drei Sekunden über dem Untermenu (Buttons in der grünen Leiste) halten. Die Beschriftung wird rot. Nun speichert das Script die Auswahl und ersetzt den Button im Hauptmenu durch die eigene Wahl, auch wenn MyDealz selbst die Auswahl mal wieder vergessen sollte.

Getestet in:
Firefox 39.0 + Greasemonkey 3.2 (und neuer)
Chrome 43.0 + Tampermonkey 3.11 (und neuer)

Downloadlink (auch im 1. Kommentar): greasyfork.org/de/…cer

Beliebteste Kommentare

So, in Absprache mit richi2k sind seine Scripte nun in den MyDealz Enhancer eingeflossen mit teilweise leichten Modifikationen.
Die Suche reagiert nun auf Modifikatoren beim Enter-Druck:
Shift+Enter => die in den Einstellungen voreinstellbare Kategorie wird zum suchen verwendet
Strg+Enter => Ist die Suche in der aktuellen Kategorie möglich (z.B. Freebies) wird nur darin gesucht
Alt+Enter => Google-Suche (hier ggf. aufpassen, ob ihr "Popups" von mydealz erlauben müsst, da Enter wohl kein ausreichendes UserEvent wie ein Mausklick darstellt)

Deal Text Preview (Dealtext wird gekürzt eingeklappt und ist dann ausklappbar):
Hier kann die Höhe bestimmt werden, wie groß der eingeklappte Bereich dann ist. Auf 0 setzen deaktiviert das Einklappverhalten komplett.

Quotes einklappen:
ist optional abstellbar in den Einstellungen

User Info:
wie richi2k schrieb, werden die User Informationen mit mehreren Anfragen an den Server abgerufen. Für Leute mit langsamer Leitung ist diese Option ebenfalls abwählbar in den Einstellungen.

Nach dem erfolgreichen Speichern der Enhancer-Einstellungen wird auf die ursprüngliche MyDealz-Seite, von der man kam, zurück geleitet (#mydealz-enhancer wird entfernt).
Es wurde ein Filter eingebaut, dass das Script nur läuft, wenn das aufgerufene Dokument in keinem Frameset steckt - hier gab es zuvor durch die ganzen Hintergrundabfragen der Seiten ein Problem, welches das Script mehrfach geladen hat. Es sollte nun alles etwas schneller laufen.
Die automatische Linkgenerierung im Dealtext sollte nun korrigiert sein, wenn auch recht dreckig. Erstellt mein Script einen Link, wird anschließend geprüft, ob es einen zweiten Link ohne Textinhalt gibt und entfernt den. Damit sollte das Problem, dass hinter einem Link angehangen ist, behoben sein.


Hinweis zum allgemeinen Aufruf der Seiten mit Ankern (Direktlinks zu Kommentaren):
Durch die starken Veränderungen an den Höhen diverser Elemente (speziell Zitatblöcke), verschieben sich die Ankerpunkte nach dem Laden der Seite. Das Script sollte dies auffangen, indem es versucht, nachdem alles fertig geladen ist, wieder zum Anker zu springen. Ich vermute, dass es in seltenen Fällen dazu kommen kann, dass es nicht korrekt greift, konnte es aber bisher nicht erzwingen. Sollte hier also jemand Probleme damit haben, dass beim Verwenden eines Kommentar-Permalinks an die falsche Stelle auf der Seite gesprungen wird, möge man es mir mitteilen, dann überlege ich mir was dazu.

bastiian

Merk


y2hgG2m.jpg

Hab mal noch ein kleines Script geschrieben, da sich ja viele über die Suche beschweren.
Das Script fügt einen Google-"Button" hinzu, sodass man direkt eine Googlesuche darüber ausführen kann.
Das ganze sieht dann folgendermaßen aus:
https://abload.de/img/mdsearchp6k2x.png
Und hier der Link zum Script MyDealz Google Search.

Soo und hier das vorerst letzte Script, was wie folgt aussieht (damit man noch schneller stalken kann) xD
https://abload.de/img/exuserinfo2dj22.png
Und hier der Link zum Script MyDealz User Info .

Kleine Info: Das Script setzt so viele Ajax Request ab, wie viele unique User auf der jeweiligen Comments Seite sind, da es bis zu 20 sein können, kann es dementsprechend etwas länger laden, aber könnt ihr ja selbst testen

508 Kommentare

wird direkt mal getestet

Schau dir mal den Google Styleguide für JavaScript an
google.github.io/sty…xml


EDIT: Bei mir im Chrome funktioniert es nicht.

Firefox funzt :P

Bis auf den PN Button leider noch keine für mich benötigten Verbesserungen neben dem HUKD Toolkit.
Arbeite doch mal mit lolnickname das NON Ultra Script aus

SeeeD

Schau dir mal den Google Styleguide für JavaScript an http://google.github.io/styleguide/javascriptguide.xml EDIT: Bei mir im Chrome funktioniert es nicht.



Kevkeee92

Firefox funzt :P Bis auf den PN Button leider noch keine für mich benötigten Verbesserungen neben dem HUKD Toolkit. Arbeite doch mal mit lolnickname das NON Ultra Script aus



Soweit ich das sehe, hat lolnickname doch kein Script mehr. Sein HUKD-Toolkit ist ja mit Änderung des Layouts vor einiger Zeit inkompatibel geworden. Was wäre denn wünschenswert?
Gute Frage, worauf ich bei dem Styleguide achten möge.
Muss mir mal irgendwo Chrome raufpacken - in eine Sandbox oder so, um zu sehen, was genau da das Problem ist.
Tampermonkey in Chrome getestet?

BAERnado

Soweit ich das sehe, hat lolnickname doch kein Script mehr. Sein HUKD-Toolkit ist ja mit Änderung des Layouts vor einiger Zeit inkompatibel geworden. Was wäre denn wünschenswert? Gute Frage, worauf ich bei dem Styleguide achten möge. Muss mir mal irgendwo Chrome raufpacken - in eine Sandbox oder so, um zu sehen, was genau da das Problem ist. Tampermonkey in Chrome getestet?

Da bist du nicht mehr ganz auf Stand:P
mydealz.de/div…831

SeeeD

Schau dir mal den Google Styleguide für JavaScript an http://google.github.io/styleguide/javascriptguide.xml EDIT: Bei mir im Chrome funktioniert es nicht.

Kevkeee92

Firefox funzt :P Bis auf den PN Button leider noch keine für mich benötigten Verbesserungen neben dem HUKD Toolkit. Arbeite doch mal mit lolnickname das NON Ultra Script aus



Man braucht kein Addon im Chrome um Greasemonkey-Scripte auszuführen. Einfach in die "Erweiterungen" ziehen. Chrome installiert das dann.

Ich habe kurz in das Script geschaut, das Naming der Variablen kam mir falsch vor (var _irgendeineVariable - richtig wäre var irgendeineVariable). Finde das persönlich nicht schlecht wenn man den "Standard" der jeweiligen Sprache nutzt.

SeeeD

Schau dir mal den Google Styleguide für JavaScript an http://google.github.io/styleguide/javascriptguide.xml EDIT: Bei mir im Chrome funktioniert es nicht.



leuchtet mir ein, ich deklariere allerdings Variablen, die nur im Scope der aktuellen Funktion verfügbar sind mit _ um sie nicht versehentlich mit einer übergelagerten Variable kollidieren zu lassen, ich schau nachher mal im Chrome

BAERnado

Soweit ich das sehe, hat lolnickname doch kein Script mehr. Sein HUKD-Toolkit ist ja mit Änderung des Layouts vor einiger Zeit inkompatibel geworden. Was wäre denn wünschenswert? Gute Frage, worauf ich bei dem Styleguide achten möge. Muss mir mal irgendwo Chrome raufpacken - in eine Sandbox oder so, um zu sehen, was genau da das Problem ist. Tampermonkey in Chrome getestet?



Oh, gar nicht mitbekommen, schau ich auch mal rein

Erinnerung

Hey du hast das mit dem PN Link ja hinbekommen, daran bin ich verzweifelt obwohl ich es sehr ähnlich gemacht habe. Die Zitatformatierung habe ich damals glaube so gelöst: Alten Button löschen, neuen Button anlegen, Eventlister mit eigener Funktion drauf fertig. Habe ich aber auch noch nicht wieder eingbaut.

lolnickname

Hey du hast das mit dem PN Link ja hinbekommen, daran bin ich verzweifelt obwohl ich es sehr ähnlich gemacht habe. Die Zitatformatierung habe ich damals glaube so gelöst: Alten Button löschen, neuen Button anlegen, Eventlister mit eigener Funktion drauf fertig. Habe ich aber auch noch nicht wieder eingbaut.


ich weiß, ich habe dein altes Script noch, um ggf. Funktionen übernehmen zu können. Die Schwierigkeit hier ist nun, dass sämtliche Funktionen aktuell anhand von den data-Attributen heraus ausgelöst werden, bzw. vermutlich alle events automatisch abgefangen werden und anhand der Attribute die Aktionen bestimmt werden. Und genau da liegt der Hase im Pfeffer - ich müsste ja den Ajax-Abruf selbst bauen und dann meinen eigenen Code anhängen, da ich sonst nicht zwingend wüsste, wann der Abruf fertig ist. - Ich sehe gerade, der Ajax-Request ist sogar relativ einfach. Versuch ich mal heute Abend oder morgen

Ja die Ajax Requests sind nicht so schwierig. Doof ist nur, dass keine eigenen mehr machen kann. Früher konnte man zB einen Deal im Hintergrund durchblättern. Das brauchte man ja als die Verlinkung im Feed nicht ging. Jetzt wird das vom Server geblockt.

lolnickname

Ja die Ajax Requests sind nicht so schwierig. Doof ist nur, dass keine eigenen mehr machen kann. Früher konnte man zB einen Deal im Hintergrund durchblättern. Das brauchte man ja als die Verlinkung im Feed nicht ging. Jetzt wird das vom Server geblockt.


das wiederum liegt aber eher am DDoS-Schutz, denke ich mal

lolnickname

Ja die Ajax Requests sind nicht so schwierig. Doof ist nur, dass keine eigenen mehr machen kann. Früher konnte man zB einen Deal im Hintergrund durchblättern. Das brauchte man ja als die Verlinkung im Feed nicht ging. Jetzt wird das vom Server geblockt.

Ne man bekommt schon eine Antwort nur war der Stauscode halt nicht 200. Aber das kann man umgehen, ist nur die Frage ob ich dazu Lust habe, mal gucken.

BAERnado

das wiederum liegt aber eher am DDoS-Schutz, denke ich mal


ok, lokal funktioniert maxQuotes bei mir schonmal (maxQuotes = 2)

lolnickname

Ne man bekommt schon eine Antwort nur war der Stauscode halt nicht 200. Aber das kann man umgehen, ist nur die Frage ob ich dazu Lust habe, mal gucken.

Jo, liegt halt nur daran, weil der Server contentType und Accept-Header korrekt erwartet.

BAERnado

das wiederum liegt aber eher am DDoS-Schutz, denke ich mal

Das klingt super.
Den Zoom finde ich interessant. Was mir auch noch eingefallen ist, das Grund Feld beim Edit automatisch zu befüllen. Das blöde dabei ist man müsste das Skript nochmal laufen lassen,wenn das nachgeladen wird. Ist kein Problem, einfach die Änderungen am DOM Überwachen, aber dann müsste man auch sicherstellen, dass das Skript die anderen Funktionen nicht doppelt ausführt bzw so ausführt, dass die Buttons etc dann nicht doppelt sind.

lolnickname

Den Zoom finde ich interessant. Was mir auch noch eingefallen ist, das Grund Feld beim Edit automatisch zu befüllen. Das blöde dabei ist man müsste das Skript nochmal laufen lassen,wenn das nachgeladen wird. Ist kein Problem, einfach die Änderungen am DOM Überwachen, aber dann müsste man auch sicherstellen, dass das Skript die anderen Funktionen nicht doppelt ausführt bzw so ausführt, dass die Buttons etc dann nicht doppelt sind.


Welcher Zoom?
Über einen domObserver hab ich auch schon nachgedacht, hatte ich auch schonmal an anderer Stelle verwendet, ist allerdings recht heftig.
Mir fällt gerade ein, dass man die PN-Geschichte unter Umständen genauso lösen könnte wie das Zitat-Ajax. Vorteil wäre, man wüsste, wann das Formular auftaucht und könnte so dabei seine Betreffszeile nutzen.

Oh da habe ich den Link falsch gesetzt: mydealz.de/div…160

lolnickname

Oh da habe ich den Link falsch gesetzt: http://www.mydealz.de/diverses/deal-bilder-zoom-573160

Stimmt, das ist wirklich genial - leider kam ich heute nicht mehr dazu, noch weiter an meinem Script zu arbeiten, aber da findet sich morgen bestimmt noch Zeit für.

Dein Kommentar
Avatar
@
    Text
    Top Diskussionen
    1. Krokojagd 2016104266
    2. Brauche Hilfe bei Laptop Auswahl79
    3. Selber Craft Beer brauen mit Minibrew812
    4. HAUPTSTADTKOFFER: Gültiger Gutschein wird nicht angenommen56

    Weitere Diskussionen