Skip to content
Snippets Groups Projects
Commit 6d5b85bf authored by Demian Katz's avatar Demian Katz
Browse files

Merge pull request #280 from quartsize/symphony-email

Symphony: include email address in information returned by patronLogin
parents 2f6a43a5 bcfc9966
No related merge requests found
...@@ -1121,7 +1121,32 @@ class Symphony extends AbstractBase ...@@ -1121,7 +1121,32 @@ class Symphony extends AbstractBase
$patron['lastname'] = $matches[1]; $patron['lastname'] = $matches[1];
} }
// @TODO: email, major, college // There may be an email address in any of three numbered addresses,
// so we search each one until we find an email address,
// starting with the one marked primary.
$addrinfo_check_order = array('1','2','3');
if (isset($resp->patronAddressInfo->primaryAddress)) {
$primary_addr_n = $resp->patronAddressInfo->primaryAddress;
array_unshift($addrinfo_check_order, $primary_addr_n);
}
foreach ($addrinfo_check_order as $n) {
$AddressNInfo = "Address{$n}Info";
if (isset($resp->patronAddressInfo->$AddressNInfo)) {
$addrinfos = is_array($resp->patronAddressInfo->$AddressNInfo)
? $resp->patronAddressInfo->$AddressNInfo
: array($resp->patronAddressInfo->$AddressNInfo);
foreach ($addrinfos as $addrinfo) {
if ($addrinfo->addressPolicyID == 'EMAIL'
&& !empty($addrinfo->addressValue)) {
$patron['email'] = $addrinfo->addressValue;
break;
}
}
}
}
// @TODO: major, college
return $patron; return $patron;
} }
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment