# taskbuilder/6.0.6/includes/admin/wppm_get_task_pdf.php

Taskbuilder – Project Management &amp; Task Management Tool With Kanban Board, version 6.0.6. 103 lines.

- Page: https://pluginprobe.com/plugins/taskbuilder/6.0.6/code/includes/admin/wppm_get_task_pdf.php
- Raw: https://pluginprobe.com/plugins/taskbuilder/6.0.6/raw/includes/admin/wppm_get_task_pdf.php
- Modified: 2026-08-26T12:08:58+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/taskbuilder/6.0.6/code/includes/admin/wppm_get_task_pdf.php#L10-L20`.

```php
<?php
if ( ! defined( 'ABSPATH' ) ) {
  exit; // Exit if accessed directly
}
global $current_user,$wpdb,$wppmfunction;
$task_id = isset($_GET['id']) ? absint(sanitize_text_field(wp_unslash($_GET['id']))) : '';
$wppm_print_settings = get_option('wppm_print_settings');
$task = $wppmfunction->get_task($task_id);
$project = $wppmfunction->get_project($task['project']);
$proj_users = $project['users'] ? explode(',',$project['users']) : array();
$task_status = absint($task['status']);
$task_priority = absint($task['priority']);
$users = array();
$assigned_users = array();
$assigned_users_name = '';
$status_name = $wpdb->get_var($wpdb->prepare("SELECT name FROM {$wpdb->prefix}wppm_task_statuses WHERE id = %d", $task_status));
$priority_name = $wpdb->get_var($wpdb->prepare("SELECT name FROM {$wpdb->prefix}wppm_task_priorities WHERE id = %d", $task_priority));
if(!empty($task['users'])){
	$users = explode(",",$task['users']);
}
if(!empty($users)){
	foreach($users as $user){ 
		if( (!empty($proj_users)) && in_array($user,$proj_users)){
			$userdata = get_userdata( $user ); 
			$assigned_users[] = $userdata->display_name;
			$assigned_users_name = implode(', ',$assigned_users);
		}
	}
}
$task_creator_data = get_userdata( $task['created_by'] ); 
$task_creator_name = $task_creator_data->display_name;
$export_colomn_value = array();
$unique_id = wp_rand();
$file_name = $unique_id.'.pdf';
$path_to_export = get_temp_dir().$file_name;
$url_to_export  = get_home_url().'/?download-wppm-pdf-export='.$unique_id;
$upload_dir = wp_upload_dir();
$file_path = $upload_dir['basedir'] . '/task-pdf-' . time() . '.pdf';
$file_url  = $upload_dir['baseurl'] . '/task-pdf-' . time() . '.pdf';
$filename=$path_to_export;
$counter_rec = 0;
if (ob_get_length()) ob_end_clean();
require(WPPM_ABSPATH.'asset/lib/fpdf/html2pdf.php');
$pdf = new PDF_HTML();
$pdf->AddPage();
$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Task Title:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $task['task_name'], 0, 1);

// --- DESCRIPTION
$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Description:', 0, 1);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->MultiCell(0, 10, $pdf->WriteHTML($task['description']), 0, 1);

// --- OTHER FIELDS
$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Project:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $project['project_name'], 0, 1);

$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Start Date:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $task['start_date'], 0, 1);

$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Due Date:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $task['end_date'], 0, 1);

$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Task Creator:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $task_creator_name, 0, 1);

$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Status:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $status_name, 0, 1);

$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Priority:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $priority_name, 0, 1);

$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Assigned Users:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $assigned_users_name, 0, 1);

$pdf->SetFont('Arial', 'B', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(45, 10, 'Date Created:', 0, 0);
$pdf->SetFont('Arial', '', $wppm_print_settings['wppm_print_body_font_size']);
$pdf->Cell(0, 10, $task['date_created'], 0, 1);
$pdf->Ln();
header('Content-Type: application/pdf');
header('Content-Disposition: inline; filename="task.pdf"');
header('Cache-Control: private, max-age=0, must-revalidate');
header('Pragma: public');
$pdf->Output( 'I',$file_name); // Save file locally
exit;
```
