Member Lookup modules take cashier input and search for member accounts. Custom modules could provide additional search methods beyond the default member number / last name options. Custom modules could also provide additional processing or even reroute POS entirely to a different page for additional input.
Methods
Return Values
Search results should return a keyed array. The class method
default_value() provides an empty, default return value.
The array should have two keys.
Example: find member by phone number
class LookupByPhone extends MemberLookup { public function handle_text(){ return False; } public function lookup_by_number($num){ $db = Database::pDataConnect(); $ret = $this->default_value(); // need table for lookup if (!$db->table_exists('meminfo')) return $ret; $query = 'SELECT CardNo,personNum, LastName,FirstName,phone FROM custdata AS c LEFT JOIN meminfo AS m ON c.CardNo=m.card_no WHERE m.phone='.((int)$num); $result = $db->query($query); while($row = $db->fetch_row($result)){ $key = $row['CardNo'].'::'.$row['personNum']; $label = $row['LastName'].', '.$row['FirstName'] .' ('.$row['phone'].')'; $ret['results'][$key] = $label; } return $ret; } }