/o//commerce-media/accounts/-1/images/18658911?download=true

Storage limiter
Icon
DXP App
18658164
This plugin allows setting maximum limit (in MB) on files loaded to Liferay for the different scopes.

Global
Site
Group
User

Keep your users and organization storage under control and make sure users know when they reach the limit.

The plugin presents the current space limit usage in both value and percentage form. It also informs the user whether uploaded files are about to extend the limit.
DEVELOPER
An error occurred while processing the template.
For "." left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> specifications  [in template "3192443#3192485#null" at line 16, column 36]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if specifications?has_content && spe...  [in template "3192443#3192485#null" at line 16, column 1]
----
1<#assign 
2	channels = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels") 
3	channelId = "" 
4/> 
5 
6<#list channels.items as channel> 
7	<#if channel.name == "Marketplace Channel"> 
8		<#assign channelId = channel.id /> 
9	</#if> 
10</#list> 
11 
12<#if (CPDefinition_cProductId.getData())??> 
13	<#assign specifications = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/" + channelId + "/products/" + CPDefinition_cProductId.getData() + "/product-specifications") /> 
14</#if> 
15 
16<#if specifications?has_content && specifications.items?has_content> 
17	<#list specifications.items as specification> 
18		<#if specification.specificationKey?has_content && specification.specificationKey == "developer-name"> 
19			${specification.value} 
20		</#if> 
21	</#list> 
22</#if> 
DEVELOPER
9/4/20 12:00 AM
Published date
September 4, 2020
Published Date
9/4/20 12:00 AM
SUPPORTED OFFERINGS
Self-Hosted, Self-Managed
Supported Versions
7.3
Resource Requirements
An error occurred while processing the template.
For "." left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> specifications  [in template "3192443#3192485#null" at line 17, column 36]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if specifications?has_content && spe...  [in template "3192443#3192485#null" at line 17, column 1]
----
1<#assign 
2	channelId="" 
3	channels=restClient.get("/headless-commerce-delivery-catalog/v1.0/channels") 
4	filteredSpecifications=[] 
5/> 
6 
7<#list channels.items as channel> 
8	<#if channel.name=="Marketplace Channel"> 
9		<#assign channelId = channel.id /> 
10	</#if> 
11</#list> 
12 
13<#if (CPDefinition_cProductId.getData())??> 
14	<#assign specifications = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/" + channelId + "/products/" + CPDefinition_cProductId.getData() + "/product-specifications") /> 
15</#if> 
16 
17<#if specifications?has_content && specifications.items?has_content> 
18 
19	<#assign 
20		cpuQuantity = "" 
21		memoryQuantity = "" 
22	/> 
23 
24	<#list specifications.items?sort_by("specificationKey") as specification> 
25		<#if stringUtil.equals(specification.value, "cloud")> 
26		    <script> 
27		        var resourceRequirements = document.querySelector(".marketplace-resource-requirements") 
28						 
29						resourceRequirements.classList.remove("d-none"); 
30		    </script> 
31		</#if> 
32		 
33		<#if specification.specificationKey?has_content && (stringUtil.equals(specification.specificationKey, "cpu") || stringUtil.equals(specification.specificationKey, "ram"))> 
34			<#if stringUtil.equals(specification.specificationKey, "cpu" )> 
35				<#assign cpuQuantity = specification.value /> 
36 
37				<#if cpuQuantity?has_content> 
38					${cpuQuantity} 
39					<#if cpuQuantity?eval gt 1> 
40						CPUS 
41					</#if> 
42					<#if cpuQuantity?eval lt 2> 
43						CPU 
44					</#if> 
45				</#if> 
46			</#if> 
47 
48			<#if stringUtil.equals(specification.specificationKey, "ram")> 
49				<#assign memoryQuantity = specification.value /> 
50 
51				<#if cpuQuantity?has_content && memoryQuantity?has_content >,</#if> 
52			</#if> 
53 
54			<#if stringUtil.equals(specification.specificationKey, "ram")> 
55				<#assign memoryQuantity = specification.value /> 
56 
57				<#if memoryQuantity?has_content> 
58					${memoryQuantity} GB RAM 
59				</#if> 
60			</#if> 
61		</#if> 
62	</#list> 
63</#if> 
Edition
CE
PRICE
An error occurred while processing the template.
For "." left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> specifications  [in template "3192443#3192485#null" at line 16, column 36]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if specifications?has_content && spe...  [in template "3192443#3192485#null" at line 16, column 1]
----
1<#assign 
2	channelId="" 
3	channels=restClient.get("/headless-commerce-delivery-catalog/v1.0/channels") 
4	filteredSpecifications=[] /> 
5 
6<#list channels.items as channel> 
7	<#if channel.name=="Marketplace Channel"> 
8		<#assign channelId = channel.id /> 
9	</#if> 
10</#list> 
11 
12<#if (CPDefinition_cProductId.getData())??> 
13	<#assign specifications = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/" + channelId + "/products/" + CPDefinition_cProductId.getData() + "/product-specifications") /> 
14</#if> 
15 
16<#if specifications?has_content && specifications.items?has_content> 
17	<#list specifications.items?sort_by("specificationKey") as specification> 
18		<#if specification.specificationKey?has_content> 
19			<#if stringUtil.equals(specification.specificationKey, "price-model" )> 
20				<#assign priceModel = specification.value /> 
21				<#if priceModel?has_content> 
22					${priceModel} 
23				</#if> 
24			</#if> 
25		</#if> 
26	</#list> 
27</#if> 
help & support
Terms & Conditions
SHARE LINK
Copy & Share Link

HTML Example

A paragraph is a self-contained unit of a discourse in writing dealing with a particular point or idea. Paragraphs are usually an expected part of formal writing, used to organize longer prose.