Subversion Repositories wpShopGermany4

Rev

Rev 6901 | Rev 7138 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1093 daniel 1
<?php
7094 florian 2
 
1093 daniel 3
	/**
4
	 * Template für die PDF Rechnung
5
	 */
6
 
3560 daniel 7
	require_once WPSG_PATH_LIB.'fpdf/fpdf.php';
8
	require_once WPSG_PATH_LIB.'fpdf/fpdi.php';
5382 daniel 9
	require_once WPSG_PATH_LIB.'wpsg_fpdf.class.php';
7094 florian 10
 
1094 daniel 11
	global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top;
7094 florian 12
 
1093 daniel 13
	// Positionierung der Absenderadresszeile
14
	$absender_left				= 25;
15
	$absender_top				= 50;
7094 florian 16
 
1093 daniel 17
	// Positionierung der Zieladress
7094 florian 18
	$adress_left 				= 25;
1093 daniel 19
	$adress_top					= 55;
7094 florian 20
 
5934 hartmut 21
	// Positionierung des Rechnungskopfes
1093 daniel 22
	$rdata_left					= 25;
23
	$rdata_top					= 90;
7094 florian 24
 
1093 daniel 25
	// Positionierung der Produktdaten
26
	$prod_left					= 25;
27
	$prod_top					= 105;
28
 
29
	// Anzahl an Produkten pro Seite
3828 thomas 30
	$prod_break					= $this->get_option('wpsg_rechnungen_pdfperpage');
7094 florian 31
 
2301 daniel 32
	// Damit die Steuer bei der Kleinunternehmerregelung nicht angezeigt wird leer ich den Array sicherheitshalber
33
	if ($this->get_option('wpsg_kleinunternehmer') == '1')
34
	{
7094 florian 35
 
2301 daniel 36
		unset($this->view['basket']['mwst']);
7094 florian 37
 
2301 daniel 38
	}
7094 florian 39
 
1228 daniel 40
	if (!function_exists('AddRechnungPage'))
1093 daniel 41
	{
7094 florian 42
 
1228 daniel 43
		function AddRechnungPage($shop, $pdf)
1093 daniel 44
		{
7094 florian 45
 
1228 daniel 46
			global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top;
7094 florian 47
 
1228 daniel 48
			$pdf->AddPage();
7094 florian 49
 
5934 hartmut 50
			if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf"))
1228 daniel 51
			{
7094 florian 52
 
53
				$pagecount = $pdf->setSourceFile($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf");
54
				$tplidx = $pdf->importPage(1, '/MediaBox');
55
				$pdf->useTemplate($tplidx, 0, 0, 210);
56
 
1228 daniel 57
			}
5934 hartmut 58
			if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg"))
1228 daniel 59
			{
7094 florian 60
				//$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg", 0, 0, 210, 297, 'jpg');
1228 daniel 61
			}
7094 florian 62
 
63
 
5934 hartmut 64
			if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg"))
1228 daniel 65
			{
7094 florian 66
 
5934 hartmut 67
				list($width, $height, $type, $attr) = getimagesize($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg");
7094 florian 68
 
69
				// Umrechnung von Inch zu Pixel
70
				$wPix = (25.4 * (int)$width) / 96;
71
				$hPix = (25.4 * (int)$height) / 96;
72
 
73
				$leftPos = 110 - $wPix;
74
				$midPos = $wPix * 2.6 - $width / 2;
75
				$rightPos = 210 - $wPix;
76
 
77
				$abscissa = $rightPos;
78
				$ordinate = 0;
79
 
80
				$transparency = str_replace("%", "", $shop->get_option('wpsg_rechnungen_logo_transparency'));
81
				if($transparency !== "100") $transparency = str_replace(array("0", "00"), "", $transparency);
82
 
83
				$alpha = 1;
84
				if(!is_null($transparency) && $transparency !== "100") $alpha = "0.$transparency";
85
				if(!is_null($transparency) && $transparency === "100") $alpha = $transparency;
86
 
87
				$logo_pos = $shop->get_option('wpsg_rechnungen_logo_position');
88
 
89
				if(isset($logo_pos) && $logo_pos === "left") { $abscissa = $leftPos; $ordinate = 20; }
90
				if(isset($logo_pos) && $logo_pos === "center") { $abscissa = $midPos; $ordinate = 20; }
91
				if(isset($logo_pos) && $logo_pos === "right") { $abscissa = $rightPos; }
92
 
93
				$pdf->SetAlpha($alpha);
94
				$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg", $abscissa, $ordinate, $wPix, $hPix);
95
				$pdf->SetAlpha(1);
96
 
1228 daniel 97
			}
7094 florian 98
 
1228 daniel 99
			// Absenderadresszeile (Wird in der Konfiguration hinterlegt)
100
			$pdf->SetFont('Arial', '', 6);
7094 florian 101
			$pdf->Text($absender_left, $absender_top, $shop->replaceUniversalPlatzhalter(__($shop->get_option("wpsg_rechnungen_adresszeile"), 'wpsg'), $shop->view['data']['id']));
102
 
5934 hartmut 103
			if (wpsg_getStr($shop->view['kunde']['kuerzel']) != "") $shop->view['kunde']['kuerzel'] = $shop->view['kunde']['kuerzel'].'-';
7094 florian 104
 
1228 daniel 105
			// Adresse des Kunden
7094 florian 106
			$pdf->SetFont('Arial', '', 12);
1228 daniel 107
			$pdf->Text($adress_left, $adress_top, $shop->view['kunde']['firma']);
108
			$pdf->Text($adress_left, $adress_top + 5, $shop->view['kunde']['vname'].' '.$shop->view['kunde']['name']);
5934 hartmut 109
			$pdf->Text($adress_left, $adress_top + 10, $shop->view['kunde']['strasse'].' '.wpsg_getStr($shop->view['kunde']['hausnr']));
3742 daniel 110
			$pdf->Text($adress_left, $adress_top + 15, $shop->view['kunde']['plz'].' '.$shop->view['kunde']['ort']);
6798 hartmut 111
			if ($shop->get_option("wpsg_mod_rechnungen_hideCountry") == '0')
7094 florian 112
				$pdf->Text($adress_left, $adress_top + 20, strtoupper($shop->view['oOrder']->getInvoiceCountryName()));
113
 
114
			// Rechnungsdaten
1228 daniel 115
			$pdf->SetFont('Arial', 'B', 16);
116
			$pdf->Text($rdata_left, $rdata_top, $shop->view['title']);
117
			$pdf->SetFont('Arial', 'B', 9);
118
			$pdf->Text($rdata_left, $rdata_top + 6, $shop->view['rnr']);
119
			$pdf->SetFont('Arial', '', 9);
7094 florian 120
 
1228 daniel 121
			if (isset($shop->view['faelligkeitdatum']))
122
			{
7094 florian 123
 
1228 daniel 124
				$pdf->Text($rdata_left + 35, $rdata_top, __("Fällig am", "wpsg"));
7094 florian 125
				$pdf->Text($rdata_left + 35, $rdata_top + 6, (int)$shop->view['faelligkeitdatum']);
126
 
1228 daniel 127
			}
7094 florian 128
 
1228 daniel 129
			if (isset($shop->view['payment']))
130
			{
7094 florian 131
 
4837 daniel 132
				$pdf->Text($rdata_left + 58, $rdata_top, __("Zahlungsbedingungen", "wpsg"));
133
				$pdf->Text($rdata_left + 58, $rdata_top + 6, $shop->view['payment']);
7094 florian 134
 
1228 daniel 135
			}
7094 florian 136
 
4393 daniel 137
			$pdf->Text($rdata_left + 105, $rdata_top, __("Kunden-Nr", "wpsg"));
138
			$pdf->Text($rdata_left + 105, $rdata_top + 6, (($shop->view['kunde']['knr'] != '')?$shop->view['kunde']['knr']:$shop->view['kunde']['id']));
7094 florian 139
 
4393 daniel 140
			$pdf->Text($rdata_left + 135, $rdata_top, __("Best. Nr.", "wpsg"));
141
			$pdf->Text($rdata_left + 135, $rdata_top + 6, ((trim($shop->view['data']['onr']) != '')?$shop->view['data']['onr']:$shop->view['data']['id']));
7094 florian 142
 
143
			$pdf->Text($rdata_left + 155, $rdata_top, __("Datum", "wpsg"));
4393 daniel 144
			$pdf->Text($rdata_left + 155, $rdata_top + 6, $shop->view['rDatum']);
7094 florian 145
 
3506 daniel 146
			if ($shop->view['oOrder']->isInnerEu())
1093 daniel 147
			{
7094 florian 148
 
149
				$pdf->SetFont('Arial', '', 9);
1228 daniel 150
				$pdf->Text($adress_left, $rdata_top + 11.5, __("Innergemeinschaftliche Lieferung.", "wpsg"));
7094 florian 151
 
1093 daniel 152
			}
7094 florian 153
 
1228 daniel 154
			// Benutzerdefinierte Felder
3748 daniel 155
			$arTexte = $shop->callMod('wpsg_mod_rechnungen', 'getRechnungstexte', array($shop->view['data']['id']));
7094 florian 156
 
1228 daniel 157
			foreach ((array)$arTexte as $text)
158
			{
7094 florian 159
 
1228 daniel 160
				if (isset($text['aktiv']) && $text['aktiv'] == 1)
161
				{
7094 florian 162
 
1228 daniel 163
					$pdf->SetFont('Arial', 'B', ((intval($text['fontsize']) > 0)?intval($text['fontsize']):10));
5382 daniel 164
					$pdf->wpsg_SetTextColor($text['color']);
7094 florian 165
					$pdf->wpsg_MultiCell($text['x'], $text['y'], 5, $text['text']);
5382 daniel 166
					$pdf->wpsg_SetTextColor("#000000");
7094 florian 167
 
1228 daniel 168
				}
7094 florian 169
 
1228 daniel 170
			}
7094 florian 171
 
1093 daniel 172
		}
7094 florian 173
 
1093 daniel 174
	}
1242 david 175
	//wpsg_debug($this->view); die();
7094 florian 176
	$pdf = new wpsg_fpdf();
1093 daniel 177
	$pdf->SetAutoPageBreak(true, 5);
178
	AddRechnungPage($this, $pdf);
7094 florian 179
 
1093 daniel 180
	$summe = 0;
7094 florian 181
 
1093 daniel 182
	$bKopf = false; $pnr = 1; $offset = 0; $count = 0;
183
	foreach ($this->view['basket']['produkte'] as $p)
184
	{
7094 florian 185
 
1093 daniel 186
		if (!$bKopf)
187
		{
188
 
189
			$pdf->SetFont('Arial', 'B', 9);
190
			$pdf->setXY($prod_left, $prod_top);
191
			$pdf->Cell(10, 8, __("Nr.", "wpsg"), 1, 0, 'C');
192
 
193
			$pdf->setXY($prod_left + 10, $prod_top);
1157 daniel 194
			$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, "Name", 1, 0, 'L');
7094 florian 195
 
1157 daniel 196
			if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1093 daniel 197
			{
7094 florian 198
 
1093 daniel 199
				$pdf->setXY($prod_left + 97, $prod_top);
3024 daniel 200
				$pdf->Cell(15, 8, __("MwSt.", "wpsg"), 1, 0, 'C');
7094 florian 201
 
1093 daniel 202
			}
7094 florian 203
 
1093 daniel 204
			$pdf->setXY($prod_left + 112, $prod_top);
205
			$pdf->Cell(15, 8, __("Menge", "wpsg"), 1, 0, 'C');
7094 florian 206
 
1093 daniel 207
			$pdf->setXY($prod_left + 127, $prod_top);
208
			$pdf->Cell(25, 8, __("Einzelpreis", "wpsg"), 1, 0, 'R');
7094 florian 209
 
1093 daniel 210
			$pdf->setXY($prod_left + 152, $prod_top);
211
			$pdf->Cell(25, 8, __("Gesamtpreis", "wpsg"), 1, 0, 'R');
7094 florian 212
 
213
			$offset = 8;
1093 daniel 214
			$bKopf = true;
7094 florian 215
 
1093 daniel 216
		}
7094 florian 217
 
1093 daniel 218
		$pdf->SetFont('Arial', '', 9);
219
		$pdf->setXY($prod_left, $prod_top + $offset);
7094 florian 220
 
6751 daniel 221
		if ($this->get_option('wpsg_mod_rechnungen_anr') == '1')
3028 daniel 222
		{
7094 florian 223
 
6751 daniel 224
			$pdf->Cell(10, 8,  $p['anr'], 0, 0, 'C');
7094 florian 225
 
3028 daniel 226
		}
227
		else
228
		{
7094 florian 229
 
3028 daniel 230
			$pdf->Cell(10, 8, $pnr.".", 0, 0, 'C');
7094 florian 231
 
3028 daniel 232
		}
1093 daniel 233
 
5630 thomas 234
		/* Wenn Detailname vorhanden, wird der Detailname auf Rechnung verwendet */
4909 thomas 235
		$produkt_text = $this->getProductName($this->getProduktID($p['id']), true);
7094 florian 236
 
5630 thomas 237
		/* Falls Detailname vorhanden, wird jetzt der Produktname verwendet */
238
		/* $produkt_text = $this->getProductName($this->getProduktID($p['id']), false); */
7094 florian 239
 
1093 daniel 240
		$produktBeschreibung = trim(strip_tags($p['beschreibung']));
7094 florian 241
 
1093 daniel 242
		if ($this->isOtherLang())
7094 florian 243
		{
244
 
5921 daniel 245
			$trans_db = $this->db->fetchRow("SELECT * FROM `".WPSG_TBL_PRODUCTS."` WHERE `lang_parent` = '".wpsg_q($this->getProduktID($p['id']))."' AND `lang_code` = '".wpsg_q($this->getCurrentLanguageCode())."'");
7094 florian 246
 
1093 daniel 247
			if (is_array($trans_db) && sizeof($trans_db) > 0)
248
			{
7094 florian 249
 
1093 daniel 250
				$produkt_text = $trans_db['name'];
1671 daniel 251
				$produktBeschreibung = trim(strip_tags($trans_db['beschreibung']));
7094 florian 252
 
1093 daniel 253
			}
7094 florian 254
 
1093 daniel 255
		}
7094 florian 256
 
1093 daniel 257
		$height = 0; // Höhe der Zeile für den Rahmen
7094 florian 258
 
1093 daniel 259
		$pdf->setXY($prod_left + 10, $prod_top + $offset);
7094 florian 260
 
1671 daniel 261
		// Produktvariablen
262
		if ($this->hasMod('wpsg_mod_productvars') && $this->get_option("wpsg_mod_rechnungen_showpv") == "1")
1093 daniel 263
		{
7094 florian 264
 
4093 daniel 265
			$arPV = $this->callMod('wpsg_mod_productvars', 'getAllProductVarValues', array($this->view['data']['id'], $p['product_index']));
7094 florian 266
 
3709 daniel 267
			if (wpsg_isSizedArray($arPV))
1093 daniel 268
			{
7094 florian 269
 
270
				foreach ($arPV as $pv)
3709 daniel 271
				{
7094 florian 272
 
3709 daniel 273
					$produkt_text .= "\r\n".$pv['name'].': '.$pv['value'];
274
					$height += 5;
7094 florian 275
 
3709 daniel 276
				}
7094 florian 277
 
3709 daniel 278
			}
7094 florian 279
 
1093 daniel 280
		}
1678 daniel 281
 
7094 florian 282
		if ($this->get_option('wpsg_mod_rechnungen_anr') === '2')
283
		{
6751 daniel 284
 
7094 florian 285
			$anr = $this->getProductAnr($p['productkey']);
286
			$produkt_text .= "\r\n".wpsg_translate(__('Artikelnummer: #1#', 'wpsg'), $anr);
6751 daniel 287
 
7094 florian 288
		}
6751 daniel 289
 
1678 daniel 290
		$produkt_text_cell_width = 102;
291
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
292
		{
7094 florian 293
			$produkt_text_cell_width = 87;
1678 daniel 294
		}
7094 florian 295
 
1093 daniel 296
		$produkt_text_width = $pdf->GetStringWidth($produkt_text);
1678 daniel 297
		//$produkt_text_cell_width = (($this->arMwSt == "-1")?87:102);
7094 florian 298
 
1671 daniel 299
		$height += 5 * ceil($produkt_text_width / $produkt_text_cell_width) + 3;
7094 florian 300
 
1678 daniel 301
		$height_y = $pdf->getY();
5382 daniel 302
		$height = 2 + $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $offset + 1.5, 5, $produkt_text, 0, 'L', 0, $produkt_text_cell_width);
7094 florian 303
 
1678 daniel 304
		//$height += 3 + 5 + $pdf->getY() - $height_y;
1093 daniel 305
		//$pdf->Cell((($this->arMwSt == "-1")?102:87), 8, $produkt_text, 0, 0, 'L');
306
 
1157 daniel 307
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1093 daniel 308
		{
7094 florian 309
 
310
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
3024 daniel 311
			$pdf->Cell(15, 8, (($this->view['basket']['noMwSt'] == '1')?'0.00 %':wpsg_ff($p['mwst_value'], '%')), 0, 0, 'C');
7094 florian 312
 
1093 daniel 313
		}
7094 florian 314
 
1093 daniel 315
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
316
		$pdf->Cell(15, 8, $p['menge'], 0, 0, 'C');
7094 florian 317
 
5934 hartmut 318
		if (wpsg_ShopController::get_option('wpsg_preisangaben') == WPSG_NETTO)
319
		{
320
			$preis = $p['preis_netto'];
7094 florian 321
 
5934 hartmut 322
			//TODO
323
		}
324
		else
325
		{
326
			$preis = $p['preis_brutto'];
327
		}
7094 florian 328
 
1093 daniel 329
		$pdf->setXY($prod_left + 127, $prod_top + $offset);
330
		$pdf->Cell(25, 8, wpsg_ff($preis, $this->get_option('wpsg_currency')), 0, 0, 'R');
7094 florian 331
 
1093 daniel 332
		$pdf->setXY($prod_left + 152, $prod_top + $offset);
7094 florian 333
		$pdf->Cell(25, 8, wpsg_ff($preis * $p['menge'], $this->get_option('wpsg_currency')), 0, 0, 'R');
1093 daniel 334
 
335
		/**
336
		 * Produktbeschreibung anzeigen Ja/Nein
337
		 */
338
		$pBeschreibungHeight = 0;
339
		if ($this->get_option("wpsg_rechnungen_pbeschreibung") == "1" && trim(strip_tags($p['beschreibung'])) != '')
340
		{
7094 florian 341
 
342
			$produktBeschreibung = nl2br($produktBeschreibung);
1237 daniel 343
			preg_match_all('/\<br \/\>/', $produktBeschreibung, $treffer);
344
			$produktBeschreibung = strip_tags($produktBeschreibung);
7094 florian 345
 
346
			$pBeschreibungWidth = $pdf->getStringWidth($produktBeschreibung);
1237 daniel 347
			$pBeschreibungHeight = 5 * (ceil($pBeschreibungWidth / $produkt_text_cell_width) + @sizeof($treffer[0]));
7094 florian 348
 
1093 daniel 349
			$pdf->SetFont('Arial', 'I', 9);
7094 florian 350
 
1678 daniel 351
			$cellY = $pdf->getY();
7094 florian 352
			$pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 1, 5, $produktBeschreibung, 0, 'L', 0, $produkt_text_cell_width);
1678 daniel 353
			$pBeschreibungHeight = $pdf->getY() - $cellY - $height + 1;
1093 daniel 354
			$pdf->SetFont('Arial', '', 9);
7094 florian 355
 
356
		}
357
 
1093 daniel 358
		$height += $pBeschreibungHeight;
5765 thomas 359
 
360
		/**
361
		 * Produktattribute ?
362
		 */
363
		if ($this->get_option('wpsg_rechnungen_produktattribute') == '1')
364
		{
7094 florian 365
 
5765 thomas 366
			$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getProductAttributeByProductId', array($this->getProduktId($p['id'])));
7094 florian 367
 
5765 thomas 368
			foreach ($attributeInfo as $pa)
369
			{
7094 florian 370
 
5765 thomas 371
				$pa_text = $pa['name'].': '.$pa['value'];
372
				$height += $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 0.5, 5, $pa_text, 0, 'L', 0, $produkt_text_cell_width);
7094 florian 373
 
5765 thomas 374
			}
7094 florian 375
		}
376
 
1125 daniel 377
		/**
7094 florian 378
		 * Variante ?
1125 daniel 379
		 */
6165 hartmut 380
		if (preg_match('/pv_(.*)/', $p['productkey']))
1125 daniel 381
		{
7094 florian 382
 
6165 hartmut 383
			$variInfo = $this->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', array($p['productkey']));
1125 daniel 384
 
7094 florian 385
			$height += $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 0.5, 5, wpsg_translate(__('Variante: #1#', 'wpsg'), $variInfo['key']), 0, 'L', 0, $produkt_text_cell_width);
