HEX
Server: Apache
System: Linux clpupre 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64
User: undanet (1000)
PHP: 7.4.3
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /home/undanet/www/wp-content/themes/panoramic-child/inc/ajax-functions.php
<?php
add_action('wp_ajax_gestionarconvocatorias', 'gestionarconvocatorias');
add_action('wp_ajax_nopriv_gestionarconvocatorias', 'gestionarconvocatorias');
function gestionarconvocatorias()
{
	ob_start();
	include(ABSPATH . '/PortalEmpleo/src/Views/GestionarConvocatorias.php');
	$resultlista = ob_get_contents();
	ob_end_clean();

	if (isset($_POST['mailto'])) {
		ob_start();
		sendEmailto($_POST['mailto'], $_POST['subject'], $_POST['message']);
		$resultlista1 = ob_get_contents();
		ob_end_clean();
	}

	$return = ['content' => $resultlista];
	wp_send_json($return);

	wp_die();
}

add_action('wp_ajax_gestionarcandidatos', 'gestionarcandidatos');
add_action('wp_ajax_nopriv_gestionarcandidatos', 'gestionarcandidatos');
function gestionarcandidatos()
{
	ob_start();
	include(ABSPATH . '/PortalEmpleo/src/Views/GestionarCandidatos.php');
	$resultlista = ob_get_contents();
	ob_end_clean();

	$return = ['content' => $resultlista];
	wp_send_json($return);

	wp_die();

}

function send_email_with_pdf()
{
	ob_start();
	include(ABSPATH . '/PortalEmpleo/src/Views/GestionarConvocatorias.php');
	$resultlista = ob_get_contents();
	ob_end_clean();

	$pdfdoc = $_POST['fileDataURI'];
	$b64file = trim(str_replace('data:application/pdf;base64,', '', $pdfdoc));
	$b64file = str_replace(' ', '+', $b64file);
	$decoded_pdf = base64_decode($b64file);

	$attachment = WP_CONTENT_DIR . "/uploads/portalempleo/attachment/"
		. $_POST['namefile'];

	file_put_contents($attachment, $decoded_pdf);

	$mailto = $_POST['mailto'];
	$subject = $_POST['subject'];
	$message = $_POST['message'];

	$headers = [];
	add_filter('wp_mail_content_type', function ($content_type) {
		return 'text/html';
	});
	$headers[] =
		'From: ' . get_bloginfo('name') . ' <' . get_option('admin_email') . '>'
		. "\r\n";
	wp_mail($mailto, $subject, $message, $headers, $attachment);
	remove_filter('wp_mail_content_type', 'set_html_content_type');

	$resultlista = 'ok';
	$return = ['content' => $resultlista];
	wp_send_json($return);

	wp_die();
}

add_action('wp_ajax_send_email_with_pdf', 'send_email_with_pdf');
add_action('wp_ajax_nopriv_send_email_with_pdf', 'send_email_with_pdf');
?>