libreccm-legacy/ccm-cms-publicpersonalprofile/doc/freemarker/ccm-cms-publicpersonalprofi...

210 lines
6.4 KiB
Markdown

# Freemarker functions for Public Personal Profiles
Import path
: `/ccm-cms-publicpersonalprofile.md`
Functions for processing the data of a public personal profile.
## `getProfileOwner(data: Node): Node`
Get the data about the profile owner. The return value is a XML node
which can be further processed with other functions.
## `getProfileOwnerSurname(owner: Node): String`
Gets the surname of a profile owner.
## `getProfileOwnerGivenName(owner: Node): String`
Gets the given name of a profile owner.
## `getProfileOwnerTitlePre(owner: Node): String`
Gets the titles a profile owner.
## `getProfileOwnerTitlePost(owner: Node): String`
Gets the titles a profile owner.
## `getProfilePosition(data: Node): String`
Returns the value of the `position` property of a profile.
## `getProfileInterests(data: Node): String`
Returns the value of the `interests` property of a profile.
## `getProfileMisc(data: Node): String`
Returns the value of the `misc` property of a profile.
## `getProfileOwnerContact(owner: Node): Node`
Gets the contact data of the owner. The contact data is in the same
format as a content item of the type `ccm-cms-types-contact`. The
returned data can be processed further using the functions for content
items of the type `ccm-cms-types-contact?`. The functions provided
by the `ccm-cms-types-contact` module can be used to process this data.
## `getProfileImage(data: Node): String`
Returns the data of the image attached to the profile, if any.
The returned data is a image attachement which can be
processed further by the functions provided for processing image assets (see `ccm-cms-assets-imagestep`).
## `getProfileOwnerName(data: Node): String`
Gets the name of the profile owner which is the name of the content item of the type `Person` assigned to the profile.
## `getPersonalPublications(data: Node): Sequence<Node>`
Gets the data about the personal publications of the profile owner,
organized in publications groups.
## `getPersonalPublicationsAvailablePublicationGroups(data: Node): Sequence<Node>`
Get the available publications groups. The items of the sequence can be processed further using `getPublicationGroupId` and
`getPublicationGroupLink`.
## `getPublicationGroupId(group: Node): String`
Returns the ID of the publication group.
## `getPublicationGroupLink(group: Node): String`
Returns the link for showing the publications of the group.
## `getPublicationGroups(data: Node): Sequence<Node>`
Get all publication groups currently displayed.
## `getPublicationsOfGroup(data: Node): Sequence<Node>`
Gets the publiations of a group. The publication can be processed
further by the functions provided by `ccm-sci-publications`.
## `hasPublicationsPaginator(profile: Node): boolean`
Determines if there is paginator for the current publication group.
## `getPublicationsPaginatorBaseUrl(profile: Node): String`
Returns the base URL for the publications paginator.
## `getPublicationsPaginatorPageCount(profile: Node): String`
Returns the number of pages from the publications paginatator.
## `getPublicationsPaginatorPageNumber(profile: Node): String`
Returns the current page of the current publication group.
## `getPublicationsPaginatorPageParam(profile: Node): String`
Gets the name of the URL parameter for changing the current page.
## `getPublicationsPaginatorPageSize(profile: Node): String`
Gets the page size.
## `getPublicationsPaginatorObjectBegin(profile: Node): String`
Gets the index of the first displayed item of current publication group.
## `getPublicationsPaginatorObjectCount(profile: Node): String`
Gets the index of the number of items in the current publication group.
## `getPublicationsPaginatorObjectEnd(profile: Node): String`
Gets the index of the last displayed item of current publication group.
## `getPublicationsPaginatorPrevPageLink(profile: Node): String`
Gets the link to the previous page of the current publication group.
## `getPublicationsPaginatonFirstPageLink(profile. Node): String`
Gets the link the first page of the current publication group.
## `getPublicationsPaginatorNextPageLink(profile: Node): String`
Gets the link to the next page of the current publication group.
## `getPublicationsPaginatorLastPageLink(profile: Node): String`
Gets the link to the last page of the current publication group.
## `getAvailableProjectGroups(data: Node): Sequence<Node>`
Returns the available project groups. The sequence can be processed
further using `getProjectGroupId` and `getProjectGroupLink`.
## `getProjectGroupId(group: Node): String`
Returns the ID of the Project group.
## `getProjectGroupLink(group: Node): String`
Returns the link for showing the Projects of the group.
#### `getProjectGroups(data: Node): String`
Gets all project groups currently displayed.
## `getProjectsOfGroup(data: Node): Sequence<Node>`
Gets the projects of a group. The projects can be processed
further by the functions provided by `ccm-sci-types-project`.
## `hasProjectsPaginator(profile: Node): boolean`
Determines if the current project group has a paginator.
## `getProjectsPaginatorBaseUrl(profile: Node): String`
Returns the base URL for the projects paginator.
## `getProjectsPaginatorPageCount(profile: Node): String`
Returns the number of pages from the project paginatator.
## `getProjectsPaginatorPageNumber(profile: Node): String`
Returns the current page of the current project group.
## `getProjectsPaginatorPageParam(profile: Node): String`
Gets the name of the URL parameter for changing the current page.
## `getProjectsPaginatorPageSize(profile: Node): String`
Gets the page size.
## `getProjectsPaginatorObjectBegin(profile: Node): String`
Gets the index of the first displayed item of current project group.
## `getProjectsPaginatorObjectCount(profile: Node): String`
Gets the number of items in the current project group.
## `getProjectsPaginatorObjectEnd(profile: Node): String`
Gets the index of the last displayed item of current project group.
## `getProjectsPaginatorPrevPageLink(profile: Node): String`
Gets the link to the previous page of the current project group.
## `getProjectsPaginatonFirstPageLink(profile: Node): String`
Gets the link the first page of the current project group.
## `getProjectsPaginatorNextPageLink(profile: Node): String`
Gets the link to the next page of the current project group.
## `getProjectsPaginatorLastPageLink(profile: Node): String`
Gets the link to the last page of the current project group.