Seite senden

Begonnen von dobra, Dezember 25, 2007, 15:14:28

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

dobra

Hallo,

Ich habe mein "Seite einem Freund empfehlen" von JS auf ssp umgestellt  :D

<!--spmacro:module(seite)
sub senden {
my $title;
my %pageinfo = ssp::getCurrentPageInfo();
if ($pageinfo{pagetype} == 3) {
my $itemid = ssp::get_var_article("itemid", 0);
my $seiteurl = qq|$ssp::xxpath?showd$ssp::pgid!,$main::ppage,$itemid|;
$title =  ssp::get_var_article(ARTIKEL);
$title =~ s/&auml;/%E4/g;
$title =~ s/&ouml;/%F6/g;
$title =~ s/&uuml;/%FC/g;
$title =~ s/&Auml;/%C4/g;
$title =~ s/&Ouml;/%D6/g;
$title =~ s/&Uuml;/%DC/g;
$title =~ s/&szlig;/%DF/g;
    my $text = qq| Hallo%0D%0A%0D%0ASchau Dir doch diese Seite im Woll-Insel online-shop einmal an!
%0D%0A%0D%0ADie Seite hei%DFt: $title
%0D%0AHier ist die Adresse: $seiteurl
%0D%0A%0D%0AIch dachte, das k%F6nnte Dich auch interessieren.
%0D%0A%0D%0A mit freundlichen Gr%FC%DFen|;
main::mprint "<a href=\"mailto:?subject= interssante Strick- und H%E4kelseite: $title&body=$text\">Seite empfehlen</a>";
}
else {
my $seiteurl = qq|$ssp::xxpath?show$ssp::pgid|;
my $pagenr = $ssp::pgid;
$title = ssp::get_var_page("ptitle",$pagenr);
$title =~ s/&auml;/%E4/g;
$title =~ s/&ouml;/%F6/g;
$title =~ s/&uuml;/%FC/g;
$title =~ s/&Auml;/%C4/g;
$title =~ s/&Ouml;/%D6/g;
$title =~ s/&Uuml;/%DC/g;
$title =~ s/&szlig;/%DF/g;
    my $text = qq| Hallo%0D%0A%0D%0ASchau Dir doch diese Seite im Woll-Insel online-shop einmal an!
%0D%0A%0D%0ADie Seite hei%DFt: $title
%0D%0AHier ist die Adresse: $seiteurl
%0D%0A%0D%0AIch dachte, das k%F6nnte Dich auch interessieren.
%0D%0A%0D%0A mit freundlichen Gr%FC%DFen|;
main::mprint "<a href=\"mailto:?subject= interssante Strick- und H%E4kelseite: $title&body=$text\">Seite empfehlen</a>";
}
}
-->


Funktioniert auf allen Seiten.

Damit Umlaute im "$text" und "subject=" richtig dargestellt werden, müssen sie in Hexadezimal codierte ANSI-Sonderzeichen geschrieben werden.
Die Umlaute im Seitentitel im WC müssen "maskiert" (also ä = &auml; usw) eingetragen sein.
Die Umlaute in der Variablen $titel werden dann mit $title =~ s/&auml;/%E4/g; ...  automatisch richtig codiert und korrekt als "ä" usw ausgegeben.
(getestet mit FF und IE)

Nachtrag:
Habe vergessen zu erwähnen, daß bei Detailseiten (oberer Codeteil)
my $title =  ssp::get_var_article(ARTIKEL);
ARTIKEL mein benutzerdeffiniertes Feld für die Artikelnamen ist.

Wenn so ein Feld nicht vorhanden ist und man auch keines anlegen will, kann man auch
my $title =  ssp::get_var_article(itemid);  (für die Artikelnummer) oder
my $title =  ssp::get_var_article(idescription);  (für den Beschreibungstext) verwenden.
mfG
dobra