get->get('uid'); $entry = new Model_E2pdf_Entry(); if ($entry->load_by_uid($uid)) { $uid_params = $entry->get('entry'); $template = new Model_E2pdf_Template(); if (isset($uid_params['pdf'])) { if ($uid_params['pdf'] && file_exists($uid_params['pdf']) && isset($uid_params['template_id']) && isset($uid_params['dataset']) && $template->load($uid_params['template_id'])) { $download = true; $disposition = 'attachment'; if (isset($uid_params['inline'])) { if ($uid_params['inline']) { $disposition = 'inline'; } } else { if ($template->get('inline')) { $disposition = 'inline'; } } $name = basename($uid_params['pdf'], ".pdf"); $file = base64_encode(file_get_contents($uid_params['pdf'])); $this->download_response('pdf', $file, $name, $disposition); } } elseif (isset($uid_params['template_id']) && isset($uid_params['dataset']) && $template->load($uid_params['template_id'])) { $template->extension()->set('dataset', $uid_params['dataset']); if (isset($uid_params['flatten'])) { $template->set('flatten', $uid_params['flatten']); } if (isset($uid_params['format'])) { $template->set('format', $uid_params['format']); } if (isset($uid_params['password'])) { $template->set('password', $uid_params['password']); } else { $template->set('password', $template->extension()->render($template->get('password'), 'value')); } if (isset($uid_params['name'])) { $template->set('name', $uid_params['name']); } else { $template->set('name', $template->extension()->render($template->get('name'), 'value')); } $disposition = 'attachment'; if (isset($uid_params['inline'])) { if ($uid_params['inline']) { $disposition = 'inline'; } } else { if ($template->get('inline')) { $disposition = 'inline'; } } if (isset($uid_params['pdf']) && file_exists($uid_params['pdf'])) { $entry->set('pdf_num', $entry->get('pdf_num') + 1); $entry->save(); $download = true; if ($template->get('name')) { $name = $template->get('name'); } else { $name = $template->extension()->render($template->get_filename(), 'value'); } $file = base64_encode(file_get_contents($uid_params['pdf'])); $this->download_response('pdf', $file, $name, $disposition); } elseif ($template->extension()->verify()) { $template->fill($uid_params['dataset'], $uid); $request = $template->render(); if (isset($request['error'])) { wp_die($request['error']); } elseif ($request['file'] === '') { wp_die(__('Something went wrong!', 'e2pdf')); } else { $entry->set('pdf_num', $entry->get('pdf_num') + 1); $entry->save(); $download = true; if ($template->get('name')) { $name = $template->get('name'); } else { $name = $template->extension()->render($template->get_filename(), 'value'); } $file = $request['file']; $this->download_response('pdf', $file, $name, $disposition); } } } } if (!$download) { $wp_query->set_404(); status_header(404); nocache_headers(); } } }