386
 
2877 daniel 387
			//$height += 5;
7094 florian 388
 
1125 daniel 389
		}
7094 florian 390
 
5046 daniel 391
		if ($this->hasMod('wpsg_mod_deliverynote'))
392
		{
7094 florian 393
 
5046 daniel 394
			$arDN_order = $this->callMod('wpsg_mod_deliverynote', 'loadDeliveryNotesFromOrder', array($this->view['data']['id']));
7094 florian 395
 
5046 daniel 396
			if (sizeof($arDN_order) > 1)
397
			{
7094 florian 398
 
399
				$deliveryTimeProduct = $this->callMod('wpsg_mod_deliverynote', 'getProductDeliveryTime', array($this->view['data']['id'], $p['product_index']));
400
 
5046 daniel 401
				if ($deliveryTimeProduct !== false)
402
				{
7094 florian 403
 
5382 daniel 404
					$height += $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 0.5, 5, wpsg_translate(__('Lieferdatum: #1#', 'wpsg'), date('d.m.Y', $deliveryTimeProduct)), 0, 'L', 0, $produkt_text_cell_width);
7094 florian 405
 
5046 daniel 406
				}
7094 florian 407
 
5046 daniel 408
			}
7094 florian 409
 
5046 daniel 410
		}
7094 florian 411
 
1093 daniel 412
		// Jetzt die Rahmen zeichnen
413
		$pdf->Rect($prod_left, $prod_top + $offset, 10, $height);
7094 florian 414
 
1157 daniel 415
		$pdf->Rect($prod_left + 10, $prod_top + $offset, ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), $height);
7094 florian 416
 
1157 daniel 417
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1093 daniel 418
		{
7094 florian 419
 
1093 daniel 420
			$pdf->Rect($prod_left + 97, $prod_top + $offset, 15, $height);
7094 florian 421
 
1093 daniel 422
		}
7094 florian 423
 
1093 daniel 424
		$pdf->Rect($prod_left + 112, $prod_top + $offset, 15, $height);
425
		$pdf->Rect($prod_left + 127, $prod_top + $offset, 25, $height);
426
		$pdf->Rect($prod_left + 152, $prod_top + $offset, 25, $height);
7094 florian 427
 
1093 daniel 428
		$offset += $height;
7094 florian 429
 
1093 daniel 430
		$pnr ++;
431
		$count ++;
7094 florian 432
 
1093 daniel 433
		$summe += $p['price'] * $p['menge'];
7094 florian 434
 
435
		if ($pdf->getY() > 220 || ($count >= $prod_break && sizeof($this->view['basket']['produkte']) > ($pnr - 1)))
1093 daniel 436
		{
7094 florian 437
 
1093 daniel 438
			AddRechnungPage($this, $pdf);
439
			$bKopf = false; $offset = 0; $count = 0;
7094 florian 440
 
1093 daniel 441
		}
7094 florian 442
 
1094 daniel 443
	} // produkte
7094 florian 444
 
1633 daniel 445
	// Gutschein
5934 hartmut 446
	if ((isset($this->view['basket']['gs'])) && ($this->view['basket']['gs_value'] > 0))
