Skip to content

Instantly share code, notes, and snippets.

@GM-Alex
Last active November 17, 2016 08:23
Show Gist options
  • Save GM-Alex/7831e23c25746a00fad47be81c2a2f2c to your computer and use it in GitHub Desktop.
Save GM-Alex/7831e23c25746a00fad47be81c2a2f2c to your computer and use it in GitHub Desktop.
Credits:
Benjamin Gutmann
Alexander Schneider
Voraussetzung:
- Grundkenntnisse JS Console im Browser
- Einhorn-Schokolade im Warenkorb, eingeloggt sowie hinterlegte Lieferadresse.
Hinweis:
Die Schritte sollten eigentlich funktionieren, Ergänzungen gerne als Kommentar. :)
Nach dem man https://shop.ritter-sport.de/b2c/checkout/onepage/ erfolgreich aufrufen hat die Schritte wie beschrieben durchführen:
Step 1
------
Doppelklick auf Schritt 2 und Lieferadresse wählen und Haken setzen.
Step 2
------
checkout.loadWaiting = false;
Step 3 - Sehr wichtig!
----------------------
In der JS Console folgendes eingeben:
var checkout = new Checkout(accordion,{
progress: 'https://shop.ritter-sport.de/b2c/checkout/onepage/progress/',
review: 'https://shop.ritter-sport.de/b2c/checkout/onepage/review/',
saveMethod: 'https://shop.ritter-sport.de/b2c/checkout/onepage/saveMethod/',
failure: '#'}
);
Step 4
------
In der JS Console folgendes eingeben:
var test = setInterval(function(){
if (jQuery('#shipping-please-wait:visible').length == 0) {
jQuery('#shipping-buttons-container button.validation-passed').trigger('click');
}
}, 100);
jQuery('#shipping-buttons-container button.validation-passed').click();
Jetzt Network beobachten bis ein 200 Response kommt (saveShipping NICHT getAdditional...) und dann in der JS Console folgendes eingeben:
for (var i = 1; i < 99999; i++)
window.clearInterval(i);
Step 5
------
In der JS Console folgendes eingeben:
jQuery("#co-shipping-method-form").append('<input name="shipping_method" type="radio" value="tablerate_with_tax_bestway" id="s_method_tablerate_with_tax_bestway" checked="checked" />');
var shippingMethod = new ShippingMethod('co-shipping-method-form', "https://shop.ritter-sport.de/b2c/checkout/onepage/saveShippingMethod/");
var test = setInterval(function(){
if (jQuery('#shipping-method-please-wait:visible').length == 0) {
jQuery('#shipping-method-buttons-container button').trigger('click');
}
}, 100);
Jetzt Network beobachten bis ein 200 Response kommt und dann in der JS Console folgendes eingeben:
for (var i = 1; i < 99999; i++)
window.clearInterval(i);
Step 6
------
Jetzt sollte man die Zahlart sehen, dort am besten Vorkasse wählen sonst bekommt man beim Rücksprung von Paypal Probleme.
In der JS Console folgendes eingeben:
var test = setInterval(function(){
if (jQuery('#payment-please-wait:visible').length == 0) {
jQuery('#payment-buttons-container button').trigger('click');
}
}, 100);
Jetzt Network beobachten bis ein 200 Response kommt und dann in der JS Console folgendes eingeben:
for (var i = 1; i < 99999; i++)
window.clearInterval(i);
Step 7
------
In der JS Console folgendes eingeben:
jQuery('#agreement-1').click(); //AGB bestätigen
var test = setInterval(function(){
if (jQuery('#review-please-wait:visible').length == 0) {
jQuery('#review-buttons-container button').trigger('click');
}
}, 100);
Jetzt Network beobachten bis ein 200 Response kommt und dann sollte man durch sein.
@bgutmann
Copy link

Es sieht so aus, als hätte Ritter Sport zwar mindestens 5+x Webserver da stehen, es scheint aber danach, dass nur ein Webserver korrekt konfiguriert ist, sodass es etwas Glück braucht auf diesem zu landen, wenn man die Schokolade in den Warenkorb legt, sich einloggt etc.

@smeagol91
Copy link

Danke hat wunderbar funktioniert.

@toniy0
Copy link

toniy0 commented Nov 15, 2016

Step 1, 2 und 3 ausgeführt, wenn ich Step 4 ausführe passiert allerdings nichts beim Network.

@bgutmann
Copy link

jQuery('#shipping-buttons-container button.validation-passed').click();
das auch schon mal manuell gefeuert?

Ansonsten kann es auch helfen zwischendurch
checkout.loadWaiting = false;
zu feuern.

@mmoehr
Copy link

mmoehr commented Nov 15, 2016

Besten Dank! Hat super geklappt. Man sollte nur den Footer etwas runter schieben, damit man etwaigen Output bei der Zahlart sieht. Hab dort manuell Vorkasse gewählt.

@toniy0
Copy link

toniy0 commented Nov 15, 2016

So oft die beiden Befehle abgeschickt wie ich wollte, nie ist etwas passiert. Habe dann einmal manuell den "Fortsetzen" Button betätigt, danach lief dann alles. Bestellbestätigung ist auch schon raus, besten Dank!

@AndySchwartz83
Copy link

Bei mir kommt - egal welchen JS Console ich nutze - immer diese Meldung:

checkout.loadWaiting = false; => Reference Error, checkout is not defined.

Was mache ich falsch?

@bgutmann
Copy link

Du bist auf dieser Seite?
https://shop.ritter-sport.de/b2c/checkout/onepage/

Und eingeloggt + Adresse zuvor schon eingetragen?

@AndySchwartz83
Copy link

Jepp, eingeloggt, 11 Tafeln im Warenkorb und dann auf der Seite https://shop.ritter-sport.de/b2c/checkout/onepage/ gelandet.
Danach doppelklick, Adressauswahl + Haken setzen, danach in der Webconsole das Statement checkout.loadWaiting = false; abgefeuert.
Danach Step 3 abgefeuert, dann plötzlich erscheint wieder die Seite "Unser Shop ist momentan nicht erreichbar" :-(

Es ist zum Verzweifeln :-(

@Fabunator
Copy link

Perfekt.
Vielen Dank für die Anleitung

@Saban82
Copy link

Saban82 commented Nov 15, 2016

hab das Gefühl das gerade gar nix mehr geht !!!

@bgutmann
Copy link

Der letzte verbliebene Server scheint nun abgeschaltet worden zu sein :(

@tcmaps
Copy link

tcmaps commented Nov 15, 2016

bzw geschmolzen

@Axion123
Copy link

Habe mich jetzt extra hier angemeldet, wollte ich schon länger machen, jedenfalls wollte ich mich nochmal für das Script bedanken!! Jetzt heißt es warten ;-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment