/** * Implements hook_civicrm_postProcess(). */ function petitionemail_civicrm_postProcess($formName, &$form) { switch ($formName) { case 'CRM_Campaign_Form_Petition_Signature': $class = CRM_Petitionemail_Interface::findInterface($form->petition['id']); if ($class === FALSE) { return; } $interface = new $class($form->petition['id']); $interface->processSignature($form); break; } }