get_certificate_with_date($certificate_id, $birth_date); if (!$certificate) { return false; } if ($certificate->expiry_date && strtotime($certificate->expiry_date) < time()) { return 'expired'; } if (!$certificate->is_active) { return 'inactive'; } return $certificate; } /** * Verify certificate status for display. * * Checks whether a certificate exists and determines its current status: * - Returns the certificate object if it is valid and active * - Returns 'expired' if the certificate has passed its expiry date * - Returns 'inactive' if the certificate is disabled * - Returns false if the certificate does not exist or verification fails * * @since 1.0.0 * * @param string|int $certificate_id Certificate ID to verify. * @param string $verification_code Optional verification code. * * @return object|string|false Certificate object on success, * 'expired' if expired, * 'inactive' if inactive, * false if not found or invalid. */ public function verify_certificate($certificate_id, $verification_code = '') { $db = ACCEVE_Certificate_Verification_Database::get_instance(); $certificate = $db->get_certificate($certificate_id, $verification_code); if (!$certificate) { return false; } if ($certificate->expiry_date && strtotime($certificate->expiry_date) < time()) { return 'expired'; } if (!$certificate->is_active) { return 'inactive'; } return $certificate; } }