Ln(10); //$this->SetY($this->tMargin); //from address $this->template->setAccount(); $address = $this->template->account->name; if($this->template->account->billing_address_street) $address .= " - ".$this->template->account->billing_address_street; if($this->template->account->billing_address_postalcode) $address .= " - ".$this->template->account->billing_address_postalcode; if($this->template->account->billing_address_city) $address .= " ".$this->template->account->billing_address_city; $pdf->SetFont('arialpl', 'u', 8); $pdf->Ln(10); $pdf->MultiCell(0,5,$address,0,'L'); */ $pdf->Ln(2); //to address $address = $this->parent_name; if($this->parent_contact_name) { $address .= "\n".$this->parent_contact_name; if($this->parent_contact_title) $address .= "\n".$this->parent_contact_title; } if($this->parent_address_street) $address .= "\n".$this->parent_address_street; if($this->parent_address_postalcode) $address .= "\n\n".$this->parent_address_postalcode; if($this->parent_address_city) $address .= " ".$this->parent_address_city; if($this->to_vatid) $address .= "\n\n".$mod_strings['LBL_PDF_VATID']." ".$this->to_vatid; $pdf->SetFont('arialpl', '', 10); $pdf->Ln(2); $current = $pdf->GetY(); $pdf->MultiCell(0,4,$address,0,'L'); $current2 = $pdf->GetY(); $pdf->SetXY($pdf->fw-$pdf->rMargin-30,$current); $table = array(); $table [0]['data'] = array('width' => 30, 'value' => $mod_strings['LBL_PDF_NUMBER'], 'border' => 0, 'overflow' => 1, 'align' => 'L', 'font-style' => 'b', 'font-size' => 9); $table [1]['data'] = array('width' => 30, 'value' => $this->document_no, 'border' => 0, 'overflow' => 1, 'align' => 'L'); $table [2]['data'] = array('width' => 30, 'value' => $mod_strings['LBL_PDF_DATE_REGISTER'], 'border' => 0, 'overflow' => 1, 'align' => 'L', 'font-style' => 'b', 'font-size' => 9); $table [3]['data'] = array('width' => 30, 'value' => $this->register_date, 'border' => 0, 'overflow' => 1, 'align' => 'L'); $table [4]['data'] = array('width' => 30, 'value' => $mod_strings['LBL_PDF_OWNER'], 'border' => 0, 'overflow' => 1, 'align' => 'L', 'font-style' => 'b', 'font-size' => 9); $table [5]['data'] = array('width' => 30, 'value' => $this->setUser()->full_name, 'border' => 0, 'overflow' => 1, 'align' => 'L'); $pdf->DrawTable($table, null, 0.5, 0.5, 3); $pdf->SetY($current2); $pdf->Ln(12); $pdf->SetFont('arialpl','','24'); if($this->type == "normal") $pdf->MultiCell(0,3,$mod_strings['LBL_PDF_DOCUMENT_NAME'],0,'L'); else if($this->type == "correct") { $pdf->MultiCell(0,3,$mod_strings['LBL_PDF_DOCUMENT_NAME_CORRECT'],0,'L'); $this->loadEcmInvoiceOut(); $this->ecminvoiceout->format_all_fields(); $pdf->Ln(5); $pdf->SetFont('arialpl','','18'); $pdf->MultiCell(0,3,$mod_strings['LBL_PDF_DOCUMENT_NAME_CORRECT_TO'].' '.$this->ecminvoiceout->document_no); } $this->loadParser(); $this->header_text = $this->template->mfp->parseText($this->header_text); $this->footer_text = $this->template->mfp->parseText($this->footer_text); $this->ads_text = $this->template->mfp->parseText($this->ads_text); //header text $pdf->Ln(12); $pdf->SetFont('arialpl','','10'); $pdf->MultiCell(0,4,$this->header_text,0,'J'); $pdf->Ln(10); if($this->type == "correct") { $pdf->SetFont('arialpl','b','10'); $pdf->MultiCell(0,4,$mod_strings['LBL_PDF_DOCUMENT_BEFORE_CORRECT']); $pdf->Ln(3); $this->ecminvoiceout->DrawPositions($pdf); $pdf->SetFont('arialpl','b','10'); $pdf->Ln(4); $pdf->MultiCell(0,4,$mod_strings['LBL_PDF_DOCUMENT_AFTER_CORRECT']); $pdf->Ln(3); } $pdf->SetFont('arialpl','','7'); global $mod_strings; $currency = new Currency(); $currency->retrieve($this->currency_id); $this->currency_symbol=$currency->iso4217; if(!isset($this->position_list) || !is_array($this->position_list)) $this->position_list = $this->getPositionList(true); $calc = $this->calculate($this->position_list,true); //$this->position_list = $this->formatPositions($this->position_list); $calc['total'] .= ' '.$this->currency_symbol; $calc['subtotal'] .= ' '.$this->currency_symbol; if($calc['discount']) { $calc['total2'] .= ' '.$this->currency_symbol; $calc['discount']['value'] .= ' '.$this->currency_symbol; } if(isset($calc['vats']) && is_array($calc['vats']) && count($calc['vats']) > 0) foreach($calc['vats'] as $key => $value) $calc['vats'][$key] .= ' '.$this->currency_symbol; $name_w = 17; //if($calc['draw_discount']) $name_w -= 8; //if($calc['draw_vat']) $name_w -= 8; $table = array(); $table [0]['position'] = array('width' => 4, 'value' => $mod_strings['LBL_PDF_LIST_POSITION'], 'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 8); $table [0]['description'] = array('width' => $name_w, 'value' => $mod_strings['LBL_PDF_LIST_DESCRIPTION'],'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); $table [0]['tax_code'] = array('width' => 8, 'value' => $mod_strings['LBL_PDF_LIST_TAX_CODE'],'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); $table [0]['quantity'] = array('width' => 7, 'value' => $mod_strings['LBL_PDF_LIST_QUANTITY'],'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); $table [0]['unit'] = array('width' => 5, 'value' => $mod_strings['LBL_PDF_LIST_UNIT'], 'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 8); $table [0]['unit_price'] = array('width' => 10, 'value' => $mod_strings['LBL_PDF_LIST_PRICE'],'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); $table [0]['unit_price_total'] = array('width' => 12, 'value' => $mod_strings['LBL_PDF_LIST_TOTAL_PRICE'],'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); //if($calc['draw_discount']) $table [0]['discount'] = array('width' => 5, 'value' => $mod_strings['LBL_PDF_LIST_DISCOUNT'], 'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); //if($calc['draw_vat']) { $table [0]['vat_id'] = array('width' => 5, 'value' => $mod_strings['LBL_PDF_LIST_VAT'],'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); $table [0]['vat_value'] = array('width' => 13, 'value' => $mod_strings['LBL_PDF_LIST_VAT_VALUE'],'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); //} $table [0]['total'] = array('width' => 14, 'value' => $mod_strings['LBL_PDF_LIST_TOTAL'],'border' => 1, 'overflow' => 1, 'align' => 'C', 'font-style' => 'b', 'font-size' => 7); $pdf->DrawTable($table,array(0)); $pdf->Ln(0); $i = 1; $lv=return_app_list_strings_language($this->ecmlanguage); $table=array(); if($this->position_list != '') foreach($this->position_list as $p) { $table [$i]['position'] = array('width' => 4, 'value' => $i, 'border' => 1, 'align' => 'R', 'font-size' => 7 ); $table [$i]['description'] = array('width' => $name_w, 'value' => htmlspecialchars_decode($p['name']), 'border' => 1, 'align' => 'L', 'font-size' => 7 ); $table [$i]['tax_code'] = array('width' => 8, 'value' => $p['tax_code'],'border' => 1, 'align' => 'C', 'font-size' => 7); $table [$i]['quantity'] = array('width' => 7, 'value' => $p['quantity'], 'border' => 1, 'align' => 'C', 'font-size' => 7 ); $table [$i]['unit'] = array('width' => 5, 'value' => $lv['ecmproducts_unit_dom'][$p['unit_id']], 'border' => 1, 'align' => 'C', 'font-size' => 7 ); $table [$i]['unit_price'] = array('width' => 10, 'value' => format_number($p['price']).' '.$this->currency_symbol, 'border' => 1, 'align' => 'R', 'font-size' => 7 ); $price_total=($p['price']-($p['price']*$p['discount']/100))*$p['quantity']; $table [$i]['unit_price_total'] = array('width' => 12, 'value' => format_number($price_total).' '.$this->currency_symbol, 'border' => 1, 'align' => 'R', 'font-size' => 7 ); //if($calc['draw_discount']) $table [$i]['discount'] = array('width' => 5, 'value' => $p['discount'], 'border' => 1, 'align' => 'R', 'font-size' => 7 ); //if($calc['draw_vat']){ $table [$i]['vat_id'] = array('width' => 5, 'value' => format_number($p['vat_value']), 'border' => 1, 'align' => 'R', 'font-size' => 7 ); $vat_value=$p['vat_value']/100*$p['price']*$p['quantity']; $table [$i]['vat_value'] = array('width' => 13, 'value' => format_number($vat_value).' '.$this->currency_symbol, 'border' => 1, 'align' => 'R', 'font-size' => 7 ); //} $table [$i]['total'] = array('width' => 14, 'value' => format_number($price_total+$vat_value).' '.$this->currency_symbol, 'border' => 1, 'align' => 'R', 'font-size' => 7 ); $totals[$p['vat_id']]['price']+=$price_total; $totals[$p['vat_id']]['total']+=$price_total+$vat_value; $totals[$p['vat_id']]['vat']+=$vat_value; $i++; } $pdf->DrawTable($table,array(0)); //total, vat, subtotal $pdf->Ln(4); $pr = ($pdf->fw-$pdf->lMargin-$pdf->rMargin)/100; //$pdf->SetX($pdf->fw-$pdf->rMargin-$pr*34); $table = array(); if($calc['vats']) { /*$table [] = array( 'subtotal1' => array('width' => 42, 'value' => $mod_strings['LBL_PDF_TOTAL'], 'background' => array(255,255,255), 'border' => 1, 'overflow' => 1, 'align' => 'L', 'font-size' => 7), 'subtotal2' => array('width' => 14, 'value' => $calc['subtotal'].' '.$this->currency_symbol, 'border' => 1, 'overflow' => 1, 'align' => 'R', 'font-size' => 7), ); */ foreach($calc['vats'] as $key => $value){ $r=mysql_fetch_array(mysql_query("select id,name,value from ecmvats where id='".$key."'")); $vvn=$r['name']; $table [] = array( 'vat1' => array('width' => 10, 'value' => $mod_strings['LBL_PDF_VAT'].' ('.$vvn.')', 'background' => array(255,255,255), 'border' => 1, 'overflow' => 1, 'align' => 'L', 'font-size' => 7), 'netto_total' => array('width' => 12, 'value' => format_number($totals[$r['id']]['price']).' '.$this->currency_symbol, 'background' => array(255,255,255), 'border' => 1, 'overflow' => 1, 'align' => 'R', 'font-size' => 7), 'vat_rate' => array('width' => 5, 'value' => format_number($r['value']), 'background' => array(255,255,255), 'border' => 1, 'overflow' => 1, 'align' => 'R', 'font-size' => 7), 'vat_total' => array('width' => 13, 'value' => format_number($totals[$r['id']]['vat']).' '.$this->currency_symbol, 'background' => array(255,255,255), 'border' => 1, 'overflow' => 1, 'align' => 'R', 'font-size' => 7), 'vat2' => array('width' => 14, 'value' => format_number($totals[$r['id']]['total']).' '.$this->currency_symbol, 'border' => 1, 'overflow' => 1, 'align' => 'R', 'font-size' => 7), ); } } if(isset($calc['discount'])) { $table [] = array( 'total21' => array('width' => 66, 'value' => $mod_strings['LBL_PDF_TOTAL'], 'background' => array(255,255,255), 'border' => 0, 'overflow' => 1, 'align' => 'L', 'font-size' => 7, 'font-style' => 'b'), 'total22' => array('width' => 34, 'value' => $calc['total2'].' '.$this->currency_symbol, 'border' => 0, 'overflow' => 1, 'align' => 'R' , 'font-size' => 7), ); $table [] = array( 'discount1' => array('width' => 86, 'value' => $mod_strings['LBL_PDF_DISCOUNT'].' '.$calc['discount']['procent'], 'background' => array(255,255,255), 'border' => 0, 'overflow' => 1, 'align' => 'L', 'font-size' => 7, 'font-style' => 'b'), 'discount2' => array('width' => 14, 'value' => $calc['discount']['value'].' '.$this->currency_symbol, 'border' => 0, 'overflow' => 1, 'align' => 'R' , 'font-size' => 7), ); } $table [] = array( 'total1' => array('width' => 40, 'value' => $mod_strings['LBL_PDF_END_TOTAL'], 'border' => 1, 'overflow' => 1, 'align' => 'L', 'font-size' => 7, 'font-style' => 'b'), 'total2' => array('width' => 14, 'value' => $calc['total'], 'border' => 1, 'overflow' => 1, 'align' => 'R' , 'font-size' => 7, 'font-style' => 'b'), ); $pdf->SetX(103); $pdf->DrawTable($table); $pdf->Ln(1); //$table=array(); //$pdf->DrawTable($table); ?>