function mail_bij_status($post_id) {
	$post   = get_post($post_id);
	// is het post id een nummer en het post type een opdracht
  	if (!is_numeric($post_id) || get_post_type($post_id) != 'opdrachten') {
      return $post_id;
    }
    // argumenten voor de mails en acties verkrijgen
	$author = $post->post_author;
	$name = get_the_author_meta( 'display_name', $author );
	$email = get_field('email_adres_opdrachtgever', $post_id);
	//$email = get_the_author_meta( 'user_email', $author );
	$title = $post->post_title;
	$tipstricks = get_permalink( 10455 );
	$permalink = get_permalink( $ID );
	$edit = get_edit_post_link( $ID, '' );
	$statusopdracht = $_POST['acf']['field_5cdc642a292bc'];
  	$match = $_POST['acf']['field_5cece72d72af6'];
  	$kandidatenmatch = $_POST['acf']['field_5ceceb1098c04'];
    // verkrijg solliciaties en opslaan in array
  	global $wpdb;
    $args = array(
		'post_type' => 'sollicitaties',
		'posts_per_page'	=> -1,
		'meta_query' => array(
			array(
				'key' => 'opdracht_id',
				'value' => '"' . $post_id . '"',
				'compare' => 'LIKE'
			)
		)
	);
	$my_query = new WP_Query($args);
	$kandidaten = array();
	if($my_query->have_posts()) {
		while($my_query->have_posts()):
			$count++;
			$my_query->the_post();
			$user_email = get_the_author_meta( 'user_email' );
			$value = $user_email;
			$kandidaten[] = $value;
		endwhile;
	} else {};
	wp_reset_query();
	// als er geen solliciaties zijn hoeven er geen kandidaten gemaild te worden
	if (!empty($kandidaten)) {
		//check de match en vergelijk dit met kandidaten en haal de matches eruit
		$afwijzen = array_diff($kandidaten, $kandidatenmatch);
		// als er kandidaten zijn moeten die worden afgewezen en gemaild
		if (!empty($afwijzen)) {
			foreach ($afwijzen as $afwijzing) {
				$useraf = get_user_by( 'email', $afwijzing );
				$naamaf = $useraf->first_name;
				$toaf = sprintf( '%s <%s>', $naamaf, $afwijzing );
				$subjectaf = sprintf( 'Helaas ben je niet gekozen | KROOTZ interim & ZZP', $title );
				$messageaf = sprintf ('Beste %s,<br/> Helaas is de keuze voor de opdracht “%s” niet op jou gevallen.' . "\n\n", $naamaf, $title );
				$messageaf .= sprintf( 'Wij willen je graag bedanken voor je interesse en de moeite die je hebt genomen om op deze opdracht te reageren.' . "\n\n" );
				$messageaf .= sprintf( 'Wil je tips & tricks om nog meer kans te maken om te worden geselecteerd voor een opdracht? Klik dan <a href="%s"><strong>hier</strong></a>.' . "\n\n", $tipstricks);
				$messageaf .= sprintf( 'Met vriendelijke groet,<br/>KROOTZ interim & ZZP' );
				$headersaf[] = 'Content-Type: text/html; charset=UTF-8';
				wp_mail( $toaf, $subjectaf, $messageaf, $headersaf );
			}
		}
		// als er matches zijn dan moeten die worden gemaild
		if (!empty($kandidatenmatch)) {
			$matchesmailenopdrachtgever = array();
			$matchesmailenadmin = array();
			foreach ($kandidatenmatch as $enkele_match) {
				$usermt = get_user_by( 'email', $enkele_match );
				$useridmt = $usermt->id . ' ';
				$naammt = $usermt->first_name . ' ';
				$matchesmailenopdrachtgever[] = $naammt;
				$matchesmailenadmin[] = $naammt . '|' . $useridmt;
				$tomt = sprintf( '%s <%s>', $naammt, $enkele_match );
				$subjectmt = sprintf( 'Gefeliciteerd, je bent geselecteerd! | KROOTZ interim & ZZP', $title );
				$messagemt = sprintf ('Beste %s,<br/> Gefeliciteerd, je bent geselecteerd voor de opdracht “%s”.' . "\n\n", $naammt, $title );
				$messagemt .= sprintf( 'Indien je nog geen contact hebt met de opdrachtgever sturen we hierbij de gegevens om de verdere details te bespreken.<br/>' );
				$messagemt .= sprintf( '<strong>Opdrachtgever:</strong> %s' . "\n\n", $name );
				$messagemt .= sprintf( '<strong>Email adres:</strong> %s' . "\n\n", $email );
				$messagemt .= sprintf( 'Wij willen je graag bedanken voor je interesse en de moeite die je hebt genomen om op deze opdracht te reageren.');
				$messagemt .= sprintf( 'Wij nemen op een later moment contact met je op voor de juiste afwikkeling.' . "\n\n" );
				$messagemt .= sprintf( 'Met vriendelijke groet,<br/>KROOTZ interim & ZZP' );
				$headersmt[] = 'Content-Type: text/html; charset=UTF-8';
				wp_mail( $tomt, $subjectmt, $messagemt, $headersmt );
			}
		}
	}
	
	// zet alle matches in een lijst op naam
	$matcheslijstopdrachtgever = implode("<br/>", $matchesmailenopdrachtgever);
	// zet alle matches in een lijst met ID en naam voor KROOTZ
	$matcheslijstadmin = implode("<br/>", $matchesmailenadmin);
    //// mail de opdrachtgever indien er een match is
    // stuur mail bij MATCH (en afwijzingen)
    if($statusopdracht = 623 && $match == "ja"){
		$tomtop = sprintf( '%s <%s>', $name, $email );
		$subjectmtop = sprintf( 'Opdracht succesvol gesloten | KROOTZ interim & ZZP', $title );
		$messagemtop = sprintf ('Beste %s,<br/> Gefeliciteerd, je opdracht “%s” is succesvol gesloten.' . "\n\n", $name, $title );
		$messagemtop .= sprintf( 'De kandidaten zijn allen automatisch gemaild. De volgende kandidaten heb je als match aangemerkt:' . "\n\n" );
		$messagemtop .= sprintf( '%s' . "\n\n", $matcheslijstopdrachtgever );
		$messagemtop .= sprintf( 'Wij nemen op een later moment contact met je op voor de juiste afwikkeling.' . "\n\n" );
		$messagemtop .= sprintf( 'Met vriendelijke groet,<br/>KROOTZ interim & ZZP' );
		$headersmtop[] = '';
   		wp_mail( $tomtop, $subjectmtop, $messagemtop, $headersmtop );
   		$tokrootz = sprintf('KROOTZ interim & ZZP <info@krootz.nl>');
		$subjectkrootz = sprintf( 'MATCH - Opdracht succesvol gesloten | KROOTZ interim & ZZP', $title );
		$messagekrootz = sprintf ('De opdracht “%s” is succesvol gesloten.' . "\n\n", $title );
		$messagekrootz .= sprintf( 'De volgende kandidaten zijn als match aangemerkt:' . "\n\n" );
		$messagekrootz .= sprintf( '%s ' . "\n\n", $matcheslijstadmin );
		$messagekrootz .= sprintf( 'De volgende opdrachtgever moet worden gefactureerd:' . "\n\n" );
		$messagekrootz .= sprintf( 'Opdrachtgever: %s' . "\n\n", $email );
		$messagekrootz .= sprintf( 'Email adres: %s' . "\n\n", $email );
		$headerskrootz[] = '';
   		wp_mail( $tokrootz, $subjectkrootz, $messagekrootz, $headerskrootz );
   	// stuur mail bij GEEN MATCH (dus afwijzingen)
   	} elseif($statusopdracht = 623 && $match == "nee"){
   		$toafop = sprintf( '%s <%s>', $name, $email );
   		$plaatsopdracht = get_permalink( 3674 );
		$subjectafop = sprintf( 'Opdracht gesloten | KROOTZ interim & ZZP', $title );
		$messageafop = sprintf ('Beste %s,<br/> Je opdracht “%s” is zojuist gesloten.' . "\n\n", $name, $title );
		$messageafop .= sprintf( 'Helaas heeft je opdracht geen matches opgeleverd.' . "\n\n" );
		$messageafop .= sprintf( 'Wij willen je graag bedanken voor het plaatsen van je opdracht. Wil je opnieuw een opdracht plaatsen? Klik dan <a href="%s"><strong>hier</strong></a>.' . "\n\n", $plaatsopdracht);
		$messageafop .= sprintf( 'Met vriendelijke groet,<br/>KROOTZ interim & ZZP' );
		$headersafop[] = 'Bcc: info@krootz.nl';
   		wp_mail( $toafop, $subjectafop, $messageafop, $headersafop );
   		if (!empty($kandidaten)) {
			foreach ($kandidaten as $kandidaat) {
				$userknd = get_user_by( 'email', $kandidaat );
				$naamknd = $userknd->first_name;
				$toknd = sprintf( '%s <%s>', $naamknd, $kandidaat );
				$subjectknd = sprintf( 'Helaas ben je niet gekozen | KROOTZ interim & ZZP', $title );
				$messageknd = sprintf ('Beste %s,<br/> Helaas is de keuze voor de opdracht “%s” niet op jou gevallen.' . "\n\n", $naamknd, $title );
				$messageknd .= sprintf( 'Wij willen je graag bedanken voor je interesse en de moeite die je hebt genomen om op deze opdracht te reageren.' . "\n\n" );
				$messageknd .= sprintf( 'Wil je tips & tricks om nog meer kans te maken om te worden geselecteerd voor een opdracht? Klik dan <a href="%s"><strong>hier</strong></a>.' . "\n\n", $tipstricks);
				$messageknd .= sprintf( 'Met vriendelijke groet,<br/>KROOTZ interim & ZZP' );
				$headersknd[] = 'Content-Type: text/html; charset=UTF-8';
				wp_mail( $toknd, $subjectknd, $messageknd, $headersknd );
			}
		}
    } else {};
	
    wp_update_post($post);
    
    return $post_id;
  }
  
add_filter('acf/save_post' , 'mail_bij_status', 20);

 

Geef een reactie 0