Skip to content

Commit 3a19b96

Browse files
committed
Merge pull request #1 from FreddyKaiser/master
Additional comments for on demand / Update in MIDSN parsing
2 parents 6d54e0a + 5aaee5d commit 3a19b96

2 files changed

Lines changed: 7 additions & 9 deletions

File tree

examples/demo-on-demand.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,12 +85,17 @@
8585

8686
// get information about the signing certificate:
8787
// $signatureData = SetaPDF_Signer_SwisscomAIS_Helper::getSignatureData($module);
88+
// echo("Signed by: " . $signatureData['subject'] . PHP_EOL);
89+
// echo("Unique Mobile ID serial number: " . $signatureData['MIDSN'] . PHP_EOL);
90+
8891

8992
} catch (SetaPDF_Signer_SwisscomAIS_Exception $e) {
9093
echo 'Error in SwisscomAIS: ' . $e->getMessage() . ' with code ' . $e->getCode() . '<br />';
9194
/* Get the AIS Error details */
9295
echo "<pre>";
9396
var_dump($e->getResultMajor());
9497
var_dump($e->getResultMinor());
98+
// Mobile ID user assistance URL in case online help is available
99+
var_dump($e->getMobileIdUserAssistanceUrl());
95100
echo "</pre>";
96101
}

src/SetaPDF/Signer/SwisscomAIS/Helper.php

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -88,16 +88,9 @@ static private function _getSignatureData($signature)
8888
if (isset($data['signerCertificate']['extensions']['subjectAltName'])) {
8989
$subjectAltName = $data['signerCertificate']['extensions']['subjectAltName'];
9090
// Format: 'DirName: serialNumber = ID-16981fa2-8998-4125-9a93-5fecbff74515, name = "+41798...", description = test.ch: Signer le document?, pseudonym = MIDCHEGU8GSH6K83'
91-
$subjectAltNameArray = explode(', ', $subjectAltName);
92-
foreach ($subjectAltNameArray as $value) {
93-
if (preg_match("/pseudonym = (.*)/", $value, $match))
94-
$data['MIDSN'] = $match[1];
91+
if (preg_match("/pseudonym = ([^,]*)/", $subjectAltName, $match)) {
92+
$data['MIDSN'] = $match[1];
9593
}
96-
97-
// isn't this the same?
98-
// if (preg_match("/pseudonym = (.*)/", $subjectAltName, $match)) {
99-
// $data['MIDSN'] = $match[1];
100-
// }
10194
}
10295

10396
return $data;

0 commit comments

Comments
 (0)