An error occurred while processing the template.
The following has evaluated to null or missing:
==> voucher.promo_amount  [in template "10113#11634844#1449554318" at line 35, column 122]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${voucher.promo_amount.getData()}  [in template "10113#11634844#1449554318" at line 35, column 120]
----
1<#assign liferay_theme = PortletJspTagLibs["/META-INF/liferay-theme.tld"] /> 
2<#assign portlet  = PortletJspTagLibs["/META-INF/liferay-portlet.tld"] /> 
3<@liferay_theme["defineObjects"] /> 
4<@portlet["defineObjects"] /> 
5 
6${header_text.getData()!""} 
7 
8<div class="col-md-12 col-lg-6" id="vouchersList"> 
9    <div class="body-text-l--bold d-none d-md-block">Odaberi bon</div> 
10    <ul class="voucher__radio-cards-grid"> 
11 
12        <#if vouchers.getSiblings()?has_content> 
13            <#assign sapMM = "" /> 
14            <#assign amount = "" /> 
15            <#assign price = "" /> 
16            <#assign defaultSapMM = "" /> 
17            <#list vouchers.getSiblings() as voucher> 
18                <#if getterUtil.getBoolean(voucher.show_voucher.getData(), false)> 
19                    <#assign is_default=""/> 
20                    <#if getterUtil.getBoolean(voucher.is_default.getData(), false) > 
21                        <#assign is_default="checked"/> 
22                        <#assign defaultSapMM = voucher.sap_mm.getData() /> 
23                        <#assign defaultVoucherPrice = voucher.price.getData() /> 
24                    </#if> 
25                    <li class="voucher-radio-card js-choose-topup-amount" data-voucher-index="${voucher?index + 1}" data-price="${voucher.price.getData()}" data-value="${voucher.price.getData()}" data-mm="${voucher.sap_mm.getData()}"> 
26                        <#assign sapMM = voucher.sap_mm.getData() /> 
27                        <#assign amount = voucher.amount.getData() /> 
28                        <#assign price = voucher.price.getData() /> 
29                        <input class="voucher-radio-card__input" type="radio" name="topupAmount" id="topupAmount${price}" value="${price}" data-bonus-amount="${amount}" ${is_default} data-button-text="${price} €" data-portlet-name="Vouchers"> 
30                        <label for="topupAmount${price}"><i class="voucher-radio-card__indicator"></i> 
31                            <span class="voucher-radio-card__topup-amount"> 
32                                <span class="text-base--bold">${price} </span> 
33                                <span class="currency">€</span> 
34                            </span> 
35                            <div class="voucher-radio-card__bonus-mb"><span class="voucher-radio-card__bonus-mb-value">${voucher.promo_amount.getData()}</span> ${voucher.promo_text.getData()}</div> 
36                            <#if voucher.promo_description?? > 
37                                <div class="voucher-radio-card__bonus-mb-desccription">${voucher.promo_description.getData()}</div> 
38                            </#if> 
39                        </label> 
40                    </li> 
41                </#if> 
42            </#list> 
43            <li class="voucher-radio-card js-choose-topup-amount js-choose-custom" data-value="" data-voucher-index="6" data-mm="${variable_sap_mm.getData()}"> 
44                <input class="voucher-radio-card__input" type="radio" value="custom" name="topupAmount" id="topupAmountChoice" data-button-text="Unesi vlastiti iznos bona" data-portlet-name="Vouchers"> 
45                <label for="topupAmountChoice"><i class="indicator"></i> 
46                    <div class="voucher-radio-card__amount-label">Unesi vlastiti iznos bona</div> 
47                    <div class="d-flex items-center"> 
48                        <div class="field field-text voucher-radio-card__amount-input js-form-field"> 
49                            <input type="text" name="price" id="voucher-value" class="field-text__input js-form-input" placeholder="50" maxlength="3" disabled onkeypress="return event.charCode >= 48 &amp;&amp; event.charCode <= 57" onpaste="return false;" autocomplete="on" /> 
50                        </div> 
51                        <div class="md:text-lg ml-2"><strong>€</strong></div> 
52                    </div> 
53                </label> 
54            </li> 
55            <input type="hidden" name="sapMM" id="sapMM" value="${defaultSapMM}" placeholder="" /> 
56            <input type="hidden" id="voucherPrice" value="${defaultVoucherPrice}" /> 
57        </#if> 
58    </ul> 
59    <div class="voucher-form__info-label text-xs md:text-sm mb-6 mt-12">Cijena uključuje PDV i naknadu za korištenje mreže definiranu 
60        <a href="${link_pricelist.getData()}" class="text-link is-black has-border">Cjenikom</a> 
61    </div> 
62</div> 
63 
64<script type="text/javascript"> 
65    $(document).ready(function(){ 
66        $(".js-choose-topup-amount").on("click", function(e) { 
67            $this = $(this); 
68            $("#sapMM").val($this.data("mm")); 
69            $("#voucherPrice").val($this.data("price")); 
70        }); 
71    }); 
72 
73    $(".voucher-radio-card input").on("click", "", function(){ 
74        window.dataLayer = window.dataLayer || []; 
75        var component = $(this).parent(); 
76        var price = component.find("input").val(); 
77        var priceNew = price.split(" ")[0].replace(",", "."); 
78        if(priceNew.split(".").length == 1){ 
79            priceNew = priceNew.concat(".00"); 
80
81        var name = "A1 Elektronski bon " + price + " €"; 
82        var id = component.data("mm"); 
83        window.dataLayer.push({ 
84            'event': 'productClick', 
85            'ecommerce': { 
86                'currencyCode': 'EUR', 
87                'click':{ 
88                    'actionField': {'list': 'bonovi svi'}, 
89                    'products':[{ 
90                        'name': name, 
91                        'id': id, 
92                        'price': priceNew, 
93                        'brand': 'A1', 
94                        'category': 'bonovi', 
95                        'position': component.data("voucher-index") 
96                    }] 
97
98
99        }); 
100 
101        var buttonText = $(this).data("button-text"); 
102        var portlet = $(this).closest(".portlet")[0].id === "portlet_vouchers_WAR_a1vouchers" && "Vouchers"; 
103        var elementHeading = $(".Voucher-headline").text().trim(); 
104 
105        window.dataLayer = window.dataLayer || []; 
106        window.dataLayer.push({ 
107            'event': 'interaction', 
108            'portlet_name': portlet, 
109            'button_text': buttonText, 
110            'element_heading': elementHeading, 
111        }); 
112 
113        var selectedVoucherIndex = $(".voucher-radio__input:checked").parent().data("voucher-index") - 1; 
114        let selectedVoucher = voucherItems[selectedVoucherIndex]; 
115 
116        if(selectedVoucherIndex === 5) { 
117            var voucherPrice = $("#voucher-value").val(); 
118            selectedVoucher = { 
119                'item_name': "Unesi vlastiti iznos bona", 
120                'item_brand': 'A1', 
121                'item_category': 'Bonovi', 
122                'item_category5': 'Prepaid', 
123                'product_segment': 'MOB', 
124                'price': voucherPrice, 
125                'discount': 0, 
126                'original_price': voucherPrice, 
127                'upfront_price': voucherPrice, 
128                'monthly_price': 0, 
129                'tax': calculateVAT(voucherPrice), 
130                'quantity': 1, 
131                'availiblity': 'in_stock', 
132                'item_list_name': 'Bonovi', 
133                'index': "6", 
134                'google_business_vertical': 'custom' 
135            }; 
136
137 
138        window.dataLayer.push({ 
139            'event': 'view_item', 
140            'ecommerce': { 
141                'items': [selectedVoucher] 
142
143        }); 
144    }); 
145 
146    window.dataLayer = window.dataLayer || []; 
147    var vouchersObjectList = []; 
148    $.each($(".voucher-radio-card"), function(){ 
149        var price = $(this).find("input").val(); 
150        var name = "A1 Elektronski bon " + price + " €"; 
151        var priceNew = price.split(" ")[0].replace(",", "."); 
152        if(priceNew.split(".").length == 1){ 
153            priceNew = priceNew.concat(".00"); 
154
155        var id = $(this).data("mm"); 
156        var voucherObject = { 
157            'name': name, 
158            'id': id, 
159            'price': priceNew, 
160            'brand': 'A1', 
161            'category': 'bonovi', 
162            'position': $(this).data("voucher-index"), 
163            'list': 'bonovi svi' 
164        }; 
165        vouchersObjectList.push(voucherObject); 
166    }); 
167    window.dataLayer.push({ 
168        'event': 'productImpressions', 
169        'ecommerce': { 
170            'currencyCode': 'EUR', 
171            'impressions': vouchersObjectList 
172
173 
174    }); 
175 
176 
177</script> 
178 
179<script> 
180    function calculateVAT(cijena) { 
181        var cijenaSaPDV = cijena; 
182        var pdv = 25 / 100; 
183        var osnovica = Number.parseFloat((cijenaSaPDV) / (1 + pdv)).toFixed(2); 
184        var porez = cijenaSaPDV - osnovica; 
185 
186        return porez; 
187
188 
189    var voucherItems = [<#list vouchers.getSiblings() as voucher> 
190
191            'item_id': '${voucher.sap_mm.getData()}', 
192            'item_name': "A1 Elektronski bon ${voucher.price.getData()} €", 
193            'item_brand': 'A1', 
194            'item_category': 'Bonovi', 
195            'item_category5': 'Prepaid', 
196            'product_segment': 'MOB', 
197            'price': ${voucher.price.getData()}, 
198            'discount': 0, 
199            'original_price': ${voucher.price.getData()}, 
200            'upfront_price': ${voucher.price.getData()}, 
201            'monthly_price': 0, 
202            'tax': calculateVAT(${voucher.price.getData()}), 
203            'quantity': 1, 
204            'availiblity': 'in_stock', 
205            'item_list_name': 'Bonovi', 
206            'index': "${voucher?index + 1}", 
207            'id': '${voucher.sap_mm.getData()}', 
208            'google_business_vertical': 'custom' 
209        }, 
210        </#list>]; 
211</script> 
Unesi broj za nadoplatu
+385
Odaberi način plaćanja
Unesi email adresu na koju ćeš primati račun

Na sljedećem koraku ćemo te prebaciti na sigurne stranice Corvus servisa za plaćanje gdje ćeš unijeti podatke za plaćanje.

Na sljedećem koraku otvorit će ti se prozor za sigurno plaćanje Revolut Pay-om.

Na sljedećem koraku ćemo te prebaciti na sigurne stranice Paypal servisa za plaćanje gdje ćeš unijeti podatke za plaćanje.