/** * @param \Event $event * @param \User $user * @param $pin * @return bool */ public function signCvi(\Event $event, \User $user, $pin) { if ($user->signature_file_id) { $decodedImage = $user->getDecryptedSignature($pin); if ($decodedImage) { $transaction = $this->startTransaction(); try { $this->saveUserSignature($decodedImage, $event); $this->updateEventInfo($event); $event->audit('event', 'cvi-consultant-signed', null, 'CVI Consultant Signature added', array('user_id' => $user->id)); $transaction->commit(); return true; } catch (\Exception $e) { \OELog::log($e->getMessage()); $transaction->rollback(); return false; } } } return false; }