use partial for referenced <link>
s
This commit is contained in:
parent
fd6fc99ab0
commit
54a41716c6
3 changed files with 108 additions and 77 deletions
46
layouts/partials/util/get_licence_link.html
Normal file
46
layouts/partials/util/get_licence_link.html
Normal file
|
@ -0,0 +1,46 @@
|
|||
{{- /*
|
||||
Returns the URL for a given licence, either from the site data or from a defined URL.
|
||||
|
||||
@params licences_data Site data of licences, indexed by SPDX IDs.
|
||||
@params licence Licence identifier.
|
||||
@params licence_link Manually-defined licence URL. Optional.
|
||||
*/
|
||||
-}}
|
||||
|
||||
<!-- Validation -->
|
||||
|
||||
{{- if ( not ( isset . "licences_data" ) ) -}}
|
||||
{{- errorf "No licence data passed to partial" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- if ( not ( isset . "licence" ) ) -}}
|
||||
{{- errorf "No licence requested in partial" -}}
|
||||
{{- end -}}
|
||||
|
||||
<!-- Variable assignment -->
|
||||
|
||||
{{- $licences_data := .licences_data -}}
|
||||
{{- $licence := .licence -}}
|
||||
{{- $licence_link := .licence_link -}}
|
||||
|
||||
{{- $final_licence_link := "" -}}
|
||||
|
||||
<!-- Rendering -->
|
||||
|
||||
{{- if ( index $licences_data $licence ) -}}
|
||||
{{- if eq ( index $licences_data $licence ) $licence_link -}}
|
||||
{{- warnf "Redundant license link '%s' defined, it already exists in the site data" ( index $licences_data $licence ) -}}
|
||||
{{- $final_licence_link = ( index $licences_data $licence ) -}}
|
||||
{{- else -}}
|
||||
{{- if ( and ( $licence_link ) ( not ( eq ( index $licences_data $licence ) $licence_link ) ) ) -}}
|
||||
{{- warnf "Licence '%s' has a different link ('%s') defined in the site data, using '%s' instead" $licence ( index $licences_data $licence ) $licence_link -}}
|
||||
{{- end -}}
|
||||
{{- $final_licence_link = $licence_link -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- else if $licence_link -}}
|
||||
{{- warnidf "licence-link-not-in-site-data" "License link '%s' for licence '%s' should be in the site data, unless it's rarely used" $licence_link $licence -}}
|
||||
{{- $final_licence_link = $licence_link -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- return $final_licence_link -}}
|
Loading…
Add table
Add a link
Reference in a new issue