Subversion Repositories wpShopGermany4

Rev

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

Rev Author Line No. Line
1093 daniel 1
<?php
7243 daniel 2
 
1093 daniel 3
	/**
4
	 * Template für die PDF Rechnung
5
	 */
7243 daniel 6
 
7352 daniel 7
	require_once WPSG_PATH_LIB.'FPDF_1.81/fpdf.php';
8
	require_once WPSG_PATH_LIB.'FPDI_2.2.0/autoload.php';
9
 
5382 daniel 10
	require_once WPSG_PATH_LIB.'wpsg_fpdf.class.php';
7243 daniel 11
 
1094 daniel 12
	global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top;
7243 daniel 13
 
1093 daniel 14
	// Positionierung der Absenderadresszeile
15
	$absender_left				= 25;
16
	$absender_top				= 50;
7243 daniel 17
 
1093 daniel 18
	// Positionierung der Zieladress
7094 florian 19
	$adress_left 				= 25;
1093 daniel 20
	$adress_top					= 55;
7243 daniel 21
 
5934 hartmut 22
	// Positionierung des Rechnungskopfes
1093 daniel 23
	$rdata_left					= 25;
24
	$rdata_top					= 90;
7243 daniel 25
 
1093 daniel 26
	// Positionierung der Produktdaten
27
	$prod_left					= 25;
28
	$prod_top					= 105;
7243 daniel 29
 
1093 daniel 30
	// Anzahl an Produkten pro Seite
3828 thomas 31
	$prod_break					= $this->get_option('wpsg_rechnungen_pdfperpage');
7243 daniel 32
 
2301 daniel 33
	// Damit die Steuer bei der Kleinunternehmerregelung nicht angezeigt wird leer ich den Array sicherheitshalber
34
	if ($this->get_option('wpsg_kleinunternehmer') == '1')
35
	{
7243 daniel 36
 
2301 daniel 37
		unset($this->view['basket']['mwst']);
7243 daniel 38
 
2301 daniel 39
	}
7243 daniel 40
 
1228 daniel 41
	if (!function_exists('AddRechnungPage'))
1093 daniel 42
	{
7243 daniel 43
 
1228 daniel 44
		function AddRechnungPage($shop, $pdf)
1093 daniel 45
		{
7243 daniel 46
 
1228 daniel 47
			global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top;
7243 daniel 48
 
1228 daniel 49
			$pdf->AddPage();
7243 daniel 50
 
7138 daniel 51
			if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf")) {
7243 daniel 52
 
7138 daniel 53
				$pdf->setSourceFile($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf");
7094 florian 54
				$tplidx = $pdf->importPage(1, '/MediaBox');
55
				$pdf->useTemplate($tplidx, 0, 0, 210);
7243 daniel 56
 
7138 daniel 57
			} else if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg")) {
7243 daniel 58
 
7138 daniel 59
				$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg", 0, 0, 210, 297, 'jpg');
60
 
1228 daniel 61
			}
7243 daniel 62
 
63
 
5934 hartmut 64
			if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg"))
1228 daniel 65
			{
7243 daniel 66
 
5934 hartmut 67
				list($width, $height, $type, $attr) = getimagesize($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg");
7243 daniel 68
 
7094 florian 69
				// Umrechnung von Inch zu Pixel
70
				$wPix = (25.4 * (int)$width) / 96;
71
				$hPix = (25.4 * (int)$height) / 96;
7243 daniel 72
 
7094 florian 73
				$leftPos = 110 - $wPix;
74
				$midPos = $wPix * 2.6 - $width / 2;
75
				$rightPos = 210 - $wPix;
7243 daniel 76
 
7094 florian 77
				$abscissa = $rightPos;
78
				$ordinate = 0;
7243 daniel 79
 
7094 florian 80
				$transparency = str_replace("%", "", $shop->get_option('wpsg_rechnungen_logo_transparency'));
81
				if($transparency !== "100") $transparency = str_replace(array("0", "00"), "", $transparency);
7243 daniel 82
 
7094 florian 83
				$alpha = 1;
84
				if(!is_null($transparency) && $transparency !== "100") $alpha = "0.$transparency";
85
				if(!is_null($transparency) && $transparency === "100") $alpha = $transparency;
7243 daniel 86
 
7094 florian 87
				$logo_pos = $shop->get_option('wpsg_rechnungen_logo_position');
7243 daniel 88
 
7094 florian 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; }
7243 daniel 92
 
7094 florian 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);
7243 daniel 96
 
1228 daniel 97
			}
