<?php 
require_once('Vinmanager.php');
include_once('wp-load.php');

$order= 'ASC';
$orderby='title';
if(isset($_GET['order'])){
    
    $oddata= explode('-',$_GET['order']);
    $meta_key ='';
    if( $oddata[0]=='tier'){
    $meta_key='_price';
    $orderby='meta_value_num';
    $order= $oddata[1];
    // 'meta_key' => $orderkey,  
    }else if( $oddata[0]=='downpay'){
    $meta_key='wp_after_offer';
    $orderby='meta_value_num';
    $order= $oddata[1];
    
   }else if( $oddata[0]=='miles'){
    $meta_key='_miles';
    $orderby='meta_value_num';
    $order= $oddata[1];
     
   }else
    {
         $orderby= $oddata[0];
         $order= $oddata[1];
        
    }
    
    
}


$soldmeta= array(
         'key' => '_statustag',
         'value' => 'Sold',
         'type' => 'CHAR',                  //(string) - Custom field type. Possible values are 'NUMERIC', 'BINARY', 'CHAR', 'DATE', 'DATETIME', 'DECIMAL', 'SIGNED', 'TIME', 'UNSIGNED'. Default value is 'CHAR'.
         'compare' => '!='
	  	 
       );
$args_new=array(
    'post_type' => array(  'gtcd'),  
    'post_status' => array('publish'),
	'posts_per_page' => -1,               
    'order' => $order,                      //(string) - Designates the ascending or descending order of the 'orderby' parameter. Defaultto 'DESC'.
    'orderby' => $orderby,   
    'meta_key' => $meta_key,      
    'meta_query' => array($soldmeta)	);

//$invdata = array();
$query = new WP_Query( $args_new );
$total_posts=$query->found_posts;



// Include the main TCPDF library (search for installation path).
require_once('wp-content/themes/automotive/functions/pdf/tcpdf/mycpdf.php');
class MYPDF extends TCPDF {

    //Page header
    public function Header() {
    }

    // Page footer
    public function Footer() {
        // Position at 15 mm from bottom
     // $this->SetY(-10);
     
  
        // Set font
       // $this->SetFont('helvetica', 'I', 7);
   
   
    }
    // Colored table
	public function ColoredTable($header,$data) {
		// Colors, line width and bold font
		$this->SetFillColor(255, 255, 255);
		$this->SetTextColor(0);
		$this->SetDrawColor(0);
		$this->SetLineWidth(0.1);
		
		$this->SetFont('', 'B');
		// Header
		$w = array(15,15, 22,20,20,26,36,30,18,18,15,12);
		$num_headers = count($header);
		for($i = 0; $i < $num_headers; ++$i) {
			$this->Cell($w[$i], 7, $header[$i], 1, 0, 'C', 1);
		}
		$this->Ln();
		// Color and font restoration
		$this->SetFillColor(235, 235, 235);
		$this->SetTextColor(0);
		$this->SetFont('');
		// Data
		$fill = 0;
		$fill2 =0;
	
		
		foreach($data as $row) {
			$this->Cell($w[0],4, $row[0], 'LR', 0, 'C', $fill);
			$this->Cell($w[1],4, $row[1], 'LR', 0, 'C', $fill);
			$this->Cell($w[2], 4, $row[2], 'LR', 0, 'C', $fill);
			$this->Cell($w[3], 4, $row[3], 'LR', 0, 'C', $fill);
			$this->Cell($w[4], 4, $row[4], 'LR', 0, 'C', $fill);
			$this->Cell($w[5], 4, $row[5], 'LR', 0, 'C', $fill);
			$this->Cell($w[6], 4, $row[6], 'LR', 0, 'C', $fill);
			$this->Cell($w[7], 4, $row[7], 'LR', 0, 'C', $fill);
			$this->Cell($w[8], 4, $row[8], 'LR', 0, 'C', $fill);
			$this->Cell($w[9], 4, $row[9], 'LR', 0, 'C', $fill);
			if($row[10]=='Absent'){
		   	$this->SetTextColor(255,0,0);
		    }
			$this->Cell($w[10], 4, $row[10], 'LR', 0, 'C', $fill);
			$this->SetTextColor(0);
			$this->Cell($w[11], 4, $row[11], 'LR', 0, 'C', $fill);
			$this->Ln();
			$fill=!$fill;
		}
		$this->Cell(array_sum($w), 0, '', 'T');
	}
	
}


