Seite 1 von 2

Live Shopping ....

Verfasst: Mi 7. Dez 2011, 13:47
von Stefan
Hallo miteinander,

ich möchte Sonderangebote via Live Shopping anbieten.
- Wenn ich nun einen Testartikel im [Artikellatalog]-[Live-Shopping] auswähle und die Einstellungen vornehme, dann ist dieser auch mit dem günstigeren Preis online.

.. Leider jedoch gibt das FrontEnd keinen CountDown aus
.. Leider steht nicht beim Artikel wie lange (Datum) das Angebot gültig ist.

Zum CountDown vermut ist, dass dies am Template liegt ?! Stimmt das ?!
Zum Datum, habe ich vor kurzem gehört, dass "angeblich" angegeben werden muss, wie lange ein Produkt im Preis gesenkt ist?!?

Habt Ihr eine Möglichkeit, damit ich einen Counter einfügen kann ?
Das mit dem Datum kann ich "ggf." selbst - Ich versuche es zu mindest mal ..

Danke im Voraus.


stefan

Re: Live Shopping ....

Verfasst: Mi 7. Dez 2011, 15:07
von Xantiva
Welche Version setzt Du ein? Hast Du eine URL, unter der man sich das ganze ansehen könnte?

Re: Live Shopping ....

Verfasst: Do 8. Dez 2011, 09:43
von Stefan
Hallo Xantiva,

danke für die schnelle Antwort.
Diesen Shop richte ich nicht Online ein.

Ich habe die WEBS 1.0.12 auf einem XAMPP 1.7.1 aufgesetzt.
So weit ich das sehen konnte, sollte diese XAMPP-Version die richtigen lauffähige MySql und PHP enthalten haben.
Neuere Versionen brachten Fehlermeldungen bereits wärend des Setup's.

Um das wohl kleine Problem zu Verdeutlichen ...

1-Shop Setup durchgeführt
2-Grundeinrichtung (Daten, Shipping, Zahlarten aktiviert)
3-Drei Testartikel angelegt (Per Hand NICHT Upload oder WaWi-Import)
4-Einen der Testartikel als LIVE-Shopping aktiviert

1234567890150 produkt_1 100 10|10 2011-12-07 2011-12-15 100,00 € 75,00 € Bearbeiten...

In der Datenbank ist der Artikel im LIVE-Shopping eingetragen, PRODUCTS ebenfalls LIVE-Shopping
Im FrontEnd wird der Artikel EHR als Sonderangebot angezeigt, und das System zeigt das Produkt NICHT mit
der " /live_shopping.php " sondern mit " product_info.php?products_id=2 "

Dummerweise funzt das ganze unter dieser XAMPP-Version mit der ECB 1.0.8, welche ich zu Testzwecken
parallel installiert habe. Dort wird der Artikel inkl. CountDown im " /live_shopping.php " angezeigt.

.... Ggf. Neuinstallation via Setup ? oder Script-Änderungen ?? Falsche PHP-Version (Vorh. PHP Version 5.2.9)

.... DANKE für weitere Hilfestellungen

Stefan

Re: Live Shopping ....

Verfasst: Fr 9. Dez 2011, 13:35
von Stefan
bitte verschiebt diesen Beitrag in "allgemeine Probleme".

Hallo,
nach zahlreichen Tests und Vergleichen von Scriptteilen komme ich hier nicht weiter.
Mehrfach ebenfals neu installiert und dennoch ...

Produkte, welche als "Live Shopping" aktiviert sind, werden dennoch nicht mit der "live_shopping.php"
sondern mit der " product_info.php " aufgerufen. Somit wird natürlich auch kein Countdown angezeigt. :cry:

Kann mir jemand erklären, ob eventuell ein Scriptaufruf im Template oder die Datenbank geändert werden müssen ?
- Eventuell kann das jemand bestätigen ?!
- Läuft diese Option ggf. mit dem WBES-Template nicht !?

Danke
Stefan

Re: Live Shopping ....

Verfasst: So 11. Dez 2011, 15:25
von yogi
Hallo Stefan,

da fehlt was im WEBs Tempalte - werde das heute Abend oder Morgen beheben und hier posten. Habs schon gefunden - muß es nur noch dokumentieren...

bt #453: fehlender Countdown beim LiveShopping

Re: Live Shopping ....

Verfasst: So 11. Dez 2011, 21:33
von yogi
So, nun sollte ich die Zeit haben um das mal genauer zu dokumentieren.

Der Fehler ist mit der WEBs V1.0.10 entstanden - im Template "fehlt" einfach der Countdown, obwohl das jquery plugin "countdown" sehr wohl implementiert ist.

zunächst sollte man mal das jquery.countdown plugin aktualierien - im WEBs Template ist noch die Version 1.4, es gibt aber schon die V1.5.11. Die kann man sich direkt beim Autor herunterladen: http://keith-wood.name/countdown.html#changes. Aus der Zip-Datei übernimmt man die folgenden Dateien in sein Template-Verzeichnis "javascript":
- jquery.countdown.js
- jquery.countdown.min.js
- jquery.countdown-de.js

Nun habe ich mir die alte Augabe mal angeschaut und überlegt das man das eleganter umsetzten kann, damit der Counter auch irgendwo im Text erscheint. Das o.g. Plugin bietet ja über "layout" die möglichkeit den Counter in einem Text zu integrieren. In der "/lang/german/german.php" suchen wir also die LS_COUNTER definition und ersten diese durch folgende Zeile

Code: Alles auswählen

define('LS_COUNTDOWN', 'Dieses Angebot l&auml;uft noch {d<}{dn}{dl}{d>} {hnn}{sep}{mnn}{sep}{snn}');
Es ist richtig, daß selbst bei Live-Shopping Artikeln die Produkt-Info über die products_info.php und nicht über die live_shopping.php ausgegeben wird, da diese Datei (live_shopping.php) seit der V1.0.10 nicht mehr benötigt wird. Die "Weiche" wurde in der includes/modules/product_info.php integriert - dort wird die Template-Datei "module/live_shopping.html" aufgerufen wenn für den Artikel eine aktive Live-Shopping Einstellung gibt. In der vorgenannten Template-Datei wird aber die LS_MESSAGE gar nicht ausgegeben, geschweige denn ein Countdown initialisiert. Um nun den modifizierten Countdown auszugegeben, und das Starten vom Countdown auchnoch in der template.js zu integriern müssen wir irgendwie die Countdown-Zeit und das neue "layout" in die template.js bekommen - also definieren wir eine css-ID "countdown" und füllen den Inhalt mit dem Initialisierungs-String für die countdown Funktion:

Code: Alles auswählen

          <div class="grid_6 alpha omega">
          	<div id="countdown">until: +{$END_TIME}, compact: true, layout: '{$LS_MESSAGE}', expiryText: '{$smarty.const.LS_NOT_AVAILABLE_ANYMORE}'</div>
          </div>
jetzt müssen wir noch den countdown in der template.js initialisieren. Suche in der templates/webs/javascript/template.js Datei die Zeilen

Code: Alles auswählen

	$('.form_cart_quantity_submit').bind('click', function() {
		$('#form_cart_quantity').submit();
	});
und füge dahinter diesen Block ein:

Code: Alles auswählen

	var node = $('#countdown');
	if (node.length>0) {
		node.css('display', 'block');
    eval('node.countdown({'+node.attr('textContent')+'});');
	}
Damit der "layout" String nicht beim Seitenaufbau bereits ausgegeben wird passen wir noch die templates/css/product_info.css an, indem folgendes hinzugefügt wird:

Code: Alles auswählen

/*******************************************************************************
 * live shopping
 ******************************************************************************/
#countdown {
  display: none;
}
Der gesamte Countdown Text erscheint also nur wenn der Kunde auch Javascript aktiviert hat - sonst geht der Countdown eh nicht.

Re: Live Shopping ....

Verfasst: So 11. Dez 2011, 22:45
von Stefan
Hallo Yogi,

erst einmal ... D A N K E für diese TOP-Anleitung.
Ich werde das gleich integrieren.
Die Info bezüglich "JavaScript" bringen mit auch noch auf die Idee, dass ich eine
Abfrage integriere, wenn JS ausgeschaltet ist, dass dann "Endet am xx.xx.xxxx um xx.xx Uhr" eingeblendet wird.

Oder besser noch "Kein JavaScript aktiviert" - "Kein Shopping" :lol:

MFG
Stefan

Re: Live Shopping ....

Verfasst: So 26. Feb 2012, 20:47
von IVOMANIA
Hallo Yogi,

kann es sein, dass in der Beschreibung noch ein Fehler ist?

Bei mir wird folgendes bei dem Produkt ausgegeben:
until: +1512, compact: true, layout: 'Dieses Angebot läuft noch., expiryText: 'Zu spät. Dieses Angebot ist nicht mehr verfügbar.'
Kann es an dem aktuallisierten jquery.countdown plugin liegen?
Die Datei- jquery.countdown.min.js war bei mir nicht vorhanden, dafür eine jquery.countdown-min.js

Gruß Jens

Re: Live Shopping ....

Verfasst: So 4. Mär 2012, 08:39
von yogi
Hallo,

ja da fehlte ein Hochkomma nach dem "Layout:" String. (Werde es auch oben im Eintrag ändern.)
In meiner Testversion auf dem Server ist das fehlende Hochkomma auch vorhanden - irgendwie ist es nur hier im Text nicht drin gewesen.

Code: Alles auswählen

 <div id="countdown">until: +{$END_TIME}, compact: true, layout: '{$LS_MESSAGE}', expiryText: '{$smarty.const.LS_NOT_AVAILABLE_ANYMORE}'</div>
          </div>

Re: Live Shopping ....

Verfasst: So 4. Mär 2012, 20:29
von IVOMANIA
Da muss noch ein Fehler drin sein.
jetzt kommt bei mir

Code: Alles auswählen

Dieses Angebot läuft noch {d<}{dn}{dl}{d>} {hnn}{sep}{mnn}{sep}{snn}
Es wird einfach keine Zeit ausgegeben. :(