ForceType application/x-httpd-php
*/
// Bei 404-Problemen / File does not exist. hilft die Konsultation folgenden FAQ Eintrags:
// http://www.phpeppershop.com/faq.php#34
// ********** START PFADDEFINITIONEN ***********
// Wenn diese Datei (pi.php) ausserhalb des Shop-Verzeichnisses abgeleg wird: Absolutes (!)
// Root-Verzeichnis des Shops, inkl. Trailing-Slash (Verweist also auf das Verzeichnis
// wo index.php und das Unterverzeichnis shop liegt) (Defaultwert = ''). Info: Wenn hier
// ein Pfad angegeben wird, MUSS in der Datei {shop_verzeichnis}/shop/config.inc.php
// zusaetzlich noch die Konstante WEBROOT_PATH definiert werden, da sonst keine Links
// zum Shopsystem erstellt werden koennen. (Beispiele, siehe oben)
define('PI_FS_SHOPROOT_PATH','/home/httpd/vhosts/tombotto.ch/subdomains/shop/httpdocs/'); // Definition des absoluten Dateipfads zum Shop-Verzeichnis (optional!)
// ********** START KONFIGURATION ***********
$javascript_weiterleitung = false; // automatische JavaScript-Weiterleitung ein- ausschalten
define('TRENNZEICH' ,"%20"); // Trennzeichen/Trennstring zum separieren der einzelnen Angaben (frueher '_')
$revisit_days = 5; // Revisit after .. days
$strlen_beschr = 250; // Anzahl Zeichen, die in die Meta-Tags Beschreibung geschrieben werden
$delay_time = 2000; // Delay-Time fuer Redirect in ms
// ********** ENDE KONFIGURATION ***********
// -----------------------------------------------------------------------
// Definitionen, die vor dem Include der Module getaetigt werden muessen
// Wir lesen die Server-Variable SCRIPT_FILENAME aus (Pfad und Dateiname zu dieser Datei)
$script_filename = '';
if (isset($_SERVER['SCRIPT_FILENAME'])) $script_filename = str_replace('http:','',$_SERVER['SCRIPT_FILENAME']);
if (isset($HTTP_SERVER_VARS['SCRIPT_FILENAME'])) $script_filename = str_replace('http:','',$HTTP_SERVER_VARS['SCRIPT_FILENAME']);
// Variablen initialisieren
$pfadpruefung_datei = 'config.inc.php';
$pfadpruefung_pfad = '';
$path_addon = '';
$fs_shoproot_path = '';
$web_shoproot_path = '';
$gueltiger_pfad_gefunden = false;
// Absoluter Pfad zum Shop-Verzeichnis (Dateien) festlegen
if (PI_FS_SHOPROOT_PATH == '') {
// Es wurde kein Pfad hier in dieser Datei angegeben (Konstante PI_FS_SHOPROOT_PATH ist leer)
// Wir gehen nun von folgenden Moeglichen Orten des Shop-Verzeichnisses aus:
// 1a.) pi.php wurde nicht verschoben und liegt im Unterverzeichnis {shop_verzeichnis}/shop/ => ./config.inc.php
$pfadpruefung_pfad = '';
if (file_exists($pfadpruefung_pfad.$pfadpruefung_datei)) {
$gueltiger_pfad_gefunden = true;
$path_addon = '../';
}
else {
// 1b.) pi.php wurde eine Ebene weiter oben abgelegt, auf Stufe von index.php => ./shop/config.inc.php
$pfadpruefung_pfad = 'shop/';
if (file_exists($pfadpruefung_pfad.$pfadpruefung_datei)) {
$gueltiger_pfad_gefunden = true;
$path_addon = '';
}
else {
// 1c.) pi.php wurde ausserhalb des Shoproot Verzeichnisses abgelegt. Wir gehen hier von zwei
// Moeglichkeiten aus: ./shop/shop/config.inc.php oder ./webshop/shop/config.inc.php
$pfadpruefung_pfad = 'shop/shop/';
if (file_exists($pfadpruefung_pfad.$pfadpruefung_datei)) {
$gueltiger_pfad_gefunden = true;
$path_addon = 'shop/';
}
else {
$pfadpruefung_pfad = 'webshop/shop/';
if (file_exists($pfadpruefung_pfad.$pfadpruefung_datei)) {
$gueltiger_pfad_gefunden = true;
$path_addon = 'webshop/';
}
}
}
}
// 2. ) Wenn keiner der ersten drei Versuche erfolgreich war, brechen wir hier mit einer informativen
// Fehlermeldung ab, dass man die Datei zurueckverschieben soll oder den Pfad angeben muss.
if ($gueltiger_pfad_gefunden == true) {
// Erfolg:
if ($path_addon == '../') {
$path_addon = '';
$fs_shoproot_path = substr(dirname($script_filename),0,strrpos(dirname($script_filename),'/')).'/'.$path_addon;
}
else {
$fs_shoproot_path = dirname($script_filename).'/'.$path_addon;
}
}
else {
// Fehlermeldung ausgeben
echo "
Fehler: \n";
echo "
\n";
echo "Diese Datei befindet sich im Moment nicht an ihrem ursprünglichen Ort im PhPepperShop Shop-Unterverzeichnis shop/. \n";
echo "Der Shop hat versucht das System im gleichen Verzeichnis, im Verzeichnis shop/ und webshop/ zu finden und wurde nicht fündig. \n";
echo "
\n";
echo "Bitte editieren Sie diese Datei (".htmlentities($script_filename).") und definieren Sie darin die Konstante PI_FS_SHOPROOT_PATH, \n";
echo "so dass diese Datei den Shop finden kann.
\n";
exit;
}
}
else {
// Es wurde ein Pfad in PI_FS_SHOPROOT_PATH angegeben. Wir pruefen, ob dieser Pfad korrekt ist.
// Ist es ein absoluter Pfad
if (substr(PI_FS_SHOPROOT_PATH,0,1) != '/' && substr(PI_FS_SHOPROOT_PATH,0,1) != "\\") {
echo "
Fehler: \n";
echo "
\n";
echo "In dieser Datei wurde der Pfad zum Shopsystem angegeben (PI_FS_SHOPROOT_PATH=".PI_FS_SHOPROOT_PATH."). \n";
echo "Die Pfadangabe in PI_FS_SHOPROOT_PATH ist kein absoluter Pfad (beginnend mit / oder \\) und ist deshalb ungültig.\n";
echo "
\n";
echo "Bitte korrigieren Sie in dieser Datei den angegebenen Pfad. \n";
exit;
}
// Pruefen, ob ein Trailing-Slash angegeben ist
else if (substr(PI_FS_SHOPROOT_PATH,-1,1) != '/') {
echo "
Fehler: \n";
echo "
\n";
echo "In dieser Datei wurde der Pfad zum Shopsystem angegeben (PI_FS_SHOPROOT_PATH=".PI_FS_SHOPROOT_PATH."). \n";
echo "Die Pfadangabe in PI_FS_SHOPROOT_PATH hat keinen Trailing-Slash (zuhinterst ein /-Zeichen) und ist deshalb ungültig.\n";
echo "
\n";
echo "Bitte korrigieren Sie in dieser Datei den angegebenen Pfad. \n";
exit;
}
else {
// a) Der Pfad ist korrekt. Wir pruefen nun, ob in der config.inc.php die benoetigte Konstante
// WEBROOT_PATH definiert ist. Wenn ja, ist alles ok. Wenn nicht, erscheint eine Info-Fehlermeldung.
if (file_exists(PI_FS_SHOPROOT_PATH.'shop/'.$pfadpruefung_datei)) {
include_once(PI_FS_SHOPROOT_PATH.'shop/config.inc.php'); // Testinclude der Steuerungskonstanten dieses Shops
if (!defined('WEBROOT_PATH') || trim(WEBROOT_PATH) == '') {
echo "
Fehler: \n";
echo "
\n";
echo "In dieser Datei wurde der Pfad zum Shopsystem angegeben (PI_FS_SHOPROOT_PATH). \n";
echo "Die zusätzlich benötigte Pfadangabe in der Steuerungskonstante WEBROOT_PATH ";
echo "ist in config.inc.php nicht definiert, obwohl PI_FS_SHOPROOT_PATH verwendet wird.\n";
echo "
\n";
echo "Bitte editieren Sie diese Datei (".PI_FS_SHOPROOT_PATH."shop/config.inc.php) \n";
echo "und definieren Sie darin die Konstante WEBROOT_PATH.
\n";
exit;
}
else {
// Erfolg:
$gueltiger_pfad_gefunden = true;
$fs_shoproot_path = PI_FS_SHOPROOT_PATH;
$web_shoproot_path = WEBROOT_PATH;
}
}
// b) Der Pfad ist nicht korrekt, wir zeigen eine Fehlermeldung an.
else {
// Fehlerdetails ermitteln
$fehler = 'Die Pfadangabe in PI_FS_SHOPROOT_PATH ist nicht korrekt oder führt nicht zum Shop Root-Verzeichnis, Fehlerdetails:'."\n";
if (!is_dir(PI_FS_SHOPROOT_PATH)) {
$fehler.= " Das angegebene Verzeichnis existiert nicht oder ist kein Verzeichnis.";
}
else if (!is_readable(PI_FS_SHOPROOT_PATH)) {
$fehler.= " Das angegebene Verzeichnis ist nicht lesbar.";
}
else if (!file_exists(PI_FS_SHOPROOT_PATH.'shop/'.$pfadpruefung_datei)) {
$fehler.= " Das angegebene Verzeichnis ist anscheinend nicht das Shoproot-Verzeichnis eines PhPepperShops (es wurde darin kein Unterverzeichnis shop/ gefunden und darin keine Datei namens config.inc.php).";
}
echo "
Fehler: \n";
echo "
\n";
echo "In dieser Datei wurde der Pfad zum Shopsystem angegeben (PI_FS_SHOPROOT_PATH=".PI_FS_SHOPROOT_PATH."). \n";
echo $fehler;
echo "
\n";
echo "Bitte korrigieren Sie in dieser Datei den angegebenen Pfad. \n";
exit;
}
}
}
// Includepfad des Shop-Unterverzeichnisses definieren und die Konstante
// ROOT_FILE_PATH abfuellen, falls diese noch nicht definiert wurde
$fs_include_path_abs = '';
if($gueltiger_pfad_gefunden == true){
if (!defined('ROOT_FILE_PATH')) define('ROOT_FILE_PATH',$fs_shoproot_path);
// include Pfad anpassen. Dabei werden die unterschiedlichen Delimiter-Zeichen fuer
// Windows und UNIX/Linux beruecksichtigt. Danke fuer die Idee an Eduard Mas Walgram.
// Windows --> Delimiter = Strichpunkt | UNIX/Linux --> Delimiter = Doppelpunkt
if (substr(PHP_OS,0,3) == 'WIN') {$pd = ';';} else {$pd = ':';}
ini_set('include_path', $fs_shoproot_path.$pd.$fs_shoproot_path.'/shop');
define('INI_SET_INCLUDE_PATH_DONE', true);
$fs_include_path_abs = $fs_shoproot_path.'shop/';
}
// Einbinden der benoetigten Module (PHP-Scripts)
// Bei Unklarheiten, siehe include-Hierarchie in der Dokumentation
include_once($fs_include_path_abs.'always_include.php');
include_once($fs_include_path_abs.'pindex.def.php');
// Pruefen, ob diese Datei umbenannt wurde. Wenn ja, sicherstellen, dass dieser neue Name in
// der Datei config.inc.php des Shopsystems vermerkt worden ist.
// Wenn der Dateiname dieser Datei anders ist als pi.php, muss dies in der config.inc.php
// in der Steuerungskonstante PI_WEB_PATH zusammen mit dem absoluten Pfad angegeben werden.
if (basename($script_filename) != 'pi.php' && (!defined('PI_WEB_PATH') || PI_WEB_PATH == '')) {
echo "
Fehler: \n";
echo "
\n";
echo "Der Name dieser Datei wurde von pi.php in \"".basename($script_filename)."\" geaendert. \n";
echo "Dies ist aber in der Steuerungskonstante PI_WEB_PATH in config.inc.php nicht vermerkt worden.\n";
echo "
\n";
echo "Bitte editieren Sie diese Datei {shop_verzeichnis}/shop/config.inc.php und definieren Sie darin die Konstante PI_WEB_PATH = ".$script_filename." \n";
echo "
\n";
exit;
}
// Wir uebernehmen die in der Datei config.inc.php angegebene PI_DATEINAMEN Angabe
// und stellen sicher, dass in $scriptname der aktuelle Scriptname steht.
if(!defined('PI_DATEINAME') || PI_DATEINAME == ''){
// Fallback, falls Dateiname nicht definiert ist!
$scriptname = basename($script_filename);
}
else if (defined('PI_DATEINAME') && PI_DATEINAME != '') {
$scriptname = basename($script_filename);
if (basename($script_filename) != PI_DATEINAME) {
echo "
Fehler: \n";
echo "
\n";
echo "Der Name dieser Datei ist \"".basename($script_filename)."\". \n";
echo "Dies ist aber in der Steuerungskonstante PI_DATEINAME in \n";
echo "config.inc.php nicht so angegeben worden,\n";
echo "dort steht der Wert: \"".PI_DATEINAME."\"";
echo "
\n";
echo "Bitte editieren Sie diese Datei {shop_verzeichnis}/shop/config.inc.php und definieren Sie darin die Konstante PI_DATEINAME = ".basename($script_filename)." \n";
echo "
\n";
exit;
}
}
// Das Webrootverzeichnis wird aus der config.inc.php Definition uebernommen
if (defined('PI_WEB_PATH') && PI_WEB_PATH != '') {
$web_pi_path = PI_WEB_PATH; // Absolutes Webverzeichnis zu dieser Datei
}
// Der Webroot-Pfad wird entweder aus der config.inc.php Definition uebernommen
// oder er wird aus der entsprechenden Funktion ausgelesen
if(!isset($web_shoproot_path) || $web_shoproot_path == ''){
$web_shoproot_path = get_webroot_path();
}
// Server-Variablen 'entpacken'
extract($HTTP_SERVER_VARS);
// ******** AB HIER STEHEN ALLE PFADINFORMATIONEN ZUR VERFUEGUNG **********
// --- Ermitteln, ob der Shop im Haendlermodus laeuft, wenn ja, Suchmaschinenfunktionalitaet ausschalten
$haendlersettings = getHaendlermodus();
$haendlermodus = $haendlersettings[0];
// --- Auswertung des REQUEST_URI ---
$artikel = '';
$req_uri = $REQUEST_URI;
// Trailing-Slash entfernen
if ($REQUEST_URI[strlen($REQUEST_URI)-1] == '/'){
$req_uri = substr($REQUEST_URI,0,strlen($REQUEST_URI)-1);
}
$req_uri_arr = split('/',$req_uri);
$arr_len = count($req_uri_arr);
$arr_z = $req_uri_arr[$arr_len-1];
$arr_y = $req_uri_arr[$arr_len-2];
$arr_x = $req_uri_arr[$arr_len-3];
$darstellen = '';
$erster_artikel = false;
$pindex = new pindex;
$arr_z = urldecode($arr_z);
if($arr_z != $scriptname && $arr_z != '' && $arr_z != 'index.html' && $arr_z != 'shopinfo.html'){
$virtfilename = $arr_z;
$dateiname_db = substr($arr_z,0,strrpos($arr_z,'.'));
$verlink_art_ids = $pindex->get_verlinkungen($dateiname_db);
}
elseif($pindex->artikel_id == '' && ($arr_z == 'index.html' || $arr_z == $scriptname)){
$verlink_art_ids = $pindex->get_verlinkungen('',true);
$erster_artikel = true;
}
elseif($pindex->artikel_id == '' && $arr_z == 'shopinfo.html'){
$darstellen = 'shopinfo';
}
if($pindex->artikel_id == '' && $darstellen == ''){
//header("HTTP/1.1 404 Not Found");
header("Location: /index.php");
// echo "Document not found";
exit;
}
if($darstellen == ''){
$darstellen = 'artikel';
}
$shopname = strip_tags(getShopname());
$styles_prefix = $web_shoproot_path.'shop/';
if(isset($web_pi_path) && $web_pi_path != ''){
$base_path = $web_pi_path.$scriptname.'/';
}
else{
$base_path = $styles_prefix.$scriptname.'/';
}
// Shopinfo Link definieren
$shopinfo_link = 'Shopinfo';
echo "\n";
echo " \n";
echo " \n";
echo " \n";
// -----------------------------------------------------------------------
// darstellen = artikel
// Detailinfoseite eines Artikels anzeigen
// -----------------------------------------------------------------------
if($darstellen == 'artikel'){
// Artikel auslesen
$my_artikel = getArtikel($pindex->artikel_id);
// Ist Mehrsprachigkeit eingeschaltet?
$mehrsprachigkeit = get_new_shop_setting('MehrsprachigkeitAnzeigen', 'shop_settings');
$sprachen_artikel = array($lang => $my_artikel);
$sprachen = array();
if ($mehrsprachigkeit['MehrsprachigkeitAnzeigen'] == 'Y') {
// Ist der LANGUAGE_DB_FIELD_MODE eingeschaltet? Wenn ja, sollen alle
// Sprachen auf der gleichen Seite dargestellt werden. Achtung: Wenn
// der LANGUAGE_DB_FIELD_MODE verwendet wird und die Englisch-Sprachigen
// Spalten noch nicht alle abgefuellt sind, so erscheint hier unter anderem
// eine leere Seite - einfach alles sauber mit Daten abfuellen, dann gehts.
if (defined('LANGUAGE_DB_FIELD_MODE') && LANGUAGE_DB_FIELD_MODE == true) {
$aktive_sprachen = get_active_languages(false, true);
if (is_array($aktive_sprachen) && count($aktive_sprachen) > 0) {
foreach($aktive_sprachen as $sprachcode) {
if ($sprachcode != $lang) {
$sprachen[] = $sprachcode;
}
}
}
if (count($sprachen) > 0) {
// Wir haben einen eingeschalteten LANGUAGE_DB_FIELD_MODE Shop und
// mindestens eine aktive Fremdsprache, deren Daten in eigenen DB-
// Spalten der artikel-Tabelle abgelegt sind.
foreach($sprachen as $sprachcode) {
$sprachen_artikel[$sprachcode] = getArtikel($pindex->artikel_id,'id','id',true,get_language_db_field_mode_override($sprachcode));
}
}
}
}
if (!empty($my_artikel->name) && ($haendlermodus == 'N')){
// Sprachinfos initialisieren
$langinfo = '';
// Kategorien-ID's des Artikels auslesen
$kategorie_ids = getKategorieID_eines_Artikels($pindex->artikel_id);
// Artikel nur ausgeben, wenn nicht in der Kategorie Nichtzugeordnet
$anzeigen = true;
if (count($kategorie_ids < 2)){
// Kategorie-ID der Kategorie Nichtzugerodnet auslesen
$nichtzugeordnet_id = get_kat_id_nichtzugeordnet();
if ($kategorie_ids[0] == $nichtzugeordnet_id || empty($kategorie_ids[0])){
// Artikel liegt in der Kategorie Nichtzugeordnet - nicht anzeigen
$anzeigen = false;
$darstellen = 'liste';
}
else {
// Wenn Mehrsprachigkeit eingeschaltet ist:
// Auslesen der ersten / einzigen Sprache der Kategorie des Artikels
if ($mehrsprachigkeit['MehrsprachigkeitAnzeigen'] == 'Y') {
$kategorie_sprachen = getKategorie_sprachen($kategorie_ids[0]);
if (count($kategorie_sprachen) == 0) {
// Wenn wir hierhin kommen, ist die Kategorie fuer alle Sprachen zugelassen
// wir waehlen die Defaultsprache zur Anzeige
$kategorie_sprachen[0] = new locale();
$kategorie_sprachen[0]->putlocale(array('iso_639_1_code'=>strtolower(DEFAULT_LANGUAGE)));
}
$sprachanzeige = $kategorie_sprachen[0]->iso_639_1_code;
if (!defined('LANGUAGE_DB_FIELD_MODE') || LANGUAGE_DB_FIELD_MODE == false) {
$langinfo = '&lang='.$sprachanzeige.'&update_user_lang=true';
}
}
}
} // end of if
if ($anzeigen) {
$shoplink = $web_shoproot_path."index.php?Kategorie_ID=$kategorie_ids[0]&Artikel_ID=".$pindex->artikel_id;
echo " \n";
echo " \n";
echo " \n";
echo " \n";
echo " \n";
echo " name)).", ";
foreach ($kategorie_ids as $kat_id){
$my_kategorie = getKategorie($kat_id, false, get_language_db_field_mode_override($sprachcode));
echo '';
if (!empty($my_kategorie->Unterkategorie_von)) {
echo $my_kategorie->Unterkategorie_von.', ';
}
echo $my_kategorie->Name."";
} // end of foreach $kategorie_ids
echo ", Einweggeschirr, Festartikel,tombotto, Fest, Event, Promotion, Artikel, Online, Shop\">\n";
echo " name))." aus dem Bereich ";
foreach ($kategorie_ids as $kat_id){
$my_kategorie = getKategorie($kat_id, false, get_language_db_field_mode_override($sprachcode));
echo '';
if (!empty($my_kategorie->Unterkategorie_von)) {
echo $my_kategorie->Unterkategorie_von.' - ';
}
echo $my_kategorie->Name."";
} // end of foreach $kategorie_ids
echo "\">\n";
// Meta-Angaben nach Dublin-Core
// echo " name))."\"> \n";
echo " Unterkategorie_von)) {
echo $my_kategorie->Unterkategorie_von.' - ';
}
echo $my_kategorie->Name." - ";
} // end of foreach $kategorie_ids
echo "".strip_tags($my_artikel->name)."\">\n";
echo " \n";
echo " name))."\"> \n";
// echo " beschreibung),0,$strlen_beschr)))."\"> \n";
echo " \n";
echo " \n";
echo " \n";
echo " \n";
echo " \n";
echo " \n";
echo " \n";
echo " \n";
echo " \n";
echo " \n";
// echo " ".strip_tags($my_artikel->name).' / '.$shopname." \n";
echo " ";
foreach ($kategorie_ids as $kat_id){
$my_kategorie = getKategorie($kat_id, false, get_language_db_field_mode_override($sprachcode));
echo '';
if (!empty($my_kategorie->Unterkategorie_von)) {
echo $my_kategorie->Unterkategorie_von.' - ';
}
echo $my_kategorie->Name." - ";
} // end of foreach $kategorie_ids
echo "".strip_tags($my_artikel->name)."\n";
// Die Suchmaschinen bestrafen zum Teil Seiten, die Redirects auf andere Seiten machen, mit schlechten Rankings (was in vielen Faellen
// auch sinnvoll ist). Da wir hier aber den Artikel wahrheitsgetreu fuer Suchmaschinen abbilden, wollen wir diese Bestrafung verhindert
// unsere Weiterleitungsfunktion wird deshalb etwas verschleiert.
if($javascript_weiterleitung){
echo " \n";
} // end if
echo " \n";
if($javascript_weiterleitung){
echo " \n";
}
else{
echo " \n";
}
echo '
'."\n";
echo '';
echo '
';
foreach ($kategorie_ids as $kat_id){
$my_kategorie = getKategorie($kat_id, false, get_language_db_field_mode_override($sprachcode));
if (!empty($my_kategorie->Unterkategorie_von)) {
echo $my_kategorie->Unterkategorie_von.' - ';
}
echo $my_kategorie->Name." \n";
} // end of foreach $kategorie_ids
echo "
";
echo "
Sie befinden sich im Online-Katalog von tombotto. Klicken Sie auf Artikel anzeigen, um in den Shop zu gelangen.
";
// Produktebild nur ausgeben, wenn vorhanden
$bildausgaben = '';
if ($my_artikel->bild_klein != ''){
$bildlink = get_bildlink_intern($my_artikel->bild_klein);
if(substr($bildlink,0,1) == '.'){
// es wurde ein interner Bildlink zurueckgegeben, wir fuegen den basepath an
$bildlink = $web_shoproot_path.'shop'.substr($bildlink,1);
}
$thumbnail_breite = getThumbnail_Breite();
} // end if
foreach($sprachen_artikel as $sprachcode=>$my_artikel) {
if (count($sprachen_artikel) > 1) {
$langinfo = '&lang='.$sprachcode.'&update_user_lang=true';
}
if ($my_artikel->bild_klein != ''){
$bildausgaben = ''."\n";
}
echo "
\n";
$status = true;
}
// Nur die verwendeten Zusatzfelder anzeigen
if ($zusatzfelder_infos[$i]['verwenden'] == 'verwenden') echo $zusatzfelder_infos[$i]['label'].': '.$my_artikel->$artikelzusatzfeldname." \n";
} // end if
if($i == ANZAHL_ARTIKELZUSATZFELDER && $status == true){
echo "
\n";
}
} // end for
// Variationen und Variationsgruppen aus Datenabank einlesen
$myvariationen = $my_artikel->getallvariationen();
$myvariationsgruppen = $my_artikel->getallvar_gruppe();
// Anzahl Variationen zaehlen
$varcount = count($myvariationen);
// Die hoechste Variationsgruppe bestimmen, die in diesem Artikel verwendet wird
$grpcount = 1;
foreach ($my_artikel->variationen_gruppe as $gruppe){
if ($gruppe > $grpcount){ $grpcount = $gruppe; }
} // end of foreach
foreach ($myvariationsgruppen as $gruppe){
if ($gruppe > $grpcount){ $grpcount = $gruppe; }
} // end of foreach
// --- Alle Variationsgruppen abarbeiten
$var_gruppen_nr = 0;
$erste_gruppe = true;
for ($grp=1; $grp<=$grpcount; $grp++){
$var_grp = array();
// alle Variationen bestimmen, die zu der aktuellen Variationsgruppe gehören
foreach ($myvariationen as $keyname => $value){
// wenn eine Variation der Gruppe 0 zugeordnet ist, handelt es sich um einen fehler
// oder der Shop wurde upgedated. Da die Variationsgruppe 0 nicht existiert, werden
// die Variationen der Variationsgruppe 1 zugeordnet
if($myvariationsgruppen[$keyname] == 0){
$myvariationsgruppen[$keyname] = 1;
} // end of if
// die Variationen, welche zu dieser Variationsgruppe in einen assoziativen Array schreiben
if ($myvariationsgruppen[$keyname] == $grp){
$var_grp[$keyname] = $value;
} // end of if
} // end of foreach
// wenn die Varaitionsgruppe mehr als eine Variation beinhaltet, wird sie in der
// gewuenschten Form (dropdown-radio)ausgegeben
if (count($var_grp) > 1){
// falls zu der ersten Variantengruppe keine Beschreibung existiert, wird sie mit
// dem String "Varianten" belegt (Rückwärtskompatibilität)
if ($grp == 1 && urldecode($my_artikel->var_gruppen_text[1]) == ''){
$my_artikel->var_gruppen_text[1] = 'Varianten';
} // end of if
// Variationsgruppen-Ueberschrift ausgeben
echo ''.urldecode($my_artikel->var_gruppen_text[$grp])." \n";
foreach ($var_grp as $keyname_var => $value_var){
echo '- '.cut_var_grp_name($keyname_var)." \n";
}
}
} // end of for
// --- Optionen einfuegen
$myoptionen = $my_artikel->getalloptionen();
$temp = key($myoptionen);
// Falls Artikeloptionen vorhanden...
if(!empty($temp)){
echo "\n".£('optionen')." \n";
// Fuer jede Artikeloption
foreach($myoptionen as $keyname => $value){
echo "- $keyname \n";
} // End of foreach Optionen
} // End of if not empty Optionen
// --- Ausgeben, in welchen Kategorien der Artikel enthalten ist
// if (is_array($kategorie_ids) && count($kategorie_ids) > 1){
// echo ' '.£('artikel_in_kategorien').": \n";
// }
// else{
// echo ' '.£('artikel_in_kategorie').": \n";
// }
// foreach ($kategorie_ids as $kat_id){
// $my_kategorie = getKategorie($kat_id, false, get_language_db_field_mode_override($sprachcode));
// echo '- ';
// if (!empty($my_kategorie->Unterkategorie_von)) {
// echo $my_kategorie->Unterkategorie_von.' -> ';
// }
// echo $my_kategorie->Name." \n";
// } // end of foreach $kategorie_ids
}// end of foreach $sprachen_artikel
} // end of if anzeigen
// Links auf andere Artikel einfuegen
echo ' '.£('andere_artikel_im_shop').":
'."\n";
} // end of if darstellen = shopinfo
// HTML-Footer
echo " \n";
echo "\n";
// End of file ----------------------------------------------------
?>