1633 daniel 447
	{
7094 florian 448
 
1633 daniel 449
		$pdf->SetFont('Arial', '', 9);
450
		$pdf->setXY($prod_left, $prod_top + $offset);
451
		$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
452
 
453
		$pdf->setXY($prod_left + 10, $prod_top + $offset);
454
		$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, wpsg_translate(__('Gutschein (#1#)', 'wpsg'), $this->view['basket']['gs']['code']), 1, 0, 'L');
7094 florian 455
 
1633 daniel 456
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
457
		{
7094 florian 458
 
3024 daniel 459
			$mwst = __('anteilig', 'wpsg');
7094 florian 460
 
1633 daniel 461
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
3024 daniel 462
			$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
7094 florian 463
 
1633 daniel 464
		}
7094 florian 465
 
1633 daniel 466
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
7094 florian 467
		$pdf->Cell(15, 8, '1', 1, 0, 'C');
468
 
3024 daniel 469
		/*
1633 daniel 470
		if ($this->view['basket']['gs']['calc'] == 'w')
471
		{
472
 
473
			$gs_value_einzel = '-'.wpsg_ff($this->view['basket']['gs']['value'], $this->get_option('wpsg_currency'));
474
			$gs_value_gesamt = '-'.wpsg_ff($this->view['basket']['gs']['value'], $this->get_option('wpsg_currency'));
475
 
476
		}
477
		else if ($this->view['basket']['gs']['calc'] == 'p')
478
		{
479
 
480
			$gs_value_einzel = '-'.wpsg_ff($this->view['basket']['gs']['value'], '%');
481
			$gs_value_gesamt = '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
482
 
483
		}
3024 daniel 484
		*/
7094 florian 485
 
3024 daniel 486
		$gs_value_einzel = '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
487
		$gs_value_gesamt = '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
7094 florian 488
 
1633 daniel 489
		$pdf->setXY($prod_left + 127, $prod_top + $offset);
490
		$pdf->Cell(25, 8, $gs_value_einzel, 1, 0, 'R');
7094 florian 491
 
1633 daniel 492
		$pdf->setXY($prod_left + 152, $prod_top + $offset);
493
		$pdf->Cell(25, 8, $gs_value_gesamt, 1, 0, 'R');
7094 florian 494
 
495
		$offset += 8;
496
 
497
	}
498
 
1094 daniel 499
	// Versandkosten
3409 daniel 500
	if ($this->view['basket']['sum']['preis_shipping'] != '' && $this->view['basket']['sum']['preis_shipping'] != 0)
1094 daniel 501
	{
7094 florian 502
 
1094 daniel 503
		$pdf->SetFont('Arial', '', 9);
504
		$pdf->setXY($prod_left, $prod_top + $offset);
505
		$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
506
 
507
		$pdf->setXY($prod_left + 10, $prod_top + $offset);
5674 daniel 508
		$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, wpsg_translate(__('Versandkosten "#1#"', 'wpsg'), $this->view['oOrder']->getShippingLabel()), 1, 0, 'L');
7094 florian 509
 
1157 daniel 510
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1094 daniel 511
		{
7094 florian 512
 
1165 daniel 513
			if ($this->arShipping[$this->view['data']['type_shipping']]['mwst_null'] == '1' && $this->view['basket']['noMwSt'] == '1')
514
			{
7094 florian 515
 
1165 daniel 516
				$mwst = 0;
7094 florian 517
 
1165 daniel 518
			}
519
			else
520
			{
7094 florian 521
 
4301 daniel 522
				if (isset($this->view['basket']['shipping']['tax_rata']) && $this->view['basket']['shipping']['tax_rata'] === true)
4121 daniel 523
				{
7094 florian 524
 
4121 daniel 525
					$mwst = __('anteilig', 'wpsg');
7094 florian 526
 
4121 daniel 527
				}
528
				else
529
				{
7094 florian 530
 
4121 daniel 531
					$mwst = wpsg_ff($this->arShipping[$this->view['basket']['checkout']['shipping']]['mwst_value'], '%');
6843 hartmut 532
					$mwst = wpsg_ff($this->view['basket']['shipping']['tax_value'], '%');
7094 florian 533
 
4121 daniel 534
				}
7094 florian 535
 
4121 daniel 536
				/*
1416 daniel 537
				if ($this->arShipping[$this->view['data']['type_shipping']]['mwst'] == '0')
538
				{
539
 
3024 daniel 540
					$mwst = __('anteilig', 'wpsg');
1416 daniel 541
 
542
				}
543
				else
544
				{
545
 
546
					$mwst = wpsg_ff($this->arShipping[$this->view['data']['type_shipping']]['mwst_value'], '%');
547
 
548
				}
4121 daniel 549
				*/
7094 florian 550
 
1165 daniel 551
			}
7094 florian 552
 
1094 daniel 553
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
3024 daniel 554
			$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
7094 florian 555
 
1094 daniel 556
		}
7094 florian 557
 
1094 daniel 558
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
7094 florian 559
		$pdf->Cell(15, 8, '1', 1, 0, 'C');
560
 
1094 daniel 561
		$pdf->setXY($prod_left + 127, $prod_top + $offset);
1633 daniel 562
		$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_shipping'], $this->get_option('wpsg_currency')), 1, 0, 'R');
7094 florian 563
 
1094 daniel 564
		$pdf->setXY($prod_left + 152, $prod_top + $offset);
1633 daniel 565
		$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_shipping'], $this->get_option('wpsg_currency')), 1, 0, 'R');
7094 florian 566
 
1094 daniel 567
		$offset += 8;
4132 daniel 568
 
569
		// Zusammengesetzte Versandarten darstellen
