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 // **** ACHTUNG: DO_FIRST LAEUFT IN DIESEM SCRIPT NICHT! KOMPATIBILITAET BEACHTEN! **** // ********** PFADDEFINITIONEN *********** define('PI_FS_SHOPROOT_PATH',''); // Definition des absoluten Dateipfads zum Shop-Verzeichnis (optional!) // pindex.def.php includen versuchen und gleichzeitig Erkennung vom Shoproot-Pfad define('KI_KATEGORIEN_LINKS',true); // Flag zur Steuerung, dass Links auf Kategorien ueber ki.php als Kurzlinks verwendet werden define('PI_AUFRUF',true); // Flag zur Erkennung fuer die anderen Scripte, dass pi.php aufgerufen wurde $script_filename = substr(__FILE__,(strrpos(__FILE__,DIRECTORY_SEPARATOR)+1)); if(PI_FS_SHOPROOT_PATH != ''){ if(!@include_once(PI_FS_SHOPROOT_PATH.'shop/pindex.def.php')){ die('Ungueltige Shoproot-Pfadangabe in PI_FS_SHOPROOT_PATH: \''.PI_FS_SHOPROOT_PATH.'\' in Datei \''.$script_filename.'\'!'); } $pih = pi_helper::get_instance(); $pih->init(PI_FS_SHOPROOT_PATH,$script_filename); } else{ $dirs_arr = array('','webshop','shop'); // uebliche Installationen /shop /webshop/shop /shop/shop foreach($dirs_arr as $dir){ if(@include_once(getcwd().$dir.'/shop/pindex.def.php')){ $pih = pi_helper::get_instance(); $pih->init(getcwd().$dir,$script_filename); break; } } if(!isset($pih)){ die('Die Shoproot-Pfadangabe konnte nicht ermittelt werden, bitte PI_FS_SHOPROOT_PATH in \''.$script_filename.'\' definieren!'); } } // end else // Server-Variablen 'entpacken' extract($_SERVER); $req_uri = rtrim($REQUEST_URI,'/'); // Versuchen, aus der Request-URI die Sprache des Artikels zu ermitteln. Dieser Ermittelungsversuch // muss vor jedem Shopinclude laufen, da die Sprache sonst nicht korrekt gesetzt werden kann. Es // kann hier noch nicht ermittelt werden, ob Mehrsprachigkeit ueberhaupt eingeschaltet ist, diese // Pruefung erfolgt weiter unten. $req_uri_arr = split('/',$req_uri); $lang_vermutung = $req_uri_arr[(count($req_uri_arr)-2)]; if(strlen($lang_vermutung) == 2){ $lang_vermutung = strtolower($lang_vermutung); // gefundene Sprache nur vorwaehlen, wenn auch ein Language-Verzeichnis in dieser Sprache existiert if(!file_exists(FILEROOT_PATH.'shop/language/'.$lang_vermutung)){ $lang_vermutung = SHOP_MAIN_LANG; } } // end if else{ $lang_vermutung = SHOP_MAIN_LANG; } $_GET['lang'] = $lang_vermutung; $_GET['update_user_lang'] = 'true'; $HTTP_GET_VARS = array(); $HTTP_GET_VARS['lang'] = $_GET['lang']; $HTTP_GET_VARS['update_user_lang'] = $_GET['update_user_lang']; // ----------------------------------------------------------------------- // Definitionen, die vor dem Include der Module getaetigt werden muessen // Variablen initialisieren $pfadpruefung_datei = 'config.inc.php'; $pfadpruefung_pfad = ''; $path_addon = ''; $gueltiger_pfad_gefunden = false; // Einbinden der benoetigten Module (PHP-Scripts) // Bei Unklarheiten, siehe include-Hierarchie in der Dokumentation include_once(FILEROOT_PATH.'/shop/always_include.php'); include_once(FILEROOT_PATH.'/shop/metatags.def.php'); // Ermitteln, ob der Shop im Haendlermodus laeuft, wenn ja, Suchmaschinenfunktionalitaet ausschalten $haendlersettings = getHaendlermodus(); if($haendlersettings[0] == 'Y'){ $pih->show_404(); // 404 Fehlermeldung zurueck geben } // --- Auswertung des REQUEST_URI --- $artikel = ''; // Ist Mehrsprachigkeit eingeschaltet? $mehrsprachigkeit_setting = get_new_shop_setting('MehrsprachigkeitAnzeigen', 'shop_settings'); (($mehrsprachigkeit_setting['MehrsprachigkeitAnzeigen'] == 'Y') ? $mehrsprachigkeit = true : $mehrsprachigkeit = false); $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]; $aktive_sprache = SHOP_MAIN_LANG; if($mehrsprachigkeit){ // aktive Sprache aus der URL ermitteln: Falls mehrsprachigkeit eingeschaltet ist, enthaelt die Request-URL eventuell einen zweistelligen Sprachcode, dieser wird gesucht und aus der Request-URL ausgeschnitten $aktive_sprachen = get_active_languages(false, true); if($lang_vermutung != $aktive_sprache){ if(($key = array_search($lang_vermutung,$aktive_sprachen)) !== false){ $aktive_sprache = $aktive_sprachen[$key]; $arr_y = $req_uri_arr[$arr_len-3]; $arr_x = $req_uri_arr[$arr_len-4]; } else{ // es wurde eine nicht aktive Sprache angegeben -> 404 Fehler ausgeben $pih->show_404(); } } } // end if $darstellen = ''; $erster_artikel = false; $pindex = pindex::get_instance(); $pindex->set_aktive_sprache($aktive_sprache); // Aktive Sprache im Objekt setzen $arr_z = urldecode($arr_z); $pindex->virtueller_dateiname = $arr_z; if($arr_z != $script_filename && $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 == $script_filename)){ $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 == ''){ $pih->show_404(); // 404 Fehlerseite ausgeben } if($darstellen == ''){ $darstellen = 'artikel'; } // ----------------------------------------------------------------------- // darstellen = artikel // Detailinfoseite eines Artikels anzeigen // ----------------------------------------------------------------------- if($darstellen == 'artikel'){ $buff = ''; $kategorie_ids = getKategorieID_eines_Artikels($pindex->artikel_id,false,true,true); // Kategorien-IDs des Artikels $kategorie_id = current($kategorie_ids); // erste Kategorie $pindex->kategorie_id = $kategorie_id; // Aufruf-Umgebung fuer USER_ARTIKEL_HANDLING.php erstellen $darstellen = 1; if (isset($_GET['darstellen']) && intval($_GET['darstellen']) != 1) { $darstellen = intval($_GET['darstellen']); } $Ziel_ID = $pindex->artikel_id; $Kategorie_ID = $kategorie_id; $kat_last = $kategorie_id; $kat_aktiv = $kategorie_id; $is_deeplink = 'true'; $_GET['force_zweistufigkeit'] = 'true'; chdir(FILEROOT_PATH.'/shop/'); $tpl_kat = new tpl_pepper(); $tpl_kat->load_template_file('pi.tpl.html'); $my_session->set_session_vars(array('artikel_last'=>0,'grp_last'=>'','kat_last_pos_baum'=>array()), true, 'ARGUMENT'); $my_session->set_session_var('grp_aktiv','', false, 'ARGUMENT'); $my_session->set_session_var('kat_last',$kat_aktiv, false, 'ARGUMENT'); $my_session->set_session_var('kat_aktiv',$kat_aktiv, false, 'ARGUMENT'); $my_session->save_session(); if ($mehrsprachigkeit) { $aktive_sprachen = $pindex->get_sprachen_von_artikel(); if(count($aktive_sprachen) > 1){ $update_user_lang='true'; $tpl_kat->set_current_block('andere_sprachen'); $tpl_kat->set_variable('andere_sprachen_ueberschrift',£('andere_sprachen_fuer_diesen_artikel')); foreach($aktive_sprachen as $lang_code=>$locale_name){ if($pindex->dateiname == ''){ // beim ersten angezeigten Artikel ist der virtuelle Dateiname an dieser Stelle nicht bekannt -> fuer die fremdsprachige Verlikung ermitelln $pindex->get_by_artikel_id($pindex->artikel_id); } if($lang_code != $aktive_sprache){ $tpl_kat->set_current_block('sprache_eintrag'); if($lang_code != SHOP_MAIN_LANG){ $tpl_kat->set_variable('link',$pih->get_pi_basepath().$lang_code.'/'.$pindex->virt_dateinamen_lang_arr[$lang_code]['pi_dateiname'].PI_DATEIENDUNG); } else{ $tpl_kat->set_variable('link',$pih->get_pi_basepath().$pindex->virt_dateinamen_lang_arr[$lang_code]['pi_dateiname'].PI_DATEIENDUNG); } $tpl_kat->set_variable('sprache',htmlentities($locale_name)); $tpl_kat->parse_current_block(); } } $tpl_kat->set_current_block('andere_sprachen'); $tpl_kat->parse_current_block(); } // end elseif } // end if // Ausgeben, in welchen Kategorien der Artikel enthalten ist if (KATEGORIEN_VIELSTUFIG && modul_check('kategorien_vielstufig')){ $tpl_kat->set_current_block('artikel_kategorien'); if (is_array($kategorie_ids) && count($kategorie_ids) > 1){ $tpl_kat->set_variable('artikel_kategegorien_ueberschrift',£('artikel_in_kategorien',$lang)); } else{ $tpl_kat->set_variable('artikel_kategegorien_ueberschrift',£('artikel_in_kategorie')); } foreach ($kategorie_ids as $kat_id){ $kategorien_vielstufig = new kategorien_vielstufig($kat_id); $kategorien_vielstufig->show_posinfo($tpl_kat,0,0); } $tpl_kat->set_current_block('artikel_kategorien'); $tpl_kat->parse_current_block(); } // end if // Shopinfo-Link beim ersten Artikel ausgeben if($erster_artikel){ $tpl_kat->set_current_block('shopinfo_eintrag'); $tpl_kat->set_variable('link',$pih->get_pi_basepath().'shopinfo'.PI_DATEIENDUNG); $tpl_kat->set_variable('shopinfo_label','Shopinfo'); $tpl_kat->parse_current_block(); } // Links auf andere Artikel einfuegen $tpl_kat->set_current_block('andere_artikel'); $tpl_kat->set_variable('andere_artikel_ueberschrift',£('andere_artikel_im_shop')); foreach($verlink_art_ids as $artikel_id){ $tpl_kat->set_current_block('artikel_eintrag'); $myartikellight = getArtikellight($artikel_id, array(PINDEX_SPALTE_DATEINAMEN)); $artikel_name = $myartikellight['Name']; $artikel_dateiname = $myartikellight[PINDEX_SPALTE_DATEINAMEN]; $artikel_sprache = ''; if($aktive_sprache != SHOP_MAIN_LANG){ $artikel_sprache = $aktive_sprache.'/'; } $tpl_kat->set_variable('link',$pih->get_pi_basepath().$artikel_sprache.$artikel_dateiname.PI_DATEIENDUNG); $tpl_kat->set_variable('artikelname',htmlentities($artikel_name)); $tpl_kat->parse_current_block(); } // end foreach $tpl_kat->set_current_block('andere_artikel'); $tpl_kat->parse_current_block(); // HTML-Template rendern und dem Buffer zufuegen $buff.= $tpl_kat->get(); define('BUFF_PI_VERLINKUNG_WEITERE_ARTIKEL',$buff); // Buffer fuer USER_ARTIKEL_HANDLING_AUFRUF.php als Konstante definieren include('USER_ARTIKEL_HANDLING_AUFRUF.php'); // USER_ARTIKEL_HANDLING_AUFRUF.php aufrufen exit; } // end if darsellen = artikel // ----------------------------------------------------------------------- // darstellen = shopinfo // Shopinformationen ausgeben // ----------------------------------------------------------------------- elseif ($darstellen == "shopinfo"){ chdir(FILEROOT_PATH.'/shop/'); // Metatag-Objekt abfuellen $metatags_obj = static_metatags(); $metatags_obj->set_keywords('Shopinfo '.getshopname()); $metatags_obj->set_abstract('Shopinfo '.getshopname()); $metatags_obj->set_tag('page-topic','Shopinfo'); $metatags_obj->set_author(); $metatags_obj->set_title('Shopinfo - '.getshopname().' / phpeppershopbyglarotech'); // ----------------------------------------------------------------------- // Pre- und Post-Content auslesen $mainpage_parameter = array('javascript' => '', // Header JavaScripts 'body_attributes' => '', // Body-Tag Attribute 'stylesheet_path' => get_webroot_path().'shop/', // Stylesheet Pfad 'titel' => $page_titel); // Titel der Page $mainpage = new mainpage($mainpage_parameter); // Mainpage-Objekt $content_seite = ''; $content_seite.= "\n"; $content_seite.= " \n"; $content_seite.= " \n"; $content_seite.= " \n"; $content_seite.= " \n"; $content_seite.= " \n"; $content_seite.= "

Shopinfo

\n"; $content_seite.= "
\n"; $content_seite.= "

Shopname: ".getshopname()."


\n"; $content_seite.= "

Shopsystem: PhPepperShop - phpeppershopbyglarotech

\n"; $content_seite.= "

Shopversion: ".getshopversion()."


\n"; $content_seite.= ' '.£('phpeppershop_informationen').":
\n"; $content_seite.= " Webshop Software PhPepperShop
\n"; $content_seite.= " Shop entwickelt von Glarotech, Shophosting und E-Commerce
\n"; $content_seite.= "
\n"; // ---------------------------------------------------------------------------------- // Ausgabe taetigen $mainpage->show_pre_content(); echo $content_seite; $mainpage->show_post_content(); } // end of if darstellen = shopinfo // End of file ---------------------------------------------------- ?>