Blame | Letzte Änderung | Log anzeigen | RSS feed
<?php//$Id: artikelstamm.php 3931 2011-09-16 08:17:57Z tiefland $/*** @author Patirck Lautsch <lautsch@weban.de>* @copyright 2008 Webagentur Niewerth* @package Content-management* @version $Rev: 3931 $* @license propietary* @filesource**//**** @author Patirck Lautsch <lautsch@weban.de>* @copyright 2008 Webagentur Niewerth* @package Content-management*/require_once "../Online-Shop/connect2.php";require_once 'HTML_TreeMenu/TreeMenu.php';// Smarty Initalisierungdefine( "SMARTY_DIR", "/usr/share/php/smarty/libs/" );require_once "Weban_Smarty.class.php";$GLOBALS["ui"] = new Weban_Smarty();$GLOBALS["ui"]->conifg_dir = SMARTY_DIR;$GLOBALS["ui"]->template_dir = "templates/";$GLOBALS["ui"]->compile_dir = "templates_c";$GLOBALS["ui"]->compile_check = true;// erlaubten Speicher hochsetzen, da sonst das TreeMenu nicht angezeigt wirdini_set("memory_limit","32M");//// ARTIKELSTAMM// Der Artikelstamm soll es den Benutzer ermöglichen,// durch einen Klick auf einen Artikel, diesen in den Warenkorb// der manuellen Bestellerfassung aufzunehmen.//// AUFBAU UND SCHNITTSTELLEN// - Mit jedem Link muss $_GET[action] auf „step3“ gesetzt sein// - Eingefügt wird ein Artikel in dem $artikel_loop// für die spätere Ausgabe im Warenkorb.// ACHTUNG! Anzahl der Elemente von $artikel_loop vorher auslesen,// da vier Elemente mit der selben Loop ID angelegt werden müssen.//- Die ID des jeweiligen Shops ist unter $_SESSION['shop'] gespeichert// Hole Daten aus der Datenbank// Überrpüfe ob der 'database' Eintrag des Shops$sql = "SELECT * FROM pieper_freizeit_de.shops WHERE ID = '" . $_GET['shop'] ."'";$result = mysql_query( $sql ) or die( mysql_errno() . ': ' . mysql_error() .'<hr />' . $sql );$row = mysql_fetch_assoc( $result );$database = $row['database'];// Wenn $database nicht gesetzt ist, übernehme als Wert 'pieper_freizeit_de'if ( empty($database) ){$database = $webs["database"];}//// Hole alle Einträge aus der ausgewählten Shop-DB Tabelle 'directory' und// lege sie nach folgendem Muster ab: $artikelstamm['directory'][loop_zähler]// $artikelstamm['directory'][loop_zähler][id],// $artikelstamm['directory'][loop_zähler][father],// $artikelstamm['directory'][loop_zähler][name]//$sql = "SELECT ID, Father, Name, ArtikelstammFROM $database.directoryWHERE sichtbar = 1ORDER BY Father ASC";$result = mysql_query( $sql ) or die( mysql_errno() . ': ' . mysql_error() .'<hr />' . $sql );for ( $i = 0; $row = mysql_fetch_assoc($result); $i++ ){$artikelstamm['directory'][$i]['id'] = $row['ID'];$artikelstamm['directory'][$i]['father'] = $row['Father'];$artikelstamm['directory'][$i]['name'] = $row['Name'];$artikelstamm['directory'][$i]['stamm'] = $row['Artikelstamm'];}//// Hole alle Einträge aus der ausgewählten Shop-DB Tabelle 'artikel' und// lege sie nach folgendem Muster ab: $artikelstamm['artikel'][loop_zähler]// $artikelstamm['artikel'][loop_zähler][id],// $artikelstamm['artikel'][loop_zähler][father],// $artikelstamm['artikel'][loop_zähler][kurzbezeichnung]//$sql = "SELECT ID, Father, kurzbezeichnung, preis1FROM $database.artikelWHERE Father != -3ORDER BY Father ASC";$result = mysql_query( $sql ) or die( mysql_errno() . ': ' . mysql_error() .'<hr />' . $sql );for ( $i = 0; $row = mysql_fetch_assoc($result); $i++ ){$artikelstamm['artikel'][$i]['id'] = $row['ID'];$artikelstamm['artikel'][$i]['father'] = $row['Father'];$artikelstamm['artikel'][$i]['kurzbezeichnung'] = $row['kurzbezeichnung'];$artikelstamm['artikel'][$i]['preis'] = $row['preis1'];}/** Erstelle Ordnerstruktur für die spätere Ausgabe im PEAR-Modul 'HTML_TreeMenu'* Gehe alle Einträge von $artikelstamm['directory'] durch.* Wenn Father gleich -1 ist,* dann erstelle $ordner[id_aus_directory] = new HTML_TreeNode;* Wenn Father ungleich -1 ist,* dann erstelle $ordner[id_aus_directory] = $ordner[father_aus_directory]->addItem;** Erstelle das Objekt '$menu' aus der Klasse 'HTML_TreeMenu'**/$menu = new HTML_TreeMenu();// Icons definieren$art_icon = 'file_000.gif';for ( $i = 0; $i < count($artikelstamm['directory']); $i++ ){$ordner_id = $artikelstamm['directory'][$i]['id'];$ordner_father = $artikelstamm['directory'][$i]['father'];$text = $artikelstamm['directory'][$i]['name'];/** Sollte $artikelstamm['directory'][$i]['stamm'] auf '1' gesetzt sein,so zeige als Bild einen Artikelstamm an**/if ( $artikelstamm['directory'][$i]['stamm'] == 1 ){$icon = 'artikelstamm.png';$expandedIcon = $icon;}else{$icon = 'ordner_000.gif';$expandedIcon = 'folder-expanded.gif';}if ( $artikelstamm['directory'][$i]['father'] == -1 ){$ordner[$ordner_id] = new HTML_TreeNode( array('text' => $text, 'link' => '','icon' => $icon, 'expandedIcon' => $expandedIcon) );}else{if ( isset($ordner) ){if ( array_key_exists($ordner_father, $ordner) ){$ordner[$ordner_id] = $ordner[$ordner_father]->addItem( new HTML_TreeNode(array('text' => $text, 'link' => '', 'icon' => $icon, 'expandedIcon' => $expandedIcon)) );}}}}for ( $i = 0; $i < count($artikelstamm['artikel']); $i++ ){$artikel_id = $artikelstamm['artikel'][$i]['id'];$artikel_preis = $artikelstamm['artikel'][$i]['preis'];$artikel_father = $artikelstamm['artikel'][$i]['father'];$text = $artikelstamm['artikel'][$i]['kurzbezeichnung'];$text = str_replace( '®', '®', $text );$text = str_replace( '\'', '′', $text );$text = str_replace( '\"', '', $text );if ( array_key_exists($artikel_father, $ordner) ){$artikel[$artikel_id] = $ordner[$artikel_father]->addItem( new HTML_TreeNode(array('text' => "<span class=\"artikel\" onclick=\"addInput('" . $text . "', '" . $artikel_preis ."', '" . $artikel_id . "')\">" . $text . "</span>", 'link' => '', 'icon' =>$art_icon, 'expandedIcon' => $expandedIcon)) );}}foreach ( array_keys($ordner) as $key ){$sql = "SELECT ID FROM $database.directory WHERE Father = -1 AND ID = $key";$result = mysql_query( $sql ) or die( mysql_errno() . ': ' . mysql_error() .'<hr />' . $sql );$row = mysql_fetch_assoc( $result );if ( isset($row['ID']) )$menu->addItem( $ordner[$key] );}$tree = new HTML_TreeMenu_DHTML( $menu, array('images' =>'../images/Online-Shop/directory', 'defaultClass' => 'menuDefault') );$GLOBALS["ui"]->register_object("tree", $tree);$GLOBALS["ui"]->display('artikelstamm.tpl');?>