4291 daniel 570
		/*
4132 daniel 571
		if (wpsg_isSizedArray($this->view['basket']['shipping']['methods'])) {
1094 daniel 572
 
4132 daniel 573
			foreach ($this->view['basket']['shipping']['methods'] as $shipping) {
574
 
575
				$pdf->SetFont('Arial', '', 9);
576
				$pdf->setXY($prod_left, $prod_top + $offset);
577
				$pdf->Cell(10, 8, '', 1, 0, 'C'); $pnr ++;
578
 
579
				$pdf->setXY($prod_left + 10, $prod_top + $offset);
580
				$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $this->getShippingName($shipping), 1, 0, 'L');
581
 
582
				if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
583
				{
584
 
585
					if ($this->view['basket']['shipping'][$shipping]['tax_rata'] == 1) { $mwst = __('Anteilig', 'wpsg'); }
586
					else { $mwst = wpsg_ff($this->view['basket']['shipping'][$shipping]['mwst'], '%'); }
587
 
588
					$pdf->setXY($prod_left + 97, $prod_top + $offset);
589
					$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
590
 
591
				}
592
 
593
				$pdf->setXY($prod_left + 112, $prod_top + $offset);
594
				$pdf->Cell(15, 8, '1', 1, 0, 'C');
595
 
596
				$pdf->setXY($prod_left + 127, $prod_top + $offset);
597
				$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['shipping'][$shipping]['preis_shipping_brutto'], $this->get_option('wpsg_currency')), 1, 0, 'R');
598
 
599
				$pdf->setXY($prod_left + 152, $prod_top + $offset);
600
				$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['shipping'][$shipping]['preis_shipping_brutto'], $this->get_option('wpsg_currency')), 1, 0, 'R');
601
 
602
				$offset += 8;
603
 
604
			}
605
 
606
		}
4291 daniel 607
		*/
7094 florian 608
 
609
 
1093 daniel 610
	}
7094 florian 611
 
1094 daniel 612
	// Zahlungskosten
3409 daniel 613
	if ($this->view['basket']['sum']['preis_payment'] != '' && $this->view['basket']['sum']['preis_payment'] != 0)
1094 daniel 614
	{
7094 florian 615
 
1094 daniel 616
		$pdf->SetFont('Arial', '', 9);
617
		$pdf->setXY($prod_left, $prod_top + $offset);
618
		$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
619
 
620
		$pdf->setXY($prod_left + 10, $prod_top + $offset);
1157 daniel 621
		$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $this->arPayment[$this->view['data']['type_payment']]['name'], 1, 0, 'L');
7094 florian 622
 
1157 daniel 623
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1094 daniel 624
		{
7094 florian 625
 
1165 daniel 626
			if ($this->arPayment[$this->view['data']['type_payment']]['mwst_null'] == '1' && $this->view['basket']['noMwSt'] == '1')
627
			{
628
				$mwst = 0;
629
			}
630
			else
7094 florian 631
			{
632
 
4126 daniel 633
				if (isset($this->view['basket']['payment']['tax_rata']) && $this->view['basket']['payment']['tax_rata'] === true)
634
				{
7094 florian 635
 
4126 daniel 636
					$mwst = __('anteilig', 'wpsg');
7094 florian 637
 
4126 daniel 638
				}
639
				else
640
				{
7094 florian 641
 
4126 daniel 642
					$mwst = wpsg_ff($this->arPayment[$this->view['basket']['checkout']['payment']]['mwst_value'], '%');
7094 florian 643
 
4126 daniel 644
				}
7094 florian 645
 
4126 daniel 646
				/*
1633 daniel 647
				if ($this->arPayment[$this->view['data']['type_payment']]['mwst'] == '0')
648
				{
649
 
3024 daniel 650
					$mwst = __('anteilig', 'wpsg');
1633 daniel 651
 
652
				}
653
				else
654
				{
655
 
656
					$mwst = wpsg_ff($this->arPayment[$this->view['data']['type_payment']]['mwst_value'], '%');
657
 
658
				}
4126 daniel 659
				*/
7094 florian 660
 
1165 daniel 661
			}
7094 florian 662
 
1094 daniel 663
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
3024 daniel 664
			$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
7094 florian 665
 
1094 daniel 666
		}
7094 florian 667
 
1094 daniel 668
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
7094 florian 669
		$pdf->Cell(15, 8, '1', 1, 0, 'C');
670
 
1094 daniel 671
		$pdf->setXY($prod_left + 127, $prod_top + $offset);
672
		$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_payment'], $this->get_option('wpsg_currency')), 1, 0, 'R');
7094 florian 673
 
1094 daniel 674
		$pdf->setXY($prod_left + 152, $prod_top + $offset);
675
		$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_payment'], $this->get_option('wpsg_currency')), 1, 0, 'R');
7094 florian 676
 
1094 daniel 677
		$offset += 8;
7094 florian 678
 
1094 daniel 679
	}
7094 florian 680
 
2759 daniel 681
	// Gebühr
5934 hartmut 682
	if (wpsg_tf(wpsg_getStr($this->view['storno_fee'])) > 0)
2759 daniel 683
	{
7094 florian 684
 
2759 daniel 685
		$pdf->SetFont('Arial', '', 9);
686
		$pdf->setXY($prod_left, $prod_top + $offset);
687
		$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
688
 
4301 daniel 689
		$label = __('Bearbeitungsgebühr', 'wpsg');
690
 
691
		if (strpos($this->view['storno_fee'], '%') !== false) $label .= ' ('.wpsg_ff($this->view['storno_fee'], '%').')';
7094 florian 692
 
2759 daniel 693
		$pdf->setXY($prod_left + 10, $prod_top + $offset);
4301 daniel 694
		$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $label, 1, 0, 'L');
7094 florian 695
 
2759 daniel 696
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
697
		{
7094 florian 698
 
2759 daniel 699
			if ($this->view['basket']['noMwSt'] == '1')
700
			{
701
				$mwst = 0;
702
			}
703
			else
7094 florian 704
			{
705
 
706
 
4301 daniel 707
				$mwst = wpsg_ff($this->view['storno_fee_tax_value'], '%');
7094 florian 708
 
2759 daniel 709
			}
7094 florian 710
 
2759 daniel 711
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
4301 daniel 712
			$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
7094 florian 713
 
2759 daniel 714
		}
7094 florian 715
 
2759 daniel 716
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
7094 florian 717
		$pdf->Cell(15, 8, '1', 1, 0, 'C');
718
 
2759 daniel 719
		$pdf->setXY($prod_left + 127, $prod_top + $offset);
4301 daniel 720
		$pdf->Cell(25, 8, '-'.wpsg_ff($this->view['storno_fee_value'], $this->get_option('wpsg_currency')), 1, 0, 'R');
7094 florian 721
 
2759 daniel 722
		$pdf->setXY($prod_left + 152, $prod_top + $offset);
4301 daniel 723
		$pdf->Cell(25, 8, '-'.wpsg_ff($this->view['storno_fee_value'], $this->get_option('wpsg_currency')), 1, 0, 'R');
7094 florian 724
 
2759 daniel 725
		$offset += 8;
7094 florian 726
 
2759 daniel 727
	}
7094 florian 728
 
1093 daniel 729
	$pdf->SetFont('Arial', '', 9);
7094 florian 730
 
1093 daniel 731
	if ($this->view['kunde']['ustidnr'] != "")
732
	{
733
		$offset += 10;
734
		$pdf->Text($prod_left, $prod_top + $offset, __("Ihre Umsatzsteuer-Identifikationsnummer:", "wpsg"));
735
		$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
736
		$pdf->Cell(37, 8, $this->view['kunde']['ustidnr'], 0, 0, 'R');
737
	}
7094 florian 738
 
1093 daniel 739
	$offset += 10;
3024 daniel 740
	if ($this->get_option('wpsg_kleinunternehmer'))
1093 daniel 741
	{
3024 daniel 742
 
1093 daniel 743
		$pdf->Text($prod_left, $prod_top + $offset, __("Es ergibt sich folgender Gesamtbetrag", "wpsg").':');
3024 daniel 744
		$pdf->Text($prod_left + 100, $prod_top + $offset, __("Summe", "wpsg"));
1093 daniel 745
		$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
3024 daniel 746
		$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'] + $this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
1165 daniel 747
		$offset += 5;
7094 florian 748
 
1093 daniel 749
	}
3024 daniel 750
	else
1093 daniel 751
	{
7094 florian 752
 
3024 daniel 753
		if ($this->view['basket']['noMwSt'] == '1')
1093 daniel 754
		{
7094 florian 755
 
3024 daniel 756
			$pdf->Text($prod_left, $prod_top + $offset, __("Es ergibt sich folgender Gesamtbetrag", "wpsg").':');
757
			$pdf->Text($prod_left + 100, $prod_top + $offset, __("BRUTTOBETRAG", "wpsg"));
758
			$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
759
			$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
760
			$offset += 5;
7094 florian 761
 
3024 daniel 762
			$pdf->Text($prod_left + 100, $prod_top + $offset, __("MwSt. GESAMT", "wpsg"));
763
			$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
764
			$pdf->Cell(37, 8, wpsg_ff(0, $this->get_option('wpsg_currency')), 0, 0, 'R');
7094 florian 765
 
3024 daniel 766
		}
7094 florian 767
		else
3024 daniel 768
		{
7094 florian 769
 
3024 daniel 770
			$pdf->Text($prod_left, $prod_top + $offset, __("Der Gesamtbetrag setzt sich wie folgt zusammen", "wpsg"));
7094 florian 771
 
3024 daniel 772
			$pdf->Text($prod_left + 100, $prod_top + $offset, __("NETTOBETRAG", "wpsg"));
773
			$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
5046 daniel 774
			$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
7094 florian 775
 
3601 daniel 776
			if (sizeof($this->view['basket']['mwst']) >= 1)
1093 daniel 777
			{
7094 florian 778
 
3024 daniel 779
				foreach ($this->view['basket']['mwst'] as $mw)
780
				{
7094 florian 781
 
3024 daniel 782
					$offset += 5;
3382 daniel 783
					$pdf->Text($prod_left + 100, $prod_top + $offset, __("MwSt. ", "wpsg").wpsg_ff($mw['value'], '%'));
3024 daniel 784
					$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
785
					$pdf->Cell(37, 8, wpsg_ff($mw['sum'], $this->get_option('wpsg_currency')), 0, 0, 'R');
7094 florian 786
 
3024 daniel 787
				}
7094 florian 788
 
1093 daniel 789
			}
7094 florian 790
 
3601 daniel 791
			if (sizeof($this->view['basket']['mwst']) > 1)
792
			{
7094 florian 793
 
3601 daniel 794
				$offset += 5;
795
				$pdf->Text($prod_left + 100, $prod_top + $offset, __("MwSt. GESAMT", "wpsg"));
796
				$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
797
				$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'] - $this->view['basket']['sum']['preis_gesamt_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
7094 florian 798
 
3601 daniel 799
			}
7094 florian 800
 
801
		}
802
 
1628 david 803
	}
7094 florian 804
 
1327 daniel 805
	// Rabatt
806
	if ($this->view['basket']['sum']['preis_rabatt'] > 0)
807
	{
7094 florian 808
 
1327 daniel 809
		$offset += 5;
7094 florian 810
 
1327 daniel 811
		$pdf->Text($prod_left + 100, $prod_top + $offset, __("Rabatt", "wpsg"));
812
		$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
3024 daniel 813
		$pdf->Cell(37, 8, '-'.wpsg_ff($this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
7094 florian 814
 
1327 daniel 815
	}
7094 florian 816
 
1330 daniel 817
	$offset += 5;
818
	$pdf->Text($prod_left + 100, $prod_top + $offset, __("SUMME", "wpsg"));
819
	$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
820
	$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
1093 daniel 821
 
822
	if ($this->get_option('wpsg_kleinunternehmer') == '1')
823
	{
7094 florian 824
 
825
		$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset + 5, 5, $this->get_option('wpsg_kleinunternehmer_text'));
1093 daniel 826
		$offset += 15;
7094 florian 827
 
1093 daniel 828
	}
7094 florian 829
 
5046 daniel 830
	if ($this->hasMod('wpsg_mod_deliverynote'))
831
	{
7094 florian 832
 
5046 daniel 833
		$arDN_order = $this->callMod('wpsg_mod_deliverynote', 'loadDeliveryNotesFromOrder', array($this->view['data']['id']));
834
		$delivery_date = $this->callMod('wpsg_mod_deliverynote', 'getDeliveryTime', array($this->view['data']['id']));
7094 florian 835
 
5046 daniel 836
		// Wenn es ein Gesamtlieferdatum gibt und nur einen Lieferschein, dann unter der Bestellung anzeigen
837
		if ($delivery_date !== false && sizeof($arDN_order) == 1)
838
		{
7094 florian 839
 
840
			$offset += 10;
841
 
5382 daniel 842
			$pdf->wpsg_MultiCell($prod_left, $prod_top + $offset, 5, wpsg_translate(__('Lieferung: #1#', 'wpsg'), date('d.m.Y', $delivery_date)));
5046 daniel 843
 
844
			$offset += 5;
7094 florian 845
 
5046 daniel 846
		}
7094 florian 847
 
5046 daniel 848
	}
7094 florian 849
 
1093 daniel 850
	$offset += 5;
7094 florian 851
 
1093 daniel 852
	if ($this->view['fussText'] != "")
853
	{
7094 florian 854
 
5382 daniel 855
		//$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, utf8_encode($this->view['fussText']));
856
		$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $this->view['fussText']);
1093 daniel 857
		$pdf->SetFont('Arial', 'B', 9);
7094 florian 858
		$offset += 10;
859
 
1093 daniel 860
	}
7094 florian 861
 
1093 daniel 862
	$shipping_adress = false;
1610 david 863
 
864
	if ($this->hasMod('wpsg_mod_shippingadress') && $this->callMod('wpsg_mod_shippingadress', 'check_different_shippingadress', array('k_id' => $this->view['data']['k_id'], 'o_id' => $this->view['data']['id'])))
1093 daniel 865
	{
7094 florian 866
 
1093 daniel 867
		$pdf->setFont('Arial', 'B', 9);
868
		$pdf->Text($prod_left, $prod_top + $offset, __("Lieferanschrift", "wpsg").":");
869
		$offset += 5;
7094 florian 870
 
871
		$pdf->setFont('Arial', '', 9);
872
 
1093 daniel 873
		$shipping_adress = "";
1242 david 874
		if ($this->view['data']['shipping_firma'] != "")
1093 daniel 875
		{
1242 david 876
			$shipping_adress .= $this->view['data']['shipping_firma']."\r\n";
1093 daniel 877
		}
1242 david 878
		$shipping_adress .= $this->view['data']['shipping_vname'].' '.$this->view['data']['shipping_name']."\r\n";
879
		$shipping_adress .= $this->view['data']['shipping_strasse']."\r\n";
4545 thomas 880
		//$shipping_adress .= $this->view['data']['shipping_land']['kuerzel'].'-';
7094 florian 881
 
4930 thomas 882
		$shipping_adress .= $this->view['data']['shipping_plz'].' '.$this->view['data']['shipping_ort']."\r\n";
6284 hartmut 883
		$shipping_adress .= $this->view['data']['shipping_land']['name'];
7094 florian 884
 
885
 
1093 daniel 886
		$start = $pdf->getY();
5382 daniel 887
		$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $shipping_adress, 0, 'L', 0, 100);
1093 daniel 888
		$offset += $pdf->getY() - $start;
7094 florian 889
 
1093 daniel 890
		$shipping_adress = true;
7094 florian 891
 
1093 daniel 892
	}
7094 florian 893
 
894
 
1093 daniel 895
	$offset += 5;
7094 florian 896
 
1093 daniel 897
	// Bestellvariablen
1671 daniel 898
	if ($this->hasMod('wpsg_mod_ordervars') && $this->get_option('wpsg_mod_rechnungen_showov') == '1')
1093 daniel 899
	{
7094 florian 900
 
901
		$bvars = @unserialize($this->view['data']['bvars']);
1093 daniel 902
		if (!is_array($bvars)) $bvars = array();
7094 florian 903
 
1093 daniel 904
		$strBVars = "";
905
		foreach ($bvars as $bvars_id => $bvars_value)
906
		{
7094 florian 907
 
5382 daniel 908
			$bvars = $this->db->fetchRow("SELECT * FROM `".wpsg_q(WPSG_TBL_ORDERVARS)."` WHERE `id` = '".wpsg_q($bvars_id)."' ORDER BY `pos` ASC, `id` ASC ");
7094 florian 909
 
1093 daniel 910
			if ($bvars['typ'] == "1") // Auswahl
911
			{
912
				if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
913
			}
914
			else if ($bvars['typ'] == "2") // Texteingabe
915
			{
916
				if (trim($bvars_value) == "") $bvars_value = __("Keine Angabe", "wpsg");
917
			}
918
			else if ($bvars['typ'] == "3") // Checkbox
919
			{
7094 florian 920
				if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
1093 daniel 921
			}
7094 florian 922
 
923
			$bvars_name = $this->callMod('wpsg_mod_ordervars', 'getNameById', array($bvars_id));
924
			$strBVars .= "\r\n".$bvars_name.": ".$bvars_value;
925
 
1093 daniel 926
		}
7094 florian 927
 
928
		$pdf->SetFont('Arial', 'B', 9);
1093 daniel 929
		$pdf->Text($prod_left, $prod_top + $offset, __("Angaben während der Bestellung", "wpsg").":");
930
		$pdf->SetFont('Arial', '', 9);
5382 daniel 931
		$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $strBVars);
7094 florian 932
 
933
	}
934
 
1093 daniel 935
	if (!file_exists($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id']))))
936
	{
7094 florian 937
 
1093 daniel 938
		mkdir($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id'])), 0777, true);
7094 florian 939
 
1093 daniel 940
	}
7094 florian 941
 
4837 daniel 942
	$this->callMods('wpsg_mod_rechnungen_pdf', array(&$pdf, &$this->view['data']['id'], &$this->view['preview'], &$this->view['invoice']));
7094 florian 943
 
1125 daniel 944
	$filename = $this->view['filename'].".pdf";
6901 daniel 945
 
7094 florian 946
	ob_end_clean();
6901 daniel 947
 
948
	if ($this->view['preview']) {
7094 florian 949
 
1093 daniel 950
		$pdf->Output($filename, 'I');
7094 florian 951
 
6901 daniel 952
	} else {
7094 florian 953
 
1093 daniel 954
		$pdf->Output($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id'])).$filename, 'F');
7094 florian 955
 
4841 daniel 956
		// Hier wird der Dateiname an FPD übergeben. Er soll sich aus der Rechnungsnummer ergeben, auch wenn das Dokument über die ID gespeichert ist.
957
		if ($this->view['output'] === true) $pdf->Output($this->view['filename_out'], 'I');
7094 florian 958
 
959
	}
960
 
1093 daniel 961
?>