Freemarker support for publications

git-svn-id: https://svn.libreccm.org/ccm/trunk@5959 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2019-04-19 15:01:34 +00:00
parent 8f80e728b4
commit fdfb0bc4ac
12 changed files with 362 additions and 0 deletions

View File

@ -126,3 +126,7 @@
<#return item["./summary"]> <#return item["./summary"]>
</#if> </#if>
</#function> </#function>
<#function generateContentItemLink oid>
<#return "${contextPrefix}/redirect/?oid=${oid}">
</#function>

View File

@ -0,0 +1,12 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#import ../ccm-cms.ftl as CMS>
<#function getHref article>
<#return CMS.generateContentItemLink(article["./@oid"])>
</#function>

View File

@ -0,0 +1,35 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#function getLink author keyId>
<#return author["./contacts/contact/contactentries[./keyId = '${keyId}']/value"]>
</#function>
<#function getId author>
<#return author["./masterVersion/id"] + "_" + author["./@name"]>
</#function>
<#function getPosition author>
<#return author["./position()"]>
</#function>
<#function isLast author>
<#return author["./last()"]>
</#function>
<#function getSurname author>
<#return author["./surname"]>
</#function>
<#function getGivenName author>
<#return author["./givenname"]>
</#function>
<#function isEditor author>
<#return author["./@isEditor"] == "true">
</#function>

View File

@ -0,0 +1,12 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#import ../ccm-cms.ftl as CMS>
<#function getHref collectedVolume>
<#return CMS.generateContentItemLink(collectedVolume["./@oid"])>
</#function>

View File

@ -0,0 +1,19 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#function getHref exportLink>
<#return "${dispatcherPrefix}/scipublications/export/?format=${exportLink['./formatKey']}&publication=${exportLink['./publicationId']}">
</#function>
<#function getFormatKey exportLink>
<#return exportLink["./formatKey"]>
</#function>
<#function getFormatName exportLink>
<#return exportLink["./formatName"]>
</#function>

View File

@ -0,0 +1,17 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#import ../ccm-cms.ftl as CMS>
<#function getTitle journal>
<#return journal["./title"]>
</#function>
<#function getHref journal>
<#return CMS.generateContentItemLink(journal["./@oid"])>
</#function>

View File

@ -0,0 +1,24 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#function getLibrary signature>
<#return signature["./library"]>
</#function>
<#function getSignature signature>
<#return signature["./signature"]>
</#function>
<#function getLibraryLink signature>
<#return signature["./libraryLink"]>
</#function>
<#function getMisc signature>
<#return signature["./misc"]>
</#function>

View File

@ -0,0 +1,10 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#function getName orderer>
<#return orderer["./title"]>
</#function>

View File

@ -0,0 +1,16 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#import ../ccm-cms.ftl as CMS>
<#function getHref proceedings>
<#return CMS.generateContentItemLink(proceedings["./@oid"])>
</#function>
<#function getPaperHref paper>
<#return CMS.generateContentItemLink(paper["./@oid"])>
</#function>

View File

@ -0,0 +1,174 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#function getAssignedTermsDomains item domain>
<#return item["./terms:assignedTerms/terms:term[@domain='${domain}']]>
</#function>
<#function getAuthors item>
<#return item["./authors/author"]>
</#function>
<#function getPublisher item>
<#return item["./publisher"]>
</#function>
<#function getYearOfPublication item>
<#return item["./yearOfPublication"]>
</#function>
<#function getNumberOfPages item>
<#return item["./numberOfPages"]>
</#function>
<#function getNumberOfVolumes item>
<#return item["./numberOfVolumes"]>
</#function>
<#function getVolume item>
<#return item["./volume"]>
</#function>
<#function getEdition item>
<#return item["./edition"]>
</#function>
<#function getIsbn item>
<#return item["./isbn"]>
</#function>
<#function getLanguageOfPublication item>
<#return item["./languageOfPublication"]>
</#function>
<#function getSeries item>
<#return item["./series/series"]>
</#function>
<#function isReviewed item>
<#return item["./reviewed"] == "true">
</#function>
<#function getAbstract item>
<#return item["./abstract"]>
</#function>
<#function getMisc item>
<#return item["./misc"]>
</#function>
<#function getExportLinks item>
<#return item["./publicationExportLink"]>
</#function>
<#function getPlace item>
<#return item["./place"]>
</#function>
<#function getPagesFrom item>
<#return item["./pagesFrom"]>
</#function>
<#function getPagesTo item>
<#return item["./pagesTo"]>
</#function>
<#function getNumber item>
<#return item["./number"]>
</#function>
<#function getYearFirstPublished item>
<#return item["./yearFirstPublished"]>
</#function>
<#function getLibrarySignatures item>
<#return item["./librarysignatures/librarysignatures"]>
</#function>
<#function getOrganization item>
<#return item["./organization"]>
</#function>
<#function getOrderer item>
<#return item["./orderer]>
</#function>
<#function getIssn item>
<#return item["./issn"]>
</#function>
<#function getLastAccessed item>
<#return item["./lastAccessed"]>
</#function>
<#function getUrl item>
<#return item["./url"]>
</#function>
<#function getUrn item>
<#return item["./getUrn"]>
</#function>
<#function getDoi item>
<#return item["./doi"]>
</#function>
<#function getIssue item>
<#return item["./issue"]>
</#function>
<#function getJournal item>
<#return item["./journal"]>
</#function>
<#function getCollectedVolume item>
<#return item["./collectedVolume"]>
</#function>
<#function getChapter item>
<#return item["./chapter"]>
</#function>
<#function getNameOfConference item>
<#return item["./nameOfConference"]>
</#function>
<#function getPlaceOfConference item>
<#return item["./placeOfConference"]>
</#function>
<#function getDateFromOfConference item>
<#return item["./dateFromOfConference"]>
</#function>
<#function getDateToOfConference item>
<#return item["./dateToOfConference"]>
</#function>
<#function getProceedings item>
<#return item["./proceedings"]>
</#function>
<#function getArticles item>
<#return item["./articles/article"]>
</#function>
<#function getProceedigingsPapers item>
<#return item["./papers/paper"]>
</#function>
<#function getSeriesVolumes item>
<#return item["./volumes/publication"]>
</#function>
<#function getEvent item>
<#return item["./event"]>
</#function>
<#function getDateOfTalk item>
<#return item["./dateOfTalk"]>
</#function>

View File

@ -0,0 +1,14 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#function getName publisher>
<#return publisher["./publisherName"]>
</#function>
<#function getPlace publisher>
<#return publisher["./place"]>
</#function>

View File

@ -0,0 +1,25 @@
<#ftl ns_prefixes={
"bebop":"http://www.arsdigita.com/bebop/1.0",
"cms":"http://www.arsdigita.com/cms/1.0",
"nav":"http://ccm.redhat.com/navigation",
"ui": "http://www.arsdigita.com/ui/1.0"}
>
<#import ../ccm-cms.ftl as CMS>
<#function getLink series>
<#return CMS.generateContentItemLink(series)>
</#function>
<#function getName series>
<#return series["./title"]>
</#function>
<#function getVolume series>
<#return series["./volume"]>
</#function>
<#function getVolumeHref volume>
<#return CMS.generateContentItemLink(volume)>
</#function>