// create new PDF document
$pdf = new MYPDF('P', PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdf->setFontSubsetting(false);
// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Carcreditnation');
$pdf->SetTitle('Carcredit Inventory');
$pdf->SetSubject('Carcredit Inventory PDF');
$pdf->SetKeywords('Carcredit, Inventory PDF,Inventory,PDF, Vehicles');

// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 006', PDF_HEADER_STRING);

// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

// set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, 5, PDF_MARGIN_RIGHT,5);

$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(5);

// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, 5);

// set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

// set some language-dependent strings (optional)
/*if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
	require_once(dirname(__FILE__).'/lang/eng.php');
	$pdf->setLanguageArray($l);
}
*/



// ---------------------------------------------------------

// set font
$pdf->SetFont('dejavusans', '', 9);
$pdf->setPageOrientation('L');
// add a page
//$pdf->AddPage();

// set some text to print
$txt = <<<EOD
Stock #  |  Year  |  Make  |  Model  |  Color  |  Engine  |  Trans  |  Drive Type  |  Full Down Payment  |  Promotional Down Payment  |  Title |  Tier 
EOD;
$pdf->SetFont('helvetica', 'B', 9);
// print a block of text using Write()
//$pdf->Write(0, $txt, '', 0, 'L', true, 0, false, false, 0);
$pdf->SetFont('helvetica', '', 9);
$data = array();
if ( $query->found_posts>0 ) : 
    while ( $query->have_posts() ) : 
        $query->the_post();
        
        $fields = get_post_meta($post->ID, 'mod1', true); 
        if(is_serialized( $fields ))
            $fields=unserialize($fields);
        $makenmodel=wp_get_object_terms( $post->ID, 'makemodel'); 
        
        $exteriorcolor=$fields['exterior'];
        
        
        $stock =$fields['stock'];
        
        $year =$fields['year'];
        if($makenmodel[0]->parent != '0' )
        {
        $model =$makenmodel[0]->name;
        $make =$makenmodel[1]->name;
        }else{
        $make =$makenmodel[0]->name;
        $model =$makenmodel[1]->name;
        }
       // $stock =get_post_meta($id, 'stock',true);
        
        $titleabsent= 'Yes';
        
        if(get_post_meta($post->ID, 'wp_title_absent', true)){
            $titleabsent= 'Absent';
        }
        $transm=$fields['transmission'];
        if( $transm=="Continuously Variable Transmission"){
             $transm='CVT';
        }
        $transm =str_replace("Overdrive", "O/D", $transm);
        
        /*Drive*/
        $ddtrain='NA';
        $drivetrain=  get_post_meta(get_the_ID(),'_drive'); 
          $transabbr= array("FWD" => "Front wheel drive","RWD" => "Rear Wheel Drive", "AWD" => "All Wheel Drive", "4x4" => "Four Wheel Drive","4X4" => "Four Wheel Drive", "4WD" => "Four Wheel Drive", "CVT"=>"Continuously Variable Transmission" ,"SH-AWT"=>"Super Handling All-Wheel Drive all-wheel drive");
         if ( $drivetrain){ 
             $ddtrain2 =$drivetrain[0];
            if($transabbr[strtoupper($drivetrain[0])]!=null){
              $ddtrain=  $transabbr[strtoupper(trim($drivetrain[0]))];
            }else 
            $ddtrain=$drivetrain[0];
         }
         if(str_contains($ddtrain,'Super Handling All-Wheel') || str_contains($ddtrain,'SH-AWD')){
             $ddtrain='SH-AWD';
         }
        /*drive*/
        
        $enginedet = get_post_meta($post->ID,'g3_displacement',true).' '.get_post_meta($post->ID,'_cylinders',true).'';
       if(get_post_meta($post->ID, 'wp_text_8', true)){
                $tier='Platinum';
            } 
             $nofinance= get_post_meta($post->ID, 'wp_text_8', true);
                if( (isset($nofinance)) && ($nofinance == true)){
                    
                    $tier='Pt.';
                }else {
            
            $lprice= $fields['price'];
                	if($lprice<5500){
                		$tier=1;
                	}elseif($lprice<8000){
                		$tier=2;
                	}elseif($lprice<10000){
                		$tier=3;
                	}else{
                		$tier=4;
                	}
                }
       //if($titleabsent!='Absent'){
          
                 $id1 = '$ '.round(get_post_meta($post->ID, 'wp_text_1', true),0);
            	$newprice= downpay_offers($id1,$tier);
            	$promoprice='$ '.get_post_meta($post->ID, 'wp_after_offer', true);
           
            
        /*}else{
            $id1 ='--';
            //$tier='--';
            $newprice ='--';
            $promoprice ='--';
             //$titleabsent='<font size="10" color="red">'.$titleabsent.'</font>';
            
        }*/
      $data[] = array($stock ,  $year  , $make  , $model , $exteriorcolor ,  $enginedet , $transm  ,  $ddtrain  , $id1  ,  $promoprice , $titleabsent ,  $tier ) ;
        
        $gtcddata =<<<EOD
$stock |  $year  |  $make  |  $model  |  $exteriorcolor  |  $enginedet  |  $transm  |  $ddtrain  |  $id1  |  $promoprice |  $titleabsent |  $tier
EOD;
        //$pdf->Write(0, $gtcddata, '', 0, 'L', true, 0, false, false, 0);
       // $pdf->writeHTML($gtcddata, true, 0, true, 0);
    endwhile;
endif;


// column titles
$header = array('Stock#', 'Year', 'Make', 'Model','Color', 'Engine', 'Trans', 'Drive Type','Full DP', 'Promo. DP', 'Title', 'Tier'); 
//Stock #  |  Year  |  Make  |  Model  |  Color  |  Engine  |  Trans  |  Drive Type  |  Full Down Payment  |  Promotional Down Payment  |  Title |  Tier

// data loading
//$data = $pdf->LoadData('data/table_data_demo.txt');
//$mergedArray = array_merge($data, $data);
$myarrrays = array_chunk($data,47);
foreach($myarrrays as $myarrray){
    // add a page
$pdf->AddPage();
// print colored table
$pdf->ColoredTable($header, $myarrray);

}




//Close and output PDF document
if($_GET['download']==true){
    $pdf->Output('Invenotry.pdf', 'D');
}else
$pdf->Output('Inventory.pdf', 'I');

//============================================================+
// END OF FILE
//============================================================+