- Prämie als Betriebsausgabe absetzbar
- Deckungskapitals ist aktivierungspflichtig
- Bildung von steuerfreien Rückstellungen
- Firmenpension ist lohnsteuerpflichtig
Fehler bei der Verarbeitung der Vorlage.
Java method "com.liferay.portlet.documentlibrary.model.impl.DLFileEntryImpl.getContentStream()" threw an exception when invoked on com.liferay.portlet.documentlibrary.model.impl.DLFileEntryImpl object "{\"mvccVersion\": 0, \"ctCollectionId\": 0, \"uuid\": \"8831b17c-8527-ad94-ce83-38ac0692a54e\", \"fileEntryId\": 353544, \"groupId\": 31707, \"companyId\": 20116, \"userId\": 37888, \"userName\": \"Stefan Steinacher\", \"createDate\": \"Mon Jun 15 08:37:15 CEST 2020\", \"modifiedDate\": \"Mon Jun 15 08:37:15 CEST 2020\", \"classNameId\": 0, \"classPK\": 0, \"repositoryId\": 31707, \"folderId\": 258806, \"treePath\": \"/41869/258806/\", \"name\": \"10631\", \"fileName\": \"Pensionszusage 1320x730.jpg\", \"extension\": \"jpg\", \"mimeType\": \"image/jpeg\", \"title\": \"Pensionszusage 1320x730.jpg\", \"description\": \"\", \"extraSettings\": \"\", \"fileEntryTypeId\": 0, \"version\": \"1.0\", \"size\": 75789, \"smallImageId\": 0, \"largeImageId\": 0, \"custom1ImageId\": 0, \"custom2ImageId\": 0, \"manualCheckInRequired\": false, \"lastPublishDate\": null}"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: tmpImageBag = ImageToolUtil.read(file... [in template "20116#20152#BKS-INFOGRAFIK" in function "getImageData" at line 90, column 25] ----
1<#assign
2 DLFileEntryService = serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService')
3 ImageToolUtil = serviceLocator.findService('com.liferay.portal.kernel.image.ImageToolUtil')
4 ImageService = serviceLocator.findService('com.liferay.portal.kernel.service.ImageService')
5/>
6
7${Content.getData()}
8
9<#if Image.getData()?? && Image.getData() != "">
10
11 <#assign
12 pswpGalleryId = "pswp-gallery" + randomNamespace
13
14 altText = Image.getAttribute("alt")
15
16 imageData = getImageData(Image)
17
18 <#-- linkText = imageData["title"] -->
19 <#-- linkTitle = languageUtil.format(locale, "download-x", linkText, false) -->
20 <#-- linkSubText = ' <span class="file-info">(' + imageData["fileType"]?upper_case + ' - ' + formatFilesize(imageData["fileSize"]?number) + ')</span>' -->
21
22 imageSize = imageData["width"] + 'x' + imageData["height"]
23 />
24 <#if !Image.getAttribute("alt")?? || Image.getAttribute("alt") == "">
25 <#assign
26 altText = imageData["description"]
27 />
28 </#if>
29
30 <div id="${pswpGalleryId}" class="pswp-gallery" itemscope itemtype="http://schema.org/ImageGallery">
31 <figure class="pspw-gallery-item content-media-element media-element-info" itemprop="associatedMedia" itemscope itemtype="http://schema.org/ImageObject">
32 <a href="${Image.getData()}" title="<@liferay.language key="show-image" />" itemprop="contentUrl" data-size="${imageSize}">
33 <img data-fileentryid="${Image.getAttribute("fileEntryId")}" alt="${altText}" src="${Image.getData()}" itemprop="thumbnail" />
34 </a>
35 <figcaption class="sr-only" itemprop="caption description">${altText}</figcaption>
36 </figure>
37 </div>
38 <#--
39 <p>
40 <a class="link-icon link-download" href="${Image.getData()}" title="${linkTitle}" download target="_blank">${linkText} ${linkSubText}</a>
41 </p>
42 -->
43
44 <script>
45 Liferay.Loader.require([
46 'bks-main-theme-js-modules@2.0.0/photoswipe/photoswipe.min',
47 'bks-main-theme-js-modules@2.0.0/photoswipe/photoswipe-ui-default.min',
48 'bks-main-theme-js-modules@2.0.0/photoswipe/photoswipe-from-dom'
49 ],
50 function( PhotoSwipe, PhotoSwipeUI_Default, PhotoSwipeFromDOM) {
51 PhotoSwipeFromDOM(".pswp-gallery", PhotoSwipe, PhotoSwipeUI_Default);
52 },
53 function(error) {
54 console.error(error);
55 }
56 );
57 </script>
58</#if>
59
60<#function getImageData Image>
61 <#assign imageData = {
62 "image" : "",
63 "title" : "",
64 "description" : "",
65 "fileType" : "",
66 "fileSize" : 0,
67 "width" : 0,
68 "height" : 0
69 }
70 />
71 <#if Image.getAttribute("id")?? && Image.getAttribute("id") != "">
72 <#assign
73 tmpImage = ImageService.getImage(Image.getAttribute("id")?number)
74
75 imageData = {
76 "image" : tmpImage,
77 "title" : Image.getAttribute("title"),
78 "description" : "",
79 "fileType" : tmpImage.getType(),
80 "fileSize" : tmpImage.getSize(),
81 "width" : tmpImage.getWidth(),
82 "height" : tmpImage.getHeight()
83 }
84 >
85 <#else>
86 <#assign fileEntry = getDLFileEntry(Image)>
87
88 <#assign
89 <#-- It's necessary to convert into ImageBag first to prevent authorization issue caused by company id beein 0/null on image -->
90 tmpImageBag = ImageToolUtil.read(fileEntry.getContentStream())
91 tmpImage = tmpImageBag.getRenderedImage()
92
93 imageData = {
94 "image" : tmpImage,
95 "title" : fileEntry.getTitle(),
96 "description" : fileEntry.getDescription(),
97 "fileType" : fileEntry.getExtension(),
98 "fileSize" : fileEntry.getSize(),
99 "width" : tmpImage.getWidth(),
100 "height" : tmpImage.getHeight()
101 }
102 >
103 </#if>
104
105 <#return imageData>
106</#function>
107
108<#function getDLFileEntry fileEntry>
109 <#assign dlFileEntry = ''>
110 <#if fileEntry.getAttribute("fileEntryId")?? && fileEntry.getAttribute("fileEntryId") != "">
111 <#assign
112 dlFileEntry = DLFileEntryService.getFileEntry(fileEntry.getAttribute("fileEntryId")?number)
113 />
114 <#else>
115 <#assign
116 dlFileEntry = getDLFileEntryFromUrl(fileEntry.getData())
117 />
118 </#if>
119 <#return dlFileEntry>
120</#function>
121
122<#function getDLFileEntryFromUrl fileUrl>
123 <#assign counter = 0 >
124 <#list "${fileUrl}"?split("/") as pathSegemtent>
125 <#if counter == 2>
126 <#assign groupId = pathSegemtent?number >
127 </#if>
128 <#if counter == 5>
129 <#assign subCounter = 0 >
130 <#list "${pathSegemtent}"?split("?") as subSegemtent>
131 <#if subCounter == 0>
132 <#assign uuId = subSegemtent >
133 </#if>
134 <#assign subCounter = subCounter+1 >
135 </#list>
136 </#if>
137 <#assign counter = counter+1 >
138 </#list>
139
140 <#assign dlFileEntry = DLFileEntryService.getFileEntryByUuidAndGroupId(uuId,groupId) >
141
142 <#return dlFileEntry>
143</#function>
144
145<#function formatFilesize fileSize>
146 <#assign GB = 1000000000 />
147 <#assign MB = 1000000 />
148 <#assign KB = 1000 />
149
150 <#if fileSize < MB >
151 <#assign val = fileSize / 1000 />
152 <#return val?string("###,##0.#")+'KB' >
153 <#elseif fileSize < GB >
154 <#assign val = fileSize / 1000000 />
155 <#return val?string("###,##0.#")+'MB' >
156 <#else>
157 <#assign val = fileSize />
158 <#return val?string("###,##0.#")+'B' >
159 </#if>
160</#function>