public function validate($blocks)
{
$errors = [];
$blocksValidate = true;
foreach ($blocks as $block) {
if (!craft()->neo->validateBlock($block)) {
$blocksValidate = false;
}
}
if (!$blocksValidate) {
$errors[] = Craft::t("Correct the errors listed above.");
}
$maxBlocks = $this->getSettings()->maxBlocks;
if ($maxBlocks && count($blocks) > $maxBlocks) {
if ($maxBlocks == 1) {
$errors[] = Craft::t("There can’t be more than one block.");
} else {
$errors[] = Craft::t("There can’t be more than {max} blocks.", ['max' => $maxBlocks]);
}
}
// TODO validate individual blocktype max blocks
return $errors ? $errors : true;
}