Fix format type mismatch
The format type that is listed on search results, record details, and
place hold form doesn't match what is listed in the selection option
list of the checkout dialogue.
To remove the mismatch, we need to use the format types found in the
checkout action object, which is gotten from Availability, rather than
the basic list found from Metadata. The difference is presumably due to
Advantage accounts.
For search results or record details, we omit the call for Metadata and
substitute the format types from checkout action. For place hold form,
we cannot omit a call to Metadata, because it supplies title details as
well as format types. Therefore, we have to reschedule the asynchronous
calls to Metadata and Availability to run in parallel, wait for both
results, and then check to see if there is a checkout action in
Availability before being able to do the right thing.
Signed-off-by: Steven Chan <steven3416@gmail.com>