Validatie op het aantal ingevulde items

add_filter('acf/validate_value/name=vakgebied', 'validate_vakgebied', 10, 4);
function validate_vakgebied($valid, $value, $field, $input) {

	if(!$valid) {
		return $valid;
	}

	if(sizeof($value) > 2) {
		$valid = 'Je kan maximaal 2 vakgebieden selecteren.';
	} else {
		$valid = true;
	}

	return $valid;

}

 

Validatie op datum

add_filter('acf/validate_value/name=uiterste_reactie_datum', 'validate_reactiedatum', 10, 4);
function validate_reactiedatum($valid, $value, $field, $input) {

	if(!$valid) {
		return $valid;
	}
	setlocale(LC_TIME, "nl_NL");
	$post_id = $_POST['post_id'];
	$datumpub = get_the_date('U', $post_id);
	$datumpubs = strtotime('+6 weeks',$datumpub);
	$value = strtotime($value);	
	$uiterstemax = strftime("%e %B %Y",$datumpubs);
	$uiterstemin = strftime("%e %B %Y",$datumpub);
	// Als datum invoer groter is dan publicatiedatum + 6 weken
	if($value > $datumpubs) {
		$valid = 'De gekozen datum ligt te ver in de toekomst. De publicatietermijn is 6 weken. Selecteer een datum tussen '.$uiterstemin.' en '.$uiterstemax.'.';
	} elseif($value < $datumpub) {
		$valid = 'De gekozen datum ligt in het verleden. Selecteer een datum tussen '.$uiterstemin.' en '.$uiterstemax.'.';
	} else {
		$valid = true;
	}

	return $valid;

}

 

Geef een reactie 0