7243 daniel 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']));
7243 daniel 102
 
5934 hartmut 103
			if (wpsg_getStr($shop->view['kunde']['kuerzel']) != "") $shop->view['kunde']['kuerzel'] = $shop->view['kunde']['kuerzel'].'-';
7243 daniel 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']);
7322 daniel 109
			$pdf->Text($adress_left, $adress_top + 10, $shop->view['kunde']['strasse'].' '.wpsg_getStr($shop->view['kunde']['nr']));
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()));
7243 daniel 113
 
7094 florian 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);
7243 daniel 120
 
1228 daniel 121
			if (isset($shop->view['faelligkeitdatum']))
122
			{
7243 daniel 123
 
1228 daniel 124
				$pdf->Text($rdata_left + 35, $rdata_top, __("Fällig am", "wpsg"));
7244 thomas 125
				$pdf->Text($rdata_left + 35, $rdata_top + 6, $shop->view['faelligkeitdatum']);
7243 daniel 126
 
1228 daniel 127
			}
7243 daniel 128
 
1228 daniel 129
			if (isset($shop->view['payment']))
130
			{
7243 daniel 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']);
7243 daniel 134
 
1228 daniel 135
			}
7243 daniel 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']));
7243 daniel 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']));
7243 daniel 142
 
7094 florian 143
			$pdf->Text($rdata_left + 155, $rdata_top, __("Datum", "wpsg"));
4393 daniel 144
			$pdf->Text($rdata_left + 155, $rdata_top + 6, $shop->view['rDatum']);
7243 daniel 145
 
3506 daniel 146
			if ($shop->view['oOrder']->isInnerEu())
1093 daniel 147
			{
7243 daniel 148
 
149
				$pdf->SetFont('Arial', '', 9);
150
				$pdf->Text($adress_left, $rdata_top + 11.5, __("Innergemeinschaftliche Lieferung.", "wpsg"));
151
 
1093 daniel 152
			}
7243 daniel 153
 
1228 daniel 154
			// Benutzerdefinierte Felder
3748 daniel 155
			$arTexte = $shop->callMod('wpsg_mod_rechnungen', 'getRechnungstexte', array($shop->view['data']['id']));
7243 daniel 156
 
1228 daniel 157
			foreach ((array)$arTexte as $text)
158
			{
7243 daniel 159
 
1228 daniel 160
				if (isset($text['aktiv']) && $text['aktiv'] == 1)
161
				{
7243 daniel 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");
7243 daniel 167
 
1228 daniel 168
				}
7243 daniel 169
 
1228 daniel 170
			}
7243 daniel 171
 
1093 daniel 172
		}
7243 daniel 173
 
1093 daniel 174
	}
7138 daniel 175
 
7094 florian 176
	$pdf = new wpsg_fpdf();
1093 daniel 177
	$pdf->SetAutoPageBreak(true, 5);
178
	AddRechnungPage($this, $pdf);
7243 daniel 179
 
1093 daniel 180
	$summe = 0;
7243 daniel 181
 
1093 daniel 182
	$bKopf = false; $pnr = 1; $offset = 0; $count = 0;
183
	foreach ($this->view['basket']['produkte'] as $p)
184
	{
7243 daniel 185
 
1093 daniel 186
		if (!$bKopf)
187
		{
7243 daniel 188
 
1093 daniel 189
			$pdf->SetFont('Arial', 'B', 9);
190
			$pdf->setXY($prod_left, $prod_top);
191
			$pdf->Cell(10, 8, __("Nr.", "wpsg"), 1, 0, 'C');
7243 daniel 192
 
1093 daniel 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');
7243 daniel 195
 
1157 daniel 196
			if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1093 daniel 197
			{
7243 daniel 198
 
1093 daniel 199
				$pdf->setXY($prod_left + 97, $prod_top);
3024 daniel 200
				$pdf->Cell(15, 8, __("MwSt.", "wpsg"), 1, 0, 'C');
7243 daniel 201
 
1093 daniel 202
			}
7243 daniel 203
 
1093 daniel 204
			$pdf->setXY($prod_left + 112, $prod_top);
205
			$pdf->Cell(15, 8, __("Menge", "wpsg"), 1, 0, 'C');
7243 daniel 206
 
1093 daniel 207
			$pdf->setXY($prod_left + 127, $prod_top);
208
			$pdf->Cell(25, 8, __("Einzelpreis", "wpsg"), 1, 0, 'R');
7243 daniel 209
 
1093 daniel 210
			$pdf->setXY($prod_left + 152, $prod_top);
211
			$pdf->Cell(25, 8, __("Gesamtpreis", "wpsg"), 1, 0, 'R');
7243 daniel 212
 
7094 florian 213
			$offset = 8;
1093 daniel 214
			$bKopf = true;
7243 daniel 215
 
1093 daniel 216
		}
7243 daniel 217
 
1093 daniel 218
		$pdf->SetFont('Arial', '', 9);
219
		$pdf->setXY($prod_left, $prod_top + $offset);
7243 daniel 220
 
6751 daniel 221
		if ($this->get_option('wpsg_mod_rechnungen_anr') == '1')
3028 daniel 222
		{
7243 daniel 223
 
6751 daniel 224
			$pdf->Cell(10, 8,  $p['anr'], 0, 0, 'C');
7243 daniel 225
 
3028 daniel 226
		}
227
		else
228
		{
7243 daniel 229
 
3028 daniel 230
			$pdf->Cell(10, 8, $pnr.".", 0, 0, 'C');
7243 daniel 231
 
3028 daniel 232
		}
7243 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);
7243 daniel 236
 
5630 thomas 237
		/* Falls Detailname vorhanden, wird jetzt der Produktname verwendet */
238
		/* $produkt_text = $this->getProductName($this->getProduktID($p['id']), false); */
7243 daniel 239
 
1093 daniel 240
		$produktBeschreibung = trim(strip_tags($p['beschreibung']));
7243 daniel 241
 
1093 daniel 242
		if ($this->isOtherLang())
7094 florian 243
		{
7243 daniel 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())."'");
7243 daniel 246
 
1093 daniel 247
			if (is_array($trans_db) && sizeof($trans_db) > 0)
248
			{
7243 daniel 249
 
1093 daniel 250
				$produkt_text = $trans_db['name'];
1671 daniel 251
				$produktBeschreibung = trim(strip_tags($trans_db['beschreibung']));
7243 daniel 252
 
1093 daniel 253
			}
7243 daniel 254
 
1093 daniel 255
		}
7243 daniel 256
 
1093 daniel 257
		$height = 0; // Höhe der Zeile für den Rahmen
7243 daniel 258
 
1093 daniel 259
		$pdf->setXY($prod_left + 10, $prod_top + $offset);
7243 daniel 260
 
1671 daniel 261
		// Produktvariablen
262
		if ($this->hasMod('wpsg_mod_productvars') && $this->get_option("wpsg_mod_rechnungen_showpv") == "1")
1093 daniel 263
		{
7243 daniel 264
 
4093 daniel 265
			$arPV = $this->callMod('wpsg_mod_productvars', 'getAllProductVarValues', array($this->view['data']['id'], $p['product_index']));
7243 daniel 266
 
3709 daniel 267
			if (wpsg_isSizedArray($arPV))
1093 daniel 268
			{
7243 daniel 269
 
7094 florian 270
				foreach ($arPV as $pv)
3709 daniel 271
				{
7243 daniel 272
 
3709 daniel 273
					$produkt_text .= "\r\n".$pv['name'].': '.$pv['value'];
274
					$height += 5;
7243 daniel 275
 
3709 daniel 276
				}
7243 daniel 277
 
3709 daniel 278
			}
7243 daniel 279
 
1093 daniel 280
		}
7243 daniel 281
 
7094 florian 282
		if ($this->get_option('wpsg_mod_rechnungen_anr') === '2')
283
		{
7243 daniel 284
 
7094 florian 285
			$anr = $this->getProductAnr($p['productkey']);
286
			$produkt_text .= "\r\n".wpsg_translate(__('Artikelnummer: #1#', 'wpsg'), $anr);
7243 daniel 287
 
7094 florian 288
		}
7243 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
		}
7243 daniel 295
 
1093 daniel 296
		$produkt_text_width = $pdf->GetStringWidth($produkt_text);
1678 daniel 297
		//$produkt_text_cell_width = (($this->arMwSt == "-1")?87:102);
7243 daniel 298
 
1671 daniel 299
		$height += 5 * ceil($produkt_text_width / $produkt_text_cell_width) + 3;
7243 daniel 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);
7243 daniel 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');
7243 daniel 306
 
1157 daniel 307
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1093 daniel 308
		{
7243 daniel 309
 
7094 florian 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');
7243 daniel 312
 
1093 daniel 313
		}
7243 daniel 314
 
1093 daniel 315
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
316
		$pdf->Cell(15, 8, $p['menge'], 0, 0, 'C');
7243 daniel 317
 
5934 hartmut 318
		if (wpsg_ShopController::get_option('wpsg_preisangaben') == WPSG_NETTO)
319
		{
320
			$preis = $p['preis_netto'];
7243 daniel 321
 
5934 hartmut 322
			//TODO
323
		}
324
		else
325
		{
326
			$preis = $p['preis_brutto'];
327
		}
7243 daniel 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');
7243 daniel 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');
7243 daniel 334
 
1093 daniel 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
		{
7243 daniel 341
 
7094 florian 342
			$produktBeschreibung = nl2br($produktBeschreibung);
1237 daniel 343
			preg_match_all('/\<br \/\>/', $produktBeschreibung, $treffer);
344
			$produktBeschreibung = strip_tags($produktBeschreibung);
7243 daniel 345
 
7094 florian 346
			$pBeschreibungWidth = $pdf->getStringWidth($produktBeschreibung);
1237 daniel 347
			$pBeschreibungHeight = 5 * (ceil($pBeschreibungWidth / $produkt_text_cell_width) + @sizeof($treffer[0]));
7243 daniel 348
 
1093 daniel 349
			$pdf->SetFont('Arial', 'I', 9);
7243 daniel 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);
7243 daniel 355
 
7094 florian 356
		}
7243 daniel 357
 
1093 daniel 358
		$height += $pBeschreibungHeight;
7243 daniel 359
 
5765 thomas 360
		/**
361
		 * Produktattribute ?
362
		 */
363
		if ($this->get_option('wpsg_rechnungen_produktattribute') == '1')
364
		{
7243 daniel 365
 
5765 thomas 366
			$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getProductAttributeByProductId', array($this->getProduktId($p['id'])));
7243 daniel 367
 
5765 thomas 368
			foreach ($attributeInfo as $pa)
369
			{
7243 daniel 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);
7243 daniel 373
 
5765 thomas 374
			}
7094 florian 375
		}
7243 daniel 376
 
1125 daniel 377
		/**
7094 florian 378
		 * Variante ?
1125 daniel 379
		 */
6165 hartmut 380
		if (preg_match('/pv_(.*)/', $p['productkey']))
1125 daniel 381
		{
7243 daniel 382
 
6165 hartmut 383
			$variInfo = $this->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', array($p['productkey']));
7243 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);
7243 daniel 386
 
2877 daniel 387
			//$height += 5;
7243 daniel 388
 
1125 daniel 389
		}
7243 daniel 390
 
5046 daniel 391
		if ($this->hasMod('wpsg_mod_deliverynote'))
392
		{
7243 daniel 393
 
5046 daniel 394
			$arDN_order = $this->callMod('wpsg_mod_deliverynote', 'loadDeliveryNotesFromOrder', array($this->view['data']['id']));
7243 daniel 395
 
5046 daniel 396
			if (sizeof($arDN_order) > 1)
397
			{
7243 daniel 398
 
7094 florian 399
				$deliveryTimeProduct = $this->callMod('wpsg_mod_deliverynote', 'getProductDeliveryTime', array($this->view['data']['id'], $p['product_index']));
7243 daniel 400
 
5046 daniel 401
				if ($deliveryTimeProduct !== false)
402
				{
7243 daniel 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);
7243 daniel 405
 
5046 daniel 406
				}
7243 daniel 407
 
5046 daniel 408
			}
7243 daniel 409
 
5046 daniel 410
		}
7243 daniel 411
 
1093 daniel 412
		// Jetzt die Rahmen zeichnen
413
		$pdf->Rect($prod_left, $prod_top + $offset, 10, $height);
7243 daniel 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);
7243 daniel 416
 
1157 daniel 417
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1093 daniel 418
		{
7243 daniel 419
 
1093 daniel 420
			$pdf->Rect($prod_left + 97, $prod_top + $offset, 15, $height);
7243 daniel 421
 
1093 daniel 422
		}
7243 daniel 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);
7243 daniel 427
 
1093 daniel 428
		$offset += $height;
7243 daniel 429
 
1093 daniel 430
		$pnr ++;
431
		$count ++;
7243 daniel 432
 
1093 daniel 433
		$summe += $p['price'] * $p['menge'];
7243 daniel 434
 
7094 florian 435
		if ($pdf->getY() > 220 || ($count >= $prod_break && sizeof($this->view['basket']['produkte']) > ($pnr - 1)))
1093 daniel 436
		{
7243 daniel 437
 
1093 daniel 438
			AddRechnungPage($this, $pdf);
439
			$bKopf = false; $offset = 0; $count = 0;
7243 daniel 440
 
1093 daniel 441
		}
7243 daniel 442
 
1094 daniel 443
	} // produkte
7243 daniel 444
 
1633 daniel 445
	// Gutschein
5934 hartmut 446
	if ((isset($this->view['basket']['gs'])) && ($this->view['basket']['gs_value'] > 0))
1633 daniel 447
	{
7243 daniel 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 ++;
7243 daniel 452
 
1633 daniel 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');
7243 daniel 455
 
1633 daniel 456
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
457
		{
7243 daniel 458
 
3024 daniel 459
			$mwst = __('anteilig', 'wpsg');
7243 daniel 460
 
1633 daniel 461
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
3024 daniel 462
			$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
7243 daniel 463
 
1633 daniel 464
		}
7243 daniel 465
 
1633 daniel 466
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
7094 florian 467
		$pdf->Cell(15, 8, '1', 1, 0, 'C');
7243 daniel 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
		*/
7243 daniel 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'));
7243 daniel 488
 
1633 daniel 489
		$pdf->setXY($prod_left + 127, $prod_top + $offset);
490
		$pdf->Cell(25, 8, $gs_value_einzel, 1, 0, 'R');
7243 daniel 491
 
1633 daniel 492
		$pdf->setXY($prod_left + 152, $prod_top + $offset);
493
		$pdf->Cell(25, 8, $gs_value_gesamt, 1, 0, 'R');
7243 daniel 494
 
7094 florian 495
		$offset += 8;
7243 daniel 496
 
7094 florian 497
	}
7243 daniel 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
	{
7243 daniel 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 ++;
7243 daniel 506
 
1094 daniel 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');
7243 daniel 509
 
1157 daniel 510
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1094 daniel 511
		{
7243 daniel 512
 
1165 daniel 513
			if ($this->arShipping[$this->view['data']['type_shipping']]['mwst_null'] == '1' && $this->view['basket']['noMwSt'] == '1')
514
			{
7243 daniel 515
 
1165 daniel 516
				$mwst = 0;
7243 daniel 517
 
1165 daniel 518
			}
519
			else
520
			{
7243 daniel 521
 
4301 daniel 522
				if (isset($this->view['basket']['shipping']['tax_rata']) && $this->view['basket']['shipping']['tax_rata'] === true)
4121 daniel 523
				{
7243 daniel 524
 
4121 daniel 525
					$mwst = __('anteilig', 'wpsg');
7243 daniel 526
 
4121 daniel 527
				}
528
				else
529
				{
7243 daniel 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'], '%');
7243 daniel 533
 
4121 daniel 534
				}
7243 daniel 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
				*/
7243 daniel 550
 
1165 daniel 551
			}
7243 daniel 552
 
1094 daniel 553
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
3024 daniel 554
			$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
7243 daniel 555
 
1094 daniel 556
		}
7243 daniel 557
 
1094 daniel 558
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
7094 florian 559
		$pdf->Cell(15, 8, '1', 1, 0, 'C');
7243 daniel 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');
7243 daniel 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');
7243 daniel 566
 
1094 daniel 567
		$offset += 8;
7243 daniel 568
 
4132 daniel 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
		*/
7243 daniel 608
 
609
 
1093 daniel 610
	}
7243 daniel 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
	{
7243 daniel 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 ++;
7243 daniel 619
 
1094 daniel 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');
7243 daniel 622
 
1157 daniel 623
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
1094 daniel 624
		{
7243 daniel 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
			{
7243 daniel 632
 
4126 daniel 633
				if (isset($this->view['basket']['payment']['tax_rata']) && $this->view['basket']['payment']['tax_rata'] === true)
634
				{
7243 daniel 635
 
4126 daniel 636
					$mwst = __('anteilig', 'wpsg');
7243 daniel 637
 
4126 daniel 638
				}
639
				else
640
				{
7243 daniel 641
 
4126 daniel 642
					$mwst = wpsg_ff($this->arPayment[$this->view['basket']['checkout']['payment']]['mwst_value'], '%');
7243 daniel 643
 
4126 daniel 644
				}
7243 daniel 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
				*/
7243 daniel 660
 
1165 daniel 661
			}
7243 daniel 662
 
1094 daniel 663
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
3024 daniel 664
			$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
7243 daniel 665
 
1094 daniel 666
		}
7243 daniel 667
 
1094 daniel 668
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
7094 florian 669
		$pdf->Cell(15, 8, '1', 1, 0, 'C');
7243 daniel 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');
7243 daniel 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');
7243 daniel 676
 
1094 daniel 677
		$offset += 8;
7243 daniel 678
 
1094 daniel 679
	}
7243 daniel 680
 
2759 daniel 681
	// Gebühr
5934 hartmut 682
	if (wpsg_tf(wpsg_getStr($this->view['storno_fee'])) > 0)
2759 daniel 683
	{
7243 daniel 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 ++;
7243 daniel 688
 
4301 daniel 689
		$label = __('Bearbeitungsgebühr', 'wpsg');
7243 daniel 690
 
4301 daniel 691
		if (strpos($this->view['storno_fee'], '%') !== false) $label .= ' ('.wpsg_ff($this->view['storno_fee'], '%').')';
7243 daniel 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');
7243 daniel 695
 
2759 daniel 696
		if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
697
		{
7243 daniel 698
 
2759 daniel 699
			if ($this->view['basket']['noMwSt'] == '1')
700
			{
701
				$mwst = 0;
702
			}
703
			else
7094 florian 704
			{
7243 daniel 705
 
706
 
4301 daniel 707
				$mwst = wpsg_ff($this->view['storno_fee_tax_value'], '%');
7243 daniel 708
 
2759 daniel 709
			}
7243 daniel 710
 
2759 daniel 711
			$pdf->setXY($prod_left + 97, $prod_top + $offset);
4301 daniel 712
			$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
7243 daniel 713
 
2759 daniel 714
		}
7243 daniel 715
 
2759 daniel 716
		$pdf->setXY($prod_left + 112, $prod_top + $offset);
7094 florian 717
		$pdf->Cell(15, 8, '1', 1, 0, 'C');
7243 daniel 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');
7243 daniel 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');
7243 daniel 724
 
2759 daniel 725
		$offset += 8;
7243 daniel 726
 
2759 daniel 727
	}
7243 daniel 728
 
1093 daniel 729
	$pdf->SetFont('Arial', '', 9);
7243 daniel 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
	}
7243 daniel 738
 
1093 daniel 739
	$offset += 10;
3024 daniel 740
	if ($this->get_option('wpsg_kleinunternehmer'))
1093 daniel 741
	{
7243 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;
7243 daniel 748
 
1093 daniel 749
	}
3024 daniel 750
	else
1093 daniel 751
	{
7243 daniel 752
 
3024 daniel 753
		if ($this->view['basket']['noMwSt'] == '1')
1093 daniel 754
		{
7243 daniel 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);
7243 daniel 759
			$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_netto'] + $this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
3024 daniel 760
			$offset += 5;
7243 daniel 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');
7243 daniel 765
 
3024 daniel 766
		}
7094 florian 767
		else
3024 daniel 768
		{
7243 daniel 769
 
3024 daniel 770
			$pdf->Text($prod_left, $prod_top + $offset, __("Der Gesamtbetrag setzt sich wie folgt zusammen", "wpsg"));
7243 daniel 771
 
3024 daniel 772
			$pdf->Text($prod_left + 100, $prod_top + $offset, __("NETTOBETRAG", "wpsg"));
773
			$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
7243 daniel 774
			$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_netto'] + $this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
775
 
3601 daniel 776
			if (sizeof($this->view['basket']['mwst']) >= 1)
1093 daniel 777
			{
7243 daniel 778
 
3024 daniel 779
				foreach ($this->view['basket']['mwst'] as $mw)
780
				{
7243 daniel 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');
7243 daniel 786
 
3024 daniel 787
				}
7243 daniel 788
 
1093 daniel 789
			}
7243 daniel 790
 
3601 daniel 791
			if (sizeof($this->view['basket']['mwst']) > 1)
792
			{
7243 daniel 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');
7243 daniel 798
 
3601 daniel 799
			}
7243 daniel 800
 
7094 florian 801
		}
7243 daniel 802
 
1628 david 803
	}
7243 daniel 804
 
1327 daniel 805
	// Rabatt
806
	if ($this->view['basket']['sum']['preis_rabatt'] > 0)
807
	{
7243 daniel 808
 
1327 daniel 809
		$offset += 5;
7243 daniel 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');
7243 daniel 814
 
1327 daniel 815
	}
7243 daniel 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);
7244 thomas 820
 
821
	/* Endbetrag wird fett ausgegeben */
822
	$pdf->setFont('Arial', 'B', '9');
1330 daniel 823
	$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
7244 thomas 824
	$pdf->setFont('Arial', '', '9');
7243 daniel 825
 
7244 thomas 826
	/* Endbetrag wird normal ausgegeben */
827
	//$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
828
 
1093 daniel 829
	if ($this->get_option('wpsg_kleinunternehmer') == '1')
830
	{
7243 daniel 831
 
7094 florian 832
		$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset + 5, 5, $this->get_option('wpsg_kleinunternehmer_text'));
1093 daniel 833
		$offset += 15;
7243 daniel 834
 
1093 daniel 835
	}
7243 daniel 836
 
5046 daniel 837
	if ($this->hasMod('wpsg_mod_deliverynote'))
838
	{
7243 daniel 839
 
5046 daniel 840
		$arDN_order = $this->callMod('wpsg_mod_deliverynote', 'loadDeliveryNotesFromOrder', array($this->view['data']['id']));
841
		$delivery_date = $this->callMod('wpsg_mod_deliverynote', 'getDeliveryTime', array($this->view['data']['id']));
7243 daniel 842
 
5046 daniel 843
		// Wenn es ein Gesamtlieferdatum gibt und nur einen Lieferschein, dann unter der Bestellung anzeigen
844
		if ($delivery_date !== false && sizeof($arDN_order) == 1)
845
		{
7243 daniel 846
 
7094 florian 847
			$offset += 10;
7243 daniel 848
 
5382 daniel 849
			$pdf->wpsg_MultiCell($prod_left, $prod_top + $offset, 5, wpsg_translate(__('Lieferung: #1#', 'wpsg'), date('d.m.Y', $delivery_date)));
7243 daniel 850
 
5046 daniel 851
			$offset += 5;
7243 daniel 852
 
5046 daniel 853
		}
7243 daniel 854
 
5046 daniel 855
	}
7243 daniel 856
 
1093 daniel 857
	$offset += 5;
7243 daniel 858
 
1093 daniel 859
	if ($this->view['fussText'] != "")
860
	{
7243 daniel 861
 
5382 daniel 862
		//$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, utf8_encode($this->view['fussText']));
863
		$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $this->view['fussText']);
1093 daniel 864
		$pdf->SetFont('Arial', 'B', 9);
7094 florian 865
		$offset += 10;
7243 daniel 866
 
1093 daniel 867
	}
7243 daniel 868
 
1093 daniel 869
	$shipping_adress = false;
7243 daniel 870
 
1610 david 871
	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 872
	{
7243 daniel 873
 
1093 daniel 874
		$pdf->setFont('Arial', 'B', 9);
875
		$pdf->Text($prod_left, $prod_top + $offset, __("Lieferanschrift", "wpsg").":");
876
		$offset += 5;
7243 daniel 877
 
7094 florian 878
		$pdf->setFont('Arial', '', 9);
7243 daniel 879
 
1093 daniel 880
		$shipping_adress = "";
1242 david 881
		if ($this->view['data']['shipping_firma'] != "")
1093 daniel 882
		{
1242 david 883
			$shipping_adress .= $this->view['data']['shipping_firma']."\r\n";
1093 daniel 884
		}
1242 david 885
		$shipping_adress .= $this->view['data']['shipping_vname'].' '.$this->view['data']['shipping_name']."\r\n";
886
		$shipping_adress .= $this->view['data']['shipping_strasse']."\r\n";
4545 thomas 887
		//$shipping_adress .= $this->view['data']['shipping_land']['kuerzel'].'-';
7243 daniel 888
 
4930 thomas 889
		$shipping_adress .= $this->view['data']['shipping_plz'].' '.$this->view['data']['shipping_ort']."\r\n";
6284 hartmut 890
		$shipping_adress .= $this->view['data']['shipping_land']['name'];
7243 daniel 891
 
892
 
1093 daniel 893
		$start = $pdf->getY();
5382 daniel 894
		$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $shipping_adress, 0, 'L', 0, 100);
