| 1 |
lars |
1 |
<?php
|
|
|
2 |
|
|
|
3 |
//$Id: artikelstamm.php 3931 2011-09-16 08:17:57Z tiefland $
|
|
|
4 |
/**
|
|
|
5 |
* @author Patirck Lautsch <lautsch@weban.de>
|
|
|
6 |
* @copyright 2008 Webagentur Niewerth
|
|
|
7 |
* @package Content-management
|
|
|
8 |
* @version $Rev: 3931 $
|
|
|
9 |
* @license propietary
|
|
|
10 |
* @filesource
|
|
|
11 |
*
|
|
|
12 |
*/
|
|
|
13 |
|
|
|
14 |
/**
|
|
|
15 |
*
|
|
|
16 |
* @author Patirck Lautsch <lautsch@weban.de>
|
|
|
17 |
* @copyright 2008 Webagentur Niewerth
|
|
|
18 |
* @package Content-management
|
|
|
19 |
*/
|
|
|
20 |
|
|
|
21 |
require_once "../Online-Shop/connect2.php";
|
|
|
22 |
require_once 'HTML_TreeMenu/TreeMenu.php';
|
|
|
23 |
|
|
|
24 |
// Smarty Initalisierung
|
|
|
25 |
define( "SMARTY_DIR", "/usr/share/php/smarty/libs/" );
|
|
|
26 |
require_once "Weban_Smarty.class.php";
|
|
|
27 |
|
|
|
28 |
$GLOBALS["ui"] = new Weban_Smarty();
|
|
|
29 |
$GLOBALS["ui"]->conifg_dir = SMARTY_DIR;
|
|
|
30 |
$GLOBALS["ui"]->template_dir = "templates/";
|
|
|
31 |
$GLOBALS["ui"]->compile_dir = "templates_c";
|
|
|
32 |
$GLOBALS["ui"]->compile_check = true;
|
|
|
33 |
// erlaubten Speicher hochsetzen, da sonst das TreeMenu nicht angezeigt wird
|
|
|
34 |
ini_set("memory_limit","32M");
|
|
|
35 |
|
|
|
36 |
//// ARTIKELSTAMM
|
|
|
37 |
// Der Artikelstamm soll es den Benutzer ermöglichen,
|
|
|
38 |
// durch einen Klick auf einen Artikel, diesen in den Warenkorb
|
|
|
39 |
// der manuellen Bestellerfassung aufzunehmen.
|
|
|
40 |
//
|
|
|
41 |
// AUFBAU UND SCHNITTSTELLEN
|
|
|
42 |
// - Mit jedem Link muss $_GET[action] auf „step3“ gesetzt sein
|
|
|
43 |
// - Eingefügt wird ein Artikel in dem $artikel_loop
|
|
|
44 |
// für die spätere Ausgabe im Warenkorb.
|
|
|
45 |
// ACHTUNG! Anzahl der Elemente von $artikel_loop vorher auslesen,
|
|
|
46 |
// da vier Elemente mit der selben Loop ID angelegt werden müssen.
|
|
|
47 |
//- Die ID des jeweiligen Shops ist unter $_SESSION['shop'] gespeichert
|
|
|
48 |
|
|
|
49 |
// Hole Daten aus der Datenbank
|
|
|
50 |
// Überrpüfe ob der 'database' Eintrag des Shops
|
|
|
51 |
$sql = "SELECT * FROM pieper_freizeit_de.shops WHERE ID = '" . $_GET['shop'] .
|
|
|
52 |
"'";
|
|
|
53 |
$result = mysql_query( $sql ) or die( mysql_errno() . ': ' . mysql_error() .
|
|
|
54 |
'<hr />' . $sql );
|
|
|
55 |
$row = mysql_fetch_assoc( $result );
|
|
|
56 |
$database = $row['database'];
|
|
|
57 |
// Wenn $database nicht gesetzt ist, übernehme als Wert 'pieper_freizeit_de'
|
|
|
58 |
if ( empty($database) )
|
|
|
59 |
{
|
|
|
60 |
$database = $webs["database"];
|
|
|
61 |
}
|
|
|
62 |
//// Hole alle Einträge aus der ausgewählten Shop-DB Tabelle 'directory' und
|
|
|
63 |
// lege sie nach folgendem Muster ab: $artikelstamm['directory'][loop_zähler]
|
|
|
64 |
// $artikelstamm['directory'][loop_zähler][id],
|
|
|
65 |
// $artikelstamm['directory'][loop_zähler][father],
|
|
|
66 |
// $artikelstamm['directory'][loop_zähler][name]
|
|
|
67 |
//
|
|
|
68 |
|
|
|
69 |
$sql = "SELECT ID, Father, Name, Artikelstamm
|
|
|
70 |
FROM $database.directory
|
|
|
71 |
WHERE sichtbar = 1
|
|
|
72 |
ORDER BY Father ASC";
|
|
|
73 |
$result = mysql_query( $sql ) or die( mysql_errno() . ': ' . mysql_error() .
|
|
|
74 |
'<hr />' . $sql );
|
|
|
75 |
|
|
|
76 |
for ( $i = 0; $row = mysql_fetch_assoc($result); $i++ )
|
|
|
77 |
{
|
|
|
78 |
$artikelstamm['directory'][$i]['id'] = $row['ID'];
|
|
|
79 |
$artikelstamm['directory'][$i]['father'] = $row['Father'];
|
|
|
80 |
$artikelstamm['directory'][$i]['name'] = $row['Name'];
|
|
|
81 |
$artikelstamm['directory'][$i]['stamm'] = $row['Artikelstamm'];
|
|
|
82 |
}
|
|
|
83 |
|
|
|
84 |
//// Hole alle Einträge aus der ausgewählten Shop-DB Tabelle 'artikel' und
|
|
|
85 |
// lege sie nach folgendem Muster ab: $artikelstamm['artikel'][loop_zähler]
|
|
|
86 |
// $artikelstamm['artikel'][loop_zähler][id],
|
|
|
87 |
// $artikelstamm['artikel'][loop_zähler][father],
|
|
|
88 |
// $artikelstamm['artikel'][loop_zähler][kurzbezeichnung]
|
|
|
89 |
//
|
|
|
90 |
|
|
|
91 |
$sql = "SELECT ID, Father, kurzbezeichnung, preis1
|
|
|
92 |
FROM $database.artikel
|
|
|
93 |
WHERE Father != -3
|
|
|
94 |
ORDER BY Father ASC";
|
|
|
95 |
|
|
|
96 |
$result = mysql_query( $sql ) or die( mysql_errno() . ': ' . mysql_error() .
|
|
|
97 |
'<hr />' . $sql );
|
|
|
98 |
for ( $i = 0; $row = mysql_fetch_assoc($result); $i++ )
|
|
|
99 |
{
|
|
|
100 |
$artikelstamm['artikel'][$i]['id'] = $row['ID'];
|
|
|
101 |
$artikelstamm['artikel'][$i]['father'] = $row['Father'];
|
|
|
102 |
$artikelstamm['artikel'][$i]['kurzbezeichnung'] = $row['kurzbezeichnung'];
|
|
|
103 |
$artikelstamm['artikel'][$i]['preis'] = $row['preis1'];
|
|
|
104 |
}
|
|
|
105 |
|
|
|
106 |
/** Erstelle Ordnerstruktur für die spätere Ausgabe im PEAR-Modul 'HTML_TreeMenu'
|
|
|
107 |
* Gehe alle Einträge von $artikelstamm['directory'] durch.
|
|
|
108 |
* Wenn Father gleich -1 ist,
|
|
|
109 |
* dann erstelle $ordner[id_aus_directory] = new HTML_TreeNode;
|
|
|
110 |
* Wenn Father ungleich -1 ist,
|
|
|
111 |
* dann erstelle $ordner[id_aus_directory] = $ordner[father_aus_directory]->addItem;
|
|
|
112 |
*
|
|
|
113 |
* Erstelle das Objekt '$menu' aus der Klasse 'HTML_TreeMenu'
|
|
|
114 |
**/
|
|
|
115 |
$menu = new HTML_TreeMenu();
|
|
|
116 |
// Icons definieren
|
|
|
117 |
$art_icon = 'file_000.gif';
|
|
|
118 |
|
|
|
119 |
for ( $i = 0; $i < count($artikelstamm['directory']); $i++ )
|
|
|
120 |
{
|
|
|
121 |
$ordner_id = $artikelstamm['directory'][$i]['id'];
|
|
|
122 |
$ordner_father = $artikelstamm['directory'][$i]['father'];
|
|
|
123 |
$text = $artikelstamm['directory'][$i]['name'];
|
|
|
124 |
|
|
|
125 |
/** Sollte $artikelstamm['directory'][$i]['stamm'] auf '1' gesetzt sein,
|
|
|
126 |
so zeige als Bild einen Artikelstamm an
|
|
|
127 |
**/
|
|
|
128 |
if ( $artikelstamm['directory'][$i]['stamm'] == 1 )
|
|
|
129 |
{
|
|
|
130 |
$icon = 'artikelstamm.png';
|
|
|
131 |
$expandedIcon = $icon;
|
|
|
132 |
}
|
|
|
133 |
else
|
|
|
134 |
{
|
|
|
135 |
$icon = 'ordner_000.gif';
|
|
|
136 |
$expandedIcon = 'folder-expanded.gif';
|
|
|
137 |
}
|
|
|
138 |
|
|
|
139 |
if ( $artikelstamm['directory'][$i]['father'] == -1 )
|
|
|
140 |
{
|
|
|
141 |
$ordner[$ordner_id] = new HTML_TreeNode( array('text' => $text, 'link' => '',
|
|
|
142 |
'icon' => $icon, 'expandedIcon' => $expandedIcon) );
|
|
|
143 |
}
|
|
|
144 |
else
|
|
|
145 |
{
|
|
|
146 |
if ( isset($ordner) )
|
|
|
147 |
{
|
|
|
148 |
if ( array_key_exists($ordner_father, $ordner) )
|
|
|
149 |
{
|
|
|
150 |
$ordner[$ordner_id] = $ordner[$ordner_father]->addItem( new HTML_TreeNode(array
|
|
|
151 |
('text' => $text, 'link' => '', 'icon' => $icon, 'expandedIcon' => $expandedIcon)) );
|
|
|
152 |
}
|
|
|
153 |
}
|
|
|
154 |
}
|
|
|
155 |
|
|
|
156 |
}
|
|
|
157 |
|
|
|
158 |
for ( $i = 0; $i < count($artikelstamm['artikel']); $i++ )
|
|
|
159 |
{
|
|
|
160 |
$artikel_id = $artikelstamm['artikel'][$i]['id'];
|
|
|
161 |
$artikel_preis = $artikelstamm['artikel'][$i]['preis'];
|
|
|
162 |
$artikel_father = $artikelstamm['artikel'][$i]['father'];
|
|
|
163 |
$text = $artikelstamm['artikel'][$i]['kurzbezeichnung'];
|
|
|
164 |
$text = str_replace( '®', '®', $text );
|
|
|
165 |
$text = str_replace( '\'', '′', $text );
|
|
|
166 |
$text = str_replace( '\"', '', $text );
|
|
|
167 |
|
|
|
168 |
if ( array_key_exists($artikel_father, $ordner) )
|
|
|
169 |
{
|
|
|
170 |
|
|
|
171 |
$artikel[$artikel_id] = $ordner[$artikel_father]->addItem( new HTML_TreeNode
|
|
|
172 |
(array('text' => "<span class=\"artikel\" onclick=\"addInput('" . $text . "', '" . $artikel_preis .
|
|
|
173 |
"', '" . $artikel_id . "')\">" . $text . "</span>", 'link' => '', 'icon' =>
|
|
|
174 |
$art_icon, 'expandedIcon' => $expandedIcon)) );
|
|
|
175 |
}
|
|
|
176 |
|
|
|
177 |
}
|
|
|
178 |
|
|
|
179 |
foreach ( array_keys($ordner) as $key )
|
|
|
180 |
{
|
|
|
181 |
$sql = "SELECT ID FROM $database.directory WHERE Father = -1 AND ID = $key";
|
|
|
182 |
$result = mysql_query( $sql ) or die( mysql_errno() . ': ' . mysql_error() .
|
|
|
183 |
'<hr />' . $sql );
|
|
|
184 |
$row = mysql_fetch_assoc( $result );
|
|
|
185 |
if ( isset($row['ID']) )
|
|
|
186 |
$menu->addItem( $ordner[$key] );
|
|
|
187 |
}
|
|
|
188 |
$tree = new HTML_TreeMenu_DHTML( $menu, array('images' =>
|
|
|
189 |
'../images/Online-Shop/directory', 'defaultClass' => 'menuDefault') );
|
|
|
190 |
|
|
|
191 |
$GLOBALS["ui"]->register_object("tree", $tree);
|
|
|
192 |
|
|
|
193 |
$GLOBALS["ui"]->display('artikelstamm.tpl');
|
|
|
194 |
|
|
|
195 |
?>
|
|
|
196 |
|
|
|
197 |
|