-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathmir-badges-orcid.xsl
More file actions
39 lines (34 loc) · 1.63 KB
/
mir-badges-orcid.xsl
File metadata and controls
39 lines (34 loc) · 1.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="3.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
exclude-result-prefixes="#all">
<xsl:import href="xslImport:badges:badges/mir-badges-orcid.xsl"/>
<xsl:import href="resource:xslt/orcid/mir-orcid-user.xsl"/>
<xsl:include href="resource:xslt/orcid/mir-orcid-work.xsl"/>
<xsl:include href="resource:xslt/badges/mir-badges-utils.xsl"/>
<xsl:template match="doc" mode="badge">
<xsl:apply-imports/>
<xsl:if test="not($isCurrentUserGuest)
and $isOrcidEnabled
and count($userOrcids) > 0
and (
str[@name='state'][. = 'published']
or field[@name='state'][. = 'published']
)">
<xsl:variable name="currentUserMatchingTrustedIds">
<xsl:call-template name="check-current-user-has-trusted-matching-id">
<xsl:with-param name="nameIds" select="arr[@name='mods.nameIdentifier']/str | field[@name='mods.nameIdentifier']"/>
</xsl:call-template>
</xsl:variable>
<xsl:if test="normalize-space($currentUserMatchingTrustedIds) = 'true'">
<xsl:variable name="objectId" select="string((str[@name='id'] | field[@name='id'])[1])"/>
<span class="badge mir-badge-orcid-in-profile" data-object-id="{$objectId}">
<i class="fa-brands fa-orcid"></i>
<span class="mir-badge-orcid-in-profile-text">
<xsl:value-of select="document('i18n:mir.orcid.publication.badge.inProfile.loading')/i18n/text()"/>
</span>
</span>
</xsl:if>
</xsl:if>
</xsl:template>
</xsl:stylesheet>