Skip to content
Snippets Groups Projects
Commit 106acdd8 authored by Damyan Mitev's avatar Damyan Mitev :beach:
Browse files

take into account disabled vCard

parent b2454450
No related branches found
No related tags found
1 merge request!71[VCL] Sign generated v-card upon using a profile
...@@ -1429,21 +1429,45 @@ const connection = Penpal.connectToParent({ ...@@ -1429,21 +1429,45 @@ const connection = Penpal.connectToParent({
return encodeResponse("400", "", "Identity not authenticated"); return encodeResponse("400", "", "Identity not authenticated");
} }
const vCardImageResponse = await executeRestfulFunction( const vCardImageClaimName = "vCardImage";
const defaultTagName = "notag";
const vCardClaimResponse = await executeRestfulFunction(
"private", "private",
window.viamApi, window.viamApi,
window.viamApi.passportGetVCardImage, window.viamApi.entityGetClaim,
null, null,
vCardImageClaimName,
defaultTagName,
passportUUID passportUUID
); );
if (vCardImageResponse.code !== "200") { if (vCardClaimResponse.code !== "200") {
return encodeResponse("400", "", vCardImageResponse.status); return encodeResponse("400", "", vCardClaimResponse.status);
} }
const vCardImageData = new ImageData(vCardImageResponse.data); let vCardImageData;
if (vCardImageData.contentType !== "image/png") { const vCardImageClaimValue = vCardClaimResponse.data;
return encodeResponse("400", "", "Content type of vCard mmust be 'image/png'"); if ("state" in vCardImageClaimValue && vCardImageClaimValue.state === "disabled") {
vCardImageData = new ImageData({
contentType: "image/png",
contentBase64: "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=", //1x1px transparent pixel
});
} else {
const vCardImageResponse = await executeRestfulFunction(
"private",
window.viamApi,
window.viamApi.passportGetVCardImage,
null,
passportUUID
);
if (vCardImageResponse.code !== "200") {
return encodeResponse("400", "", vCardImageResponse.status);
}
vCardImageData = new ImageData(vCardImageResponse.data);
if (vCardImageData.contentType !== "image/png") {
return encodeResponse("400", "", "Content type of vCard mmust be 'image/png'");
}
} }
if (!parts) { if (!parts) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment