Ajax Product Modal

Begonnen von catwoman, Juni 19, 2017, 22:37:49

« vorheriges - nächstes »

0 Mitglieder und 2 Gäste betrachten dieses Thema.

catwoman

Hallo Gemeinde,

hat jemand Lust zu basteln ? Ich bekomme es leider nicht hin. Ich möchte auf der Produktseite (wo die Artikel liegen) eine Art Quick View (verkleinerte Detailseite als Modal) einbauen. Meine Idee: Ein benutzerdef. Artikelfeld (Template) für das Modal. Bei Klick auf den Link 'Quick View' soll das abgespeckte Template geladen werden. Am besten wäre es sicher mit Ajax. Für Vorschläge bin ich sehr dankbar.

admin

Verstehe ich das jetzt richtig. Die Detailinfos sollen quasi als modales Popup angezeigt werden.
Das könnte man machen aber nicht über ein Template, das wir in einer Ajax-Routine keine Möglichkeit haben komplette Seitentemplates zu interpretieren und zurückzugeben.
Man könnte aber in dem Pop-Up einen Iframe haben und damit die tatsächliche Detailseite aufrufen.
Hierbei könnte man auch ein anderes Template benutzen.
Dafür gibt es die Callbackfunktion override_template(<filename>).

catwoman

Vielen Dank für den Lösungsansatz. Leider hab ich nur wenig Ahnung von SSP und wüsste jetzt auf Anhieb nicht wie ich das umsetzen soll. Haben Sie ein kleines Scriptbeispiel für die Callbackfunktion override_template ? Ich hab zwar was in der Dokumentation dazu gefunden, aber das hilft mir nicht wirklich weiter.

Vielen Dank im voraus.

admin

Nur mal so als Ansatz. der Code ist nicht getestet.

In stdall.ipl fügt man folgendes ein:

<--spmacro:module(Callback)
sub override_template {
  my $template = $_[0];
  my ($path,$file) = split(/\//,$template);

  if (($FORM{'detail_mode'} eq 'mini') && ($template ~= /^html_de/p_detail.html/)) {
    $file = "p_detail_mini.html";
  }
   return "html_de$path/$file";
}
-->

Dann kann man die mini-Detailseite so aufrufen
<a href="__xxpath__?showd,__xxsession__, <artnr>,,detail_mode=mini">Quick View</a>











catwoman

Vielen lieben Dank. Das werde ich gleich mal ausprobieren.

catwoman

Ich konnte es jetzt testen und bekomme leider die Fehlermeldung: This Error has occured:
parsing error 123-6 in stdall.ipl: syntax error at (eval 26) line 167, near "$template ~" Unknown regexp modifier "/r" at (eval 26) line 167, at end of line Regexp modifiers "/d" and "/u" are mutually exclusive at (eval 26) line 167, at end of line Unknown regexp modifier "/t" at (eval 26) line 167, at end of line syntax error at (eval 26) line 171, near "; }"