1093 daniel 895
		$offset += $pdf->getY() - $start;
7243 daniel 896
 
1093 daniel 897
		$shipping_adress = true;
7243 daniel 898
 
1093 daniel 899
	}
7243 daniel 900
 
901
 
1093 daniel 902
	$offset += 5;
7243 daniel 903
 
1093 daniel 904
	// Bestellvariablen
1671 daniel 905
	if ($this->hasMod('wpsg_mod_ordervars') && $this->get_option('wpsg_mod_rechnungen_showov') == '1')
1093 daniel 906
	{
7243 daniel 907
 
7094 florian 908
		$bvars = @unserialize($this->view['data']['bvars']);
1093 daniel 909
		if (!is_array($bvars)) $bvars = array();
7243 daniel 910
 
1093 daniel 911
		$strBVars = "";
912
		foreach ($bvars as $bvars_id => $bvars_value)
913
		{
7243 daniel 914
 
5382 daniel 915
			$bvars = $this->db->fetchRow("SELECT * FROM `".wpsg_q(WPSG_TBL_ORDERVARS)."` WHERE `id` = '".wpsg_q($bvars_id)."' ORDER BY `pos` ASC, `id` ASC ");
7243 daniel 916
 
1093 daniel 917
			if ($bvars['typ'] == "1") // Auswahl
918
			{
919
				if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
920
			}
921
			else if ($bvars['typ'] == "2") // Texteingabe
922
			{
923
				if (trim($bvars_value) == "") $bvars_value = __("Keine Angabe", "wpsg");
924
			}
925
			else if ($bvars['typ'] == "3") // Checkbox
926
			{
7094 florian 927
				if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
1093 daniel 928
			}
7243 daniel 929
 
7094 florian 930
			$bvars_name = $this->callMod('wpsg_mod_ordervars', 'getNameById', array($bvars_id));
931
			$strBVars .= "\r\n".$bvars_name.": ".$bvars_value;
7243 daniel 932
 
1093 daniel 933
		}
7243 daniel 934
 
7094 florian 935
		$pdf->SetFont('Arial', 'B', 9);
1093 daniel 936
		$pdf->Text($prod_left, $prod_top + $offset, __("Angaben während der Bestellung", "wpsg").":");
937
		$pdf->SetFont('Arial', '', 9);
5382 daniel 938
		$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $strBVars);
7243 daniel 939
 
7094 florian 940
	}
7243 daniel 941
 
1093 daniel 942
	if (!file_exists($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id']))))
943
	{
7243 daniel 944
 
1093 daniel 945
		mkdir($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id'])), 0777, true);
7243 daniel 946
 
1093 daniel 947
	}
7243 daniel 948
 
4837 daniel 949
	$this->callMods('wpsg_mod_rechnungen_pdf', array(&$pdf, &$this->view['data']['id'], &$this->view['preview'], &$this->view['invoice']));
7243 daniel 950
 
1125 daniel 951
	$filename = $this->view['filename'].".pdf";
7243 daniel 952
 
7094 florian 953
	ob_end_clean();
7243 daniel 954
 
6901 daniel 955
	if ($this->view['preview']) {
7243 daniel 956
 
1093 daniel 957
		$pdf->Output($filename, 'I');
7243 daniel 958
 
6901 daniel 959
	} else {
7243 daniel 960
 
1093 daniel 961
		$pdf->Output($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id'])).$filename, 'F');
7243 daniel 962
 
4841 daniel 963
		// Hier wird der Dateiname an FPD übergeben. Er soll sich aus der Rechnungsnummer ergeben, auch wenn das Dokument über die ID gespeichert ist.
964
		if ($this->view['output'] === true) $pdf->Output($this->view['filename_out'], 'I');
7243 daniel 965
 
7094 florian 966
	}
967
 
1093 daniel 968
?>