I am implementing barcode checkin and found what I would call a bug in the class-wootickets implementation of the checkin function. It should check to see if the attendee was checked in already and return false if so. The current implementation is “hard-coded” for the ajaxy web form and does not account for external check ins so it would also break if there were 2 stations setup to check in attendees.
public function checkin( $attendee_id ) {
//actually CHECK to see if the attendee is already checked in first
$checkedin = get_post_meta( $attendee_id, $this->checkin_key, 1);
if ( $checkedin ){
//Oops, this is not what we expect, right?
return false;
} else {
update_post_meta( $attendee_id, $this->checkin_key, 1 );
do_action( ‘wootickets_checkin’, $attendee_id );
return true;
}
}