Artikkel

Artikkel

En feil oppsto under behandling av visningsmalen.
Expression qstringmap["bankercode"] is undefined on line 8, column 17 in 10153#10191#5883698.
1<#assign url = request.attributes.CURRENT_URL > 
2<#assign oadURL = propsUtil.get('elan.oad.url') > 
3<#assign qstringmap = httpUtil.getParameterMap(httpUtil.getQueryString(url))> 
4<#assign utilServ = serviceLocator.findService("crc-utilities-portlet", "com.elan.crc.utilities.service.CRCRemoteServiceService")> 
5<#assign url404 = '/error/404.html'> 
6<#assign oadURL_TC = 'https://online1.elancard.com/oad/terms.controller' > 
7 
8<#assign bCode= qstringmap["bankercode"]?first> 
9<#assign bData = utilServ.makeCall('crcDDCBankerAssistedAppDetailSql','0&'+bCode)> 
10<#list bData as b>      
11    <#assign lc = b.locationcode > 
12    <#assign rLC = b.reallocationcode > 
13    <#assign mappedLC = b.mappedLocationCode > 
14</#list>  
15<#if bCode?starts_with("amp") && (url?contains("11t1m"))> 
16    <#assign ameriprise = true> 
17<#else> 
18    <#assign ameriprise = false> 
19</#if> 
20 
21<#if mappedLC?has_content && !ameriprise> 
22    <#assign lc = mappedLC > 
23</#if> 
24 
25<#assign fiData= utilServ.makeCall('crcDDCBankerAssistedAppSql','0&'+bCode)> 
26<#if fiData?first?has_content> 
27    <#assign fi = fiData?first> 
28    <#if ((fi.projectId == "12") || (fi.projectId == "13") || (fi.projectId == "14"))> 
29        <#assign subbu_special = fi.offerId> 
30    </#if> 
31</#if> 
32 
33 
34<#if lc?has_content> 
35    <#assign prefix = "00000" > 
36    <#assign lcWithPrefix = prefix + lc> 
37    <#assign withPrefixLength = lcWithPrefix?length > 
38    <#assign startHere = withPrefixLength - 5> 
39    <#assign lc = lcWithPrefix?substring(startHere)>     
40    <#assign clientProfileService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcClientProfileLocalService") > 
41    <#assign clientProfileList = clientProfileService.findByLocationCode(lc)> 
42 
43    <#assign clientProfile = clientProfileList?first> 
44    <#assign partnerName = clientProfile.getMarketingNameLong()> 
45    <#assign pbu = clientProfile.getPbu()> 
46    <#assign subbu = clientProfile.getSUBBRANDBUNBR()>     
47    <#assign clientDataService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcPbuLocalService") > 
48    <#assign clientProfileDataList = clientDataService.getByPbuAndSubBu(pbu,subbu)> 
49    <#assign partnerUrl = clientProfileDataList.getPartnerMainUrl()> 
50    <#if partnerUrl?has_content && !partnerUrl?matches(r"(?i)^https?\:\/\/.*") && !partnerUrl?matches(r"(?i)^https?\:&#x2F;&#x2F;.*")>             
51        <#assign partnerUrl = 'https://' + partnerUrl> 
52    </#if> 
53 
54    <!-- <#assign clientdataList = utilServ.makeCall('crcDDCTier1Customizations','0&'+pbu+'&'+subbu+'&11')> 
55    <#if clientdataList?has_content > 
56        <#assign clientdata = clientdataList?first > 
57		<#assign backgroundHexColor = clientdata["backgroundHexColor"] > 
58		<#assign backgroundImage = clientdata["backgroundImage"] > 
59		<#assign buttonHexColor = clientdata["buttonHexColor"] > 
60		<#assign AprMin = clientdata["AprMin"] > 
61		<#assign AprMax = clientdata["AprMax"] > 
62		<#assign cashAdvanceRate = clientdata["cashAdvanceRate"] > 
63		<#assign BillingCycles = clientdata["BillingCycles"] > 
64		<#assign textHexColor = clientdata["textHexColor"] > 
65		<#assign linkHexColor = clientdata["linkHexColor"] > 
66		<#assign hoverColor = clientdata["hoverColor"] > 
67		<#assign secondaryBackgroundImage = clientdata["secondaryBackgroundImage"] > 
68		<#assign transparency = clientdata["transparency"] > 
69		<#assign businessBackgroundImageLarge = clientdata["businessBackgroundImageLarge"] > 
70		<#assign businessBackgroundImageSmall = clientdata["businessBackgroundImageSmall"] > 
71		<#assign businessTransparency = clientdata["businessTransparency"] > 
72		<#assign dmaBackgroundImage = clientdata["dmaBackgroundImage"] > 
73		<#assign secondaryDmaBackgroundImage = clientdata["secondaryDmaBackgroundImage"] > 
74	</#if> --> 
75	 
76    <#assign logoFileName = clientProfile.getLogoBFormat1()?replace(".", "-")?replace("-([^-]*)$", ".$1", "r")?lower_case> 
77    <#assign cdnLogoUrl = propsUtil.get('rackspace.cdn.web.url')> 
78        <script> 
79        console.log('logo url', '${cdnLogoUrl}${logoFileName}'); 
80    </script> 
81    <#if pbu == "0864054"> 
82        <#assign override = "berkshire"> 
83    <#else> 
84        <#assign override = " "> 
85    </#if> 
86    <#--  this one should be delete for prod  --> 
87                 
88    <#-- <#assign cdnLogoUrl = "https://4f61efb10f32ceb57895-3733e103896f37259213d6ad72acbe68.ssl.cf2.rackcdn.com">   
89    <#assign logoFileName = pbu + "-" + subbu + ".png">--> 
90 
91    <#assign cdnCardArtUrl = propsUtil.get('rackspace.cdn.cardart.url')> 
92    <#if (subbu_special?has_content)> 
93        <#assign fiCardsData = utilServ.makeCall('crcTier3GetPbuData','0&' + pbu + '&' + subbu_special)>  
94        <script> 
95            console.log('new subbu', '${subbu_special!''}'); 
96        </script>  
97    <#else> 
98        <#assign fiCardsData = utilServ.makeCall('crcTier3GetPbuData','0&' + pbu + '&' + subbu)>  
99    </#if> 
100    <#assign temp = []> 
101    <#assign consumerCards = []> 
102    <#assign businessCards = []>  
103    <#assign offerTypeList = []>       
104    <#assign index = 0> 
105    <#assign ameriprise_cards= []> 
106    <#assign consumerOfferTypes =['104', '101', '103', '108', '109', '115']> 
107    <#assign businessOfferTypes =['144', '128', '143', '121', '123']> 
108    <#list fiCardsData as fib> 
109        <#if (fib.offerType?has_content && !(offerTypeList?seq_contains(fib.offerType)))>   
110            <#assign offerTypeList = offerTypeList + [fib.offerType]> 
111            <#assign temp = temp + fiCardsData[index..index]>    
112            <#if ameriprise> 
113                <#if (fib.offerType == "101" || fib.offerType == "103")> 
114                    <#assign ameriprise_cards= ameriprise_cards + fiCardsData[index..index]> 
115                </#if>                      
116            <#else> 
117                <#if consumerOfferTypes?seq_contains(fib.offerType)> 
118                    <#assign consumerCards = consumerCards + fiCardsData[index..index]> 
119                <#elseif (businessOfferTypes?seq_contains(fib.offerType))> 
120                    <#assign businessCards = businessCards + fiCardsData[index..index]> 
121                </#if>             
122            </#if>                 
123        </#if>  
124        <#assign index = index + 1>   
125                     
126    </#list>        
127    <#assign fiCardsData = temp> 
128    <#if ameriprise> 
129        <#assign consumerCards = ameriprise_cards?sort_by("offerType")> 
130    </#if> 
131 
132    <#if (fiCardsData?size > 0)>   
133        <#if (subbu_special?has_content)> 
134            <#assign lc_used = fiCardsData?first.WebLocationCode>   
135        <#else> 
136            <#if ameriprise> 
137                <#assign lc_used = mappedLC>  
138            <#else> 
139                <#assign lc_used = lc>  
140            </#if> 
141        </#if>               
142        <#assign offerId = ""> 
143        <#assign sourceCode = ""> 
144        <#assign cardArtImage = ""> 
145        <#assign productUrl = ""> 
146        <#assign product = ""> 
147        <#assign preparerType = "customer"> 
148        <#assign apr = ""> 
149        <#assign cardIndex = 0>   
150        <#if (class.getData() == "landing-consumer" && consumerCards?size > 0)> 
151            <#if (offerTypeList?seq_contains("101")) || (offerTypeList?seq_contains("103")) > 
152                <#list consumerCards as card> 
153                    <#if (card.offerType=="101" || card.offerType=="103") > 
154                        <#assign offerId = card.offerId> 
155                        <#assign sourceCode = card.sourceCode> 
156                        <#assign cardArtImage = cdnCardArtUrl + "/"+card.filename+".png"> 
157                        <#assign cardArtImageAlt = cdnCardArtUrl + "/"+card.filename+".jpg"> 
158 
159                        <#assign productUrl="consumer-edr2112"> 
160                        <#assign product="Everyday Rewards+"> 
161                        <#assign cardIndex = 1> 
162 
163                        <#assign scrapedData = utilServ.makeCall('crcDDCGetSchumerBox', offerId + '&'+ sourceCode)> 
164                        <#if (scrapedData?size > 0)> 
165                            <#list scrapedData as sItem> 
166                            <script> 
167                              console.log("scrapped item", "${sItem.scrapedLabel}"); 
168                            </script> 
169                                <#if ((sItem.scrapedLabel?contains("Annual Percentage Rate (APR) for Purchases")) && (sItem.scrapedValue?has_content)) > 
170                                    <#assign apr = sItem.scrapedValue?replace("(\n|\r\n|\r)+", " ","r")> 
171                                    <#break> 
172                                </#if> 
173                            </#list> 
174                            <script> 
175                                $(document).ready(function () { 
176                                    var aprText = "${apr}"; 
177                                    if (aprText) { 
178                                        console.log("apr: " + aprText); 
179                                        try { 
180                                            $(".apr-full-text").html(aprText); 
181                                            var matches= aprText.match(/\d+(\.\d+)?%?/g); 
182                                            var billing_cycle = matches[1]; 
183                                            var apr_min = apr_min = matches[2]; 
184                                            var apr_max = apr_max = matches[3]; 
185                                            if (billing_cycle) { 
186                                                $(".scraped-billing-cycle").html(billing_cycle); 
187
188                                            if (apr_min) { 
189                                                $(".scraped-apr-min").html(apr_min); 
190
191                                            if (apr_max) { 
192                                                $('.scraped-apr-max').html(apr_max); 
193
194 
195                                        } catch (e) { 
196                                            console.log(e); 
197
198                                    } else { 
199                                      $(".apr-full-text").html(''); 
200
201                                }); 
202                            </script> 
203                        </#if> 
204                        <script> 
205                        var product = "${product}"; 
206                        var partnerName = "${partnerName}"; 
207                          $(document).ready(function () { 
208                            $(".see-terms").replaceWith('<a href="${oadURL_TC}?step=display&amp;offerId=${offerId}&amp;locationCode=${lc_used}" target="_blank"><span class="screen-reader-only">' + partnerName + ' ' + product + ' Card</span>See terms &amp; conditions</a>'); 
209                          }); 
210                        </script> 
211                    </#if> 
212                </#list> 
213            <#else> 
214                <#assign displayedCard = consumerCards[0]> 
215                <script> 
216                    console.log('dispalyed card:','${displayedCard.offerType}'); 
217                </script> 
218                <#assign offerId = displayedCard.offerId> 
219                <#assign sourceCode = displayedCard.sourceCode> 
220                <#assign cardArtImage = cdnCardArtUrl + "/"+ displayedCard.filename + ".png"> 
221                <#assign cardArtImageAlt = cdnCardArtUrl + "/"+ displayedCard.filename + ".jpg"> 
222                <#if ameriprise> 
223                    <#if (displayedCard.offerType == "101")> 
224                        <#assign productUrl="ameriprise-premier-visa-signature"> 
225                        <#assign product="Premier Visa Signature"> 
226                        <#assign cardIndex = 0> 
227                    <#elseif (displayedCard.offerType == "103")> 
228                        <#assign productUrl = "ameriprise-visa-signature"> 
229                        <#assign product="Visa Signature"> 
230                        <#assign cardIndex = 1> 
231                    </#if> 
232                <#else> 
233                        <#if (displayedCard.offerType == "101" || displayedCard.offerType == "103")> 
234                            <#assign productUrl="consumer-edr2112"> 
235                            <#assign product="Everyday Rewards+"> 
236                            <#assign cardIndex = 1>                           
237                        <#elseif (displayedCard.offerType == "108" || displayedCard.offerType == "109")> 
238                            <#assign productUrl = "consumer-platinum2103"> 
239                            <#assign product="Platinum">    
240                            <#assign cardIndex = 5>    
241                            <#assign scrapedData = utilServ.makeCall('crcDDCGetSchumerBox', offerId + '&'+ sourceCode)> 
242                            <#if (scrapedData?size > 0)> 
243                                <#list scrapedData as sItem> 
244                                    <#if ((sItem.scrapedLabel?contains("Annual Percentage Rate (APR) for Purchases")) && (sItem.scrapedValue?has_content)) > 
245                                        <#assign apr = sItem.scrapedValue?replace("(\n|\r\n|\r)+", " ","r")> 
246                                        <#break> 
247                                    </#if> 
248                                </#list> 
249                                <script> 
250                        console.log("apr"); 
251                                    $(document).ready(function () { 
252                                        var aprText = "${apr}"; 
253                                        if (aprText) { 
254                                            console.log("apr:" + aprText); 
255                                            try { 
256                                                $(".apr-full-text").html(aprText); 
257                                                var matches= aprText.match(/\d+(\.\d+)?%?/g); 
258                                                var billing_cycle = matches[1]; 
259                                                var apr_min = apr_min = matches[2]; 
260                                                var apr_max = apr_max = matches[3]; 
261                                                if (billing_cycle) { 
262                                                    $(".scraped-billing-cycle").html(billing_cycle); 
263
264                                                if (apr_min) { 
265                                                    $(".scraped-apr-min").html(apr_min); 
266
267                                                if (apr_max) { 
268                                                    $('.scraped-apr-max').html(apr_max); 
269
270 
271                                            } catch (e) { 
272                                                console.log(e); 
273
274                                        } else { 
275                                          $(".apr-full-text").html(''); 
276
277                                    }); 
278                                </script> 
279                            </#if>                                                     
280                        <#elseif (displayedCard.offerType == "115")> 
281                            <#assign productUrl = "secured"> 
282                            <#assign product="Secured"> 
283                            <#assign cardIndex = 4> 
284                        </#if> 
285                </#if> 
286            </#if> 
287        </#if> 
288        <#if (class.getData() == "landing-business" && businessCards?size > 0)> 
289            <#if (offerTypeList?seq_contains("128")) > 
290                <#list businessCards as card> 
291                    <#if (card.offerType=="128")> 
292                        <#assign offerId = card.offerId> 
293                        <#assign sourceCode = card.sourceCode> 
294                        <#assign cardArtImage = cdnCardArtUrl + "/"+card.filename+".png"> 
295                        <#assign cardArtImageAlt = cdnCardArtUrl + "/"+card.filename+".jpg"> 
296                        <#assign productUrl = "business-cash-preferred"> 
297                        <#assign product="Business Cash Preferred">                 
298                        <#assign cardIndex = 0> 
299                    </#if> 
300                </#list> 
301            <#else> 
302                <#assign displayedCard = businessCards[0]> 
303                <#assign offerId = displayedCard.offerId> 
304                <#assign sourceCode = displayedCard.sourceCode> 
305                <#assign cardArtImage = cdnCardArtUrl + "/"+ displayedCard.filename + ".png"> 
306                <#assign cardArtImageAlt = cdnCardArtUrl + "/"+ displayedCard.filename + ".jpg"> 
307 
308                <#if (displayedCard.offerType=="143")> 
309                    <#assign productUrl="business-real-rewards"> 
310                    <#assign product="Business Real Rewards"> 
311                    <#assign cardIndex = 0>    
312                <#elseif (displayedCard.offerType=="128")> 
313                    <#assign productUrl = "business-cash-preferred"> 
314                    <#assign product="Business Cash Preferred"> 
315                    <#assign cardIndex = 1>                     
316                <#elseif (displayedCard.offerType=="121")> 
317                    <#assign productUrl = "business-platinum2103"> 
318                    <#assign product="Visa Business"> 
319                    <#assign cardIndex = 3> 
320                    <#assign scrapedData = utilServ.makeCall('crcDDCGetSchumerBox', offerId + '&'+ sourceCode)> 
321                    <#if (scrapedData?size > 0)> 
322                        <#list scrapedData as sItem> 
323                            <#if ((sItem.scrapedLabel?contains("Annual Percentage Rate (APR) for Purchases")) && (sItem.scrapedValue?has_content)) > 
324                                <#assign apr = sItem.scrapedValue?replace("(\n|\r\n|\r)+", " ","r")> 
325                                <#break> 
326                            </#if> 
327                        </#list> 
328                        <script> 
329                        console.log("apr"); 
330                            $(document).ready(function () { 
331                                var aprText = "${apr}"; 
332                                if (aprText) { 
333                                    console.log("apr: " + aprText); 
334                                    try { 
335                                        $(".apr-full-text").html(aprText); 
336                                        var matches= aprText.match(/\d+(\.\d+)?%?/g); 
337                                        var billing_cycle = matches[1]; 
338                                        var apr_min = apr_min = matches[2]; 
339                                        var apr_max = apr_max = matches[3]; 
340                                        if (billing_cycle) { 
341                                            $(".scraped-billing-cycle").html(billing_cycle); 
342
343                                        if (apr_min) { 
344                                            $(".scraped-apr-min").html(apr_min); 
345
346                                        if (apr_max) { 
347                                            $('.scraped-apr-max').html(apr_max); 
348
349 
350                                    } catch (e) { 
351                                        console.log(e); 
352
353                                } else { 
354                                  $(".apr-full-text").html(''); 
355
356                            }); 
357                        </script> 
358                    </#if>                       
359                </#if> 
360            </#if> 
361        </#if>    
362        <#if product != ""> 
363            <#if ameriprise> 
364                <#assign card_art_alt =  partnerName + " " + product + " Card"> 
365                <#assign rollover_text =  partnerName + " " + product + " Card"> 
366            <#else> 
367                <#assign card_art_alt = partnerName + " " + product + "  Card"> 
368                <#assign rollover_text =  partnerName + " " + product + " Credit Card"> 
369                <#assign card_text = product + " Card"> 
370            </#if>  
371        </#if>  
372        <div class="jn-hero-container product-${productUrl} tier1-hero-${class.getData()}" title="${rollover_text!''}"> 
373            <div class="hero-main"> 
374                <div class="hero-main-logo"> 
375                    <#if partnerUrl?has_content> 
376                        <a href="${partnerUrl!''}" title="${partnerName!''} Logo"><img src="${cdnLogoUrl!''}/${logoFileName!''}" title="${partnerName!''} Logo" alt="${partnerName!''} Logo"></a> 
377                    <#else> 
378                        <a title="${partnerName!''} Logo"><img src="${cdnLogoUrl!''}/${logoFileName!''}" title="${partnerName!''} Logo" alt="${partnerName!''} Logo"></a> 
379                    </#if> 
380                </div> 
381                <div class="hero-main-container"> 
382                    <div class="hero-main-offer bg-color-white"> 
383                    <div class="offer-detail"> 
384 
385                            <div class="offer-detail-cardArt cardArtImg">                                                  
386                                <img src="${cardArtImage!''}" alt="${card_art_alt!''}" srcset="" title="${card_art_alt!''}" onerror="this.onerror=null;this.src='${cardArtImageAlt!''}'"> 
387                                <p>${card_text!''}</p> 
388                            </div> 
389                            <div class="offer-detail-text text-color-default hide-desktop"> 
390                                ${productTitle.getSiblings()[cardIndex].primaryHeadlineFeatureTop.getData()} 
391                                ${productTitle.getSiblings()[cardIndex].primaryHeadlineFeatureBottom.getData()} 
392                            </div> 
393 
394                            <#if ameriprise> 
395                                <a data-button-name="cta-button-top" title="Learn More about ${partnerName!''} credit cards" class="jn-button apply-button text-bold button-bg-color-custom text-color-white hide-desktop" href="javascript:void(0);" onclick="goToByScroll('product-display')">${productTitle.getSiblings()[cardIndex].ctaText.getData()}</a>                                 
396                            <#else>  
397                                <form action="${oadURL}?locationCode=${lc_used}&offerId=${offerId}&preparerType=${preparerType}&sourceCode=${sourceCode}" method="post" class="BAAForm hide-desktop"> 
398                                    <label for="appDataBAAMobile-${sourceCode}" style="position:absolute; clip:rect(0 0 0 0);">Application Data</label> 
399                                    <textarea rows="20" cols="100" name="applicationData" id="appDataBAAMobile-${sourceCode}" class="appDataBAA" style="display:none;" title="application data"></textarea> 
400                                    <button  
401                                        type="submit"  
402                                        data-button-name="cta-button-top"   
403                                        data-product-name="${productUrl!''}"                                        
404                                        class="jn-button apply-button apply-now-button text-bold button-bg-color-custom text-color-white" 
405                                        disabled  
406
407                                        ${productTitle.getSiblings()[cardIndex].ctaText.getData()} <span class="screen-reader-only"> for ${partnerName!''} ${product!''} Card</span> 
408                                    </button> 
409                                </form> 
410                            </#if> 
411                        </div> 
412 
413                        <div class="offer-header"> 
414                             <div class="offer-text-top"> 
415                                <div class="offer-title">${productTitle.getSiblings()[cardIndex].primaryHeadlineText.getData()}</div> 
416                                <h1 class="offer-subtitle">${productTitle.getSiblings()[cardIndex].primaryHeadlineFeature.getData()}</h1> 
417                            </div> 
418                            <div class="offer-text-bottom hide-mobile"> 
419                                <div class="offer-detail-text text-color-default"> 
420                                    ${productTitle.getSiblings()[cardIndex].primaryHeadlineFeatureTop.getData()} 
421                                    ${productTitle.getSiblings()[cardIndex].primaryHeadlineFeatureBottom.getData()} 
422                                </div> 
423 
424                                <#if ameriprise> 
425                                    <a data-button-name="cta-button-top" title="Learn More about ${partnerName!''} credit cards" class="jn-button apply-button text-bold button-bg-color-custom text-color-white" href="javascript:void(0);" onclick="goToByScroll('product-display')">${productTitle.getSiblings()[cardIndex].ctaText.getData()}</a>                                 
426                                <#else>  
427                                    <form action="${oadURL}?locationCode=${lc_used}&offerId=${offerId}&preparerType=${preparerType}&sourceCode=${sourceCode}" method="post" class="BAAForm"> 
428                                        <label for="appDataBAA-${sourceCode}" style="position:absolute; clip:rect(0 0 0 0);">Application Data</label> 
429                                        <textarea rows="20" cols="100" name="applicationData" id="appDataBAA-${sourceCode}" class="appDataBAA" style="display:none;" title="application data"></textarea> 
430                                        <button  
431                                            type="submit"  
432                                            data-button-name="cta-button-top"   
433                                            data-product-name="${productUrl!''}"  
434                                            class="jn-button apply-button apply-now-button text-bold button-bg-color-custom text-color-white" 
435                                            disabled 
436
437                                            ${productTitle.getSiblings()[cardIndex].ctaText.getData()}<span class="screen-reader-only"> for ${partnerName!''} ${product!''} Card</span> 
438                                        </button> 
439                                    </form> 
440                                </#if> 
441                            </div> 
442                        </div>                        
443                    </div> 
444                </div> 
445            </div> 
446        </div>   
447 
448    </#if> 
449</#if> 

Artikkel

En feil oppsto under behandling av visningsmalen.
Expression qstringmap["bankercode"] is undefined on line 8, column 17 in 10153#10191#5883698.
1<#assign url = request.attributes.CURRENT_URL > 
2<#assign oadURL = propsUtil.get('elan.oad.url') > 
3<#assign qstringmap = httpUtil.getParameterMap(httpUtil.getQueryString(url))> 
4<#assign utilServ = serviceLocator.findService("crc-utilities-portlet", "com.elan.crc.utilities.service.CRCRemoteServiceService")> 
5<#assign url404 = '/error/404.html'> 
6<#assign oadURL_TC = 'https://online1.elancard.com/oad/terms.controller' > 
7 
8<#assign bCode= qstringmap["bankercode"]?first> 
9<#assign bData = utilServ.makeCall('crcDDCBankerAssistedAppDetailSql','0&'+bCode)> 
10<#list bData as b>      
11    <#assign lc = b.locationcode > 
12    <#assign rLC = b.reallocationcode > 
13    <#assign mappedLC = b.mappedLocationCode > 
14</#list>  
15<#if bCode?starts_with("amp") && (url?contains("11t1m"))> 
16    <#assign ameriprise = true> 
17<#else> 
18    <#assign ameriprise = false> 
19</#if> 
20 
21<#if mappedLC?has_content && !ameriprise> 
22    <#assign lc = mappedLC > 
23</#if> 
24 
25<#assign fiData= utilServ.makeCall('crcDDCBankerAssistedAppSql','0&'+bCode)> 
26<#if fiData?first?has_content> 
27    <#assign fi = fiData?first> 
28    <#if ((fi.projectId == "12") || (fi.projectId == "13") || (fi.projectId == "14"))> 
29        <#assign subbu_special = fi.offerId> 
30    </#if> 
31</#if> 
32 
33 
34<#if lc?has_content> 
35    <#assign prefix = "00000" > 
36    <#assign lcWithPrefix = prefix + lc> 
37    <#assign withPrefixLength = lcWithPrefix?length > 
38    <#assign startHere = withPrefixLength - 5> 
39    <#assign lc = lcWithPrefix?substring(startHere)>     
40    <#assign clientProfileService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcClientProfileLocalService") > 
41    <#assign clientProfileList = clientProfileService.findByLocationCode(lc)> 
42 
43    <#assign clientProfile = clientProfileList?first> 
44    <#assign partnerName = clientProfile.getMarketingNameLong()> 
45    <#assign pbu = clientProfile.getPbu()> 
46    <#assign subbu = clientProfile.getSUBBRANDBUNBR()>     
47    <#assign clientDataService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcPbuLocalService") > 
48    <#assign clientProfileDataList = clientDataService.getByPbuAndSubBu(pbu,subbu)> 
49    <#assign partnerUrl = clientProfileDataList.getPartnerMainUrl()> 
50    <#if partnerUrl?has_content && !partnerUrl?matches(r"(?i)^https?\:\/\/.*") && !partnerUrl?matches(r"(?i)^https?\:&#x2F;&#x2F;.*")>             
51        <#assign partnerUrl = 'https://' + partnerUrl> 
52    </#if> 
53 
54    <!-- <#assign clientdataList = utilServ.makeCall('crcDDCTier1Customizations','0&'+pbu+'&'+subbu+'&11')> 
55    <#if clientdataList?has_content > 
56        <#assign clientdata = clientdataList?first > 
57		<#assign backgroundHexColor = clientdata["backgroundHexColor"] > 
58		<#assign backgroundImage = clientdata["backgroundImage"] > 
59		<#assign buttonHexColor = clientdata["buttonHexColor"] > 
60		<#assign AprMin = clientdata["AprMin"] > 
61		<#assign AprMax = clientdata["AprMax"] > 
62		<#assign cashAdvanceRate = clientdata["cashAdvanceRate"] > 
63		<#assign BillingCycles = clientdata["BillingCycles"] > 
64		<#assign textHexColor = clientdata["textHexColor"] > 
65		<#assign linkHexColor = clientdata["linkHexColor"] > 
66		<#assign hoverColor = clientdata["hoverColor"] > 
67		<#assign secondaryBackgroundImage = clientdata["secondaryBackgroundImage"] > 
68		<#assign transparency = clientdata["transparency"] > 
69		<#assign businessBackgroundImageLarge = clientdata["businessBackgroundImageLarge"] > 
70		<#assign businessBackgroundImageSmall = clientdata["businessBackgroundImageSmall"] > 
71		<#assign businessTransparency = clientdata["businessTransparency"] > 
72		<#assign dmaBackgroundImage = clientdata["dmaBackgroundImage"] > 
73		<#assign secondaryDmaBackgroundImage = clientdata["secondaryDmaBackgroundImage"] > 
74	</#if> --> 
75	 
76    <#assign logoFileName = clientProfile.getLogoBFormat1()?replace(".", "-")?replace("-([^-]*)$", ".$1", "r")?lower_case> 
77    <#assign cdnLogoUrl = propsUtil.get('rackspace.cdn.web.url')> 
78        <script> 
79        console.log('logo url', '${cdnLogoUrl}${logoFileName}'); 
80    </script> 
81    <#if pbu == "0864054"> 
82        <#assign override = "berkshire"> 
83    <#else> 
84        <#assign override = " "> 
85    </#if> 
86    <#--  this one should be delete for prod  --> 
87                 
88    <#-- <#assign cdnLogoUrl = "https://4f61efb10f32ceb57895-3733e103896f37259213d6ad72acbe68.ssl.cf2.rackcdn.com">   
89    <#assign logoFileName = pbu + "-" + subbu + ".png">--> 
90 
91    <#assign cdnCardArtUrl = propsUtil.get('rackspace.cdn.cardart.url')> 
92    <#if (subbu_special?has_content)> 
93        <#assign fiCardsData = utilServ.makeCall('crcTier3GetPbuData','0&' + pbu + '&' + subbu_special)>  
94        <script> 
95            console.log('new subbu', '${subbu_special!''}'); 
96        </script>  
97    <#else> 
98        <#assign fiCardsData = utilServ.makeCall('crcTier3GetPbuData','0&' + pbu + '&' + subbu)>  
99    </#if> 
100    <#assign temp = []> 
101    <#assign consumerCards = []> 
102    <#assign businessCards = []>  
103    <#assign offerTypeList = []>       
104    <#assign index = 0> 
105    <#assign ameriprise_cards= []> 
106    <#assign consumerOfferTypes =['104', '101', '103', '108', '109', '115']> 
107    <#assign businessOfferTypes =['144', '128', '143', '121', '123']> 
108    <#list fiCardsData as fib> 
109        <#if (fib.offerType?has_content && !(offerTypeList?seq_contains(fib.offerType)))>   
110            <#assign offerTypeList = offerTypeList + [fib.offerType]> 
111            <#assign temp = temp + fiCardsData[index..index]>    
112            <#if ameriprise> 
113                <#if (fib.offerType == "101" || fib.offerType == "103")> 
114                    <#assign ameriprise_cards= ameriprise_cards + fiCardsData[index..index]> 
115                </#if>                      
116            <#else> 
117                <#if consumerOfferTypes?seq_contains(fib.offerType)> 
118                    <#assign consumerCards = consumerCards + fiCardsData[index..index]> 
119                <#elseif (businessOfferTypes?seq_contains(fib.offerType))> 
120                    <#assign businessCards = businessCards + fiCardsData[index..index]> 
121                </#if>             
122            </#if>                 
123        </#if>  
124        <#assign index = index + 1>   
125                     
126    </#list>        
127    <#assign fiCardsData = temp> 
128    <#if ameriprise> 
129        <#assign consumerCards = ameriprise_cards?sort_by("offerType")> 
130    </#if> 
131 
132    <#if (fiCardsData?size > 0)>   
133        <#if (subbu_special?has_content)> 
134            <#assign lc_used = fiCardsData?first.WebLocationCode>   
135        <#else> 
136            <#if ameriprise> 
137                <#assign lc_used = mappedLC>  
138            <#else> 
139                <#assign lc_used = lc>  
140            </#if> 
141        </#if>               
142        <#assign offerId = ""> 
143        <#assign sourceCode = ""> 
144        <#assign cardArtImage = ""> 
145        <#assign productUrl = ""> 
146        <#assign product = ""> 
147        <#assign preparerType = "customer"> 
148        <#assign apr = ""> 
149        <#assign cardIndex = 0>   
150        <#if (class.getData() == "landing-consumer" && consumerCards?size > 0)> 
151            <#if (offerTypeList?seq_contains("101")) || (offerTypeList?seq_contains("103")) > 
152                <#list consumerCards as card> 
153                    <#if (card.offerType=="101" || card.offerType=="103") > 
154                        <#assign offerId = card.offerId> 
155                        <#assign sourceCode = card.sourceCode> 
156                        <#assign cardArtImage = cdnCardArtUrl + "/"+card.filename+".png"> 
157                        <#assign cardArtImageAlt = cdnCardArtUrl + "/"+card.filename+".jpg"> 
158 
159                        <#assign productUrl="consumer-edr2112"> 
160                        <#assign product="Everyday Rewards+"> 
161                        <#assign cardIndex = 1> 
162 
163                        <#assign scrapedData = utilServ.makeCall('crcDDCGetSchumerBox', offerId + '&'+ sourceCode)> 
164                        <#if (scrapedData?size > 0)> 
165                            <#list scrapedData as sItem> 
166                            <script> 
167                              console.log("scrapped item", "${sItem.scrapedLabel}"); 
168                            </script> 
169                                <#if ((sItem.scrapedLabel?contains("Annual Percentage Rate (APR) for Purchases")) && (sItem.scrapedValue?has_content)) > 
170                                    <#assign apr = sItem.scrapedValue?replace("(\n|\r\n|\r)+", " ","r")> 
171                                    <#break> 
172                                </#if> 
173                            </#list> 
174                            <script> 
175                                $(document).ready(function () { 
176                                    var aprText = "${apr}"; 
177                                    if (aprText) { 
178                                        console.log("apr: " + aprText); 
179                                        try { 
180                                            $(".apr-full-text").html(aprText); 
181                                            var matches= aprText.match(/\d+(\.\d+)?%?/g); 
182                                            var billing_cycle = matches[1]; 
183                                            var apr_min = apr_min = matches[2]; 
184                                            var apr_max = apr_max = matches[3]; 
185                                            if (billing_cycle) { 
186                                                $(".scraped-billing-cycle").html(billing_cycle); 
187
188                                            if (apr_min) { 
189                                                $(".scraped-apr-min").html(apr_min); 
190
191                                            if (apr_max) { 
192                                                $('.scraped-apr-max').html(apr_max); 
193
194 
195                                        } catch (e) { 
196                                            console.log(e); 
197
198                                    } else { 
199                                      $(".apr-full-text").html(''); 
200
201                                }); 
202                            </script> 
203                        </#if> 
204                        <script> 
205                        var product = "${product}"; 
206                        var partnerName = "${partnerName}"; 
207                          $(document).ready(function () { 
208                            $(".see-terms").replaceWith('<a href="${oadURL_TC}?step=display&amp;offerId=${offerId}&amp;locationCode=${lc_used}" target="_blank"><span class="screen-reader-only">' + partnerName + ' ' + product + ' Card</span>See terms &amp; conditions</a>'); 
209                          }); 
210                        </script> 
211                    </#if> 
212                </#list> 
213            <#else> 
214                <#assign displayedCard = consumerCards[0]> 
215                <script> 
216                    console.log('dispalyed card:','${displayedCard.offerType}'); 
217                </script> 
218                <#assign offerId = displayedCard.offerId> 
219                <#assign sourceCode = displayedCard.sourceCode> 
220                <#assign cardArtImage = cdnCardArtUrl + "/"+ displayedCard.filename + ".png"> 
221                <#assign cardArtImageAlt = cdnCardArtUrl + "/"+ displayedCard.filename + ".jpg"> 
222                <#if ameriprise> 
223                    <#if (displayedCard.offerType == "101")> 
224                        <#assign productUrl="ameriprise-premier-visa-signature"> 
225                        <#assign product="Premier Visa Signature"> 
226                        <#assign cardIndex = 0> 
227                    <#elseif (displayedCard.offerType == "103")> 
228                        <#assign productUrl = "ameriprise-visa-signature"> 
229                        <#assign product="Visa Signature"> 
230                        <#assign cardIndex = 1> 
231                    </#if> 
232                <#else> 
233                        <#if (displayedCard.offerType == "101" || displayedCard.offerType == "103")> 
234                            <#assign productUrl="consumer-edr2112"> 
235                            <#assign product="Everyday Rewards+"> 
236                            <#assign cardIndex = 1>                           
237                        <#elseif (displayedCard.offerType == "108" || displayedCard.offerType == "109")> 
238                            <#assign productUrl = "consumer-platinum2103"> 
239                            <#assign product="Platinum">    
240                            <#assign cardIndex = 5>    
241                            <#assign scrapedData = utilServ.makeCall('crcDDCGetSchumerBox', offerId + '&'+ sourceCode)> 
242                            <#if (scrapedData?size > 0)> 
243                                <#list scrapedData as sItem> 
244                                    <#if ((sItem.scrapedLabel?contains("Annual Percentage Rate (APR) for Purchases")) && (sItem.scrapedValue?has_content)) > 
245                                        <#assign apr = sItem.scrapedValue?replace("(\n|\r\n|\r)+", " ","r")> 
246                                        <#break> 
247                                    </#if> 
248                                </#list> 
249                                <script> 
250                        console.log("apr"); 
251                                    $(document).ready(function () { 
252                                        var aprText = "${apr}"; 
253                                        if (aprText) { 
254                                            console.log("apr:" + aprText); 
255                                            try { 
256                                                $(".apr-full-text").html(aprText); 
257                                                var matches= aprText.match(/\d+(\.\d+)?%?/g); 
258                                                var billing_cycle = matches[1]; 
259                                                var apr_min = apr_min = matches[2]; 
260                                                var apr_max = apr_max = matches[3]; 
261                                                if (billing_cycle) { 
262                                                    $(".scraped-billing-cycle").html(billing_cycle); 
263
264                                                if (apr_min) { 
265                                                    $(".scraped-apr-min").html(apr_min); 
266
267                                                if (apr_max) { 
268                                                    $('.scraped-apr-max').html(apr_max); 
269
270 
271                                            } catch (e) { 
272                                                console.log(e); 
273
274                                        } else { 
275                                          $(".apr-full-text").html(''); 
276
277                                    }); 
278                                </script> 
279                            </#if>                                                     
280                        <#elseif (displayedCard.offerType == "115")> 
281                            <#assign productUrl = "secured"> 
282                            <#assign product="Secured"> 
283                            <#assign cardIndex = 4> 
284                        </#if> 
285                </#if> 
286            </#if> 
287        </#if> 
288        <#if (class.getData() == "landing-business" && businessCards?size > 0)> 
289            <#if (offerTypeList?seq_contains("128")) > 
290                <#list businessCards as card> 
291                    <#if (card.offerType=="128")> 
292                        <#assign offerId = card.offerId> 
293                        <#assign sourceCode = card.sourceCode> 
294                        <#assign cardArtImage = cdnCardArtUrl + "/"+card.filename+".png"> 
295                        <#assign cardArtImageAlt = cdnCardArtUrl + "/"+card.filename+".jpg"> 
296                        <#assign productUrl = "business-cash-preferred"> 
297                        <#assign product="Business Cash Preferred">                 
298                        <#assign cardIndex = 0> 
299                    </#if> 
300                </#list> 
301            <#else> 
302                <#assign displayedCard = businessCards[0]> 
303                <#assign offerId = displayedCard.offerId> 
304                <#assign sourceCode = displayedCard.sourceCode> 
305                <#assign cardArtImage = cdnCardArtUrl + "/"+ displayedCard.filename + ".png"> 
306                <#assign cardArtImageAlt = cdnCardArtUrl + "/"+ displayedCard.filename + ".jpg"> 
307 
308                <#if (displayedCard.offerType=="143")> 
309                    <#assign productUrl="business-real-rewards"> 
310                    <#assign product="Business Real Rewards"> 
311                    <#assign cardIndex = 0>    
312                <#elseif (displayedCard.offerType=="128")> 
313                    <#assign productUrl = "business-cash-preferred"> 
314                    <#assign product="Business Cash Preferred"> 
315                    <#assign cardIndex = 1>                     
316                <#elseif (displayedCard.offerType=="121")> 
317                    <#assign productUrl = "business-platinum2103"> 
318                    <#assign product="Visa Business"> 
319                    <#assign cardIndex = 3> 
320                    <#assign scrapedData = utilServ.makeCall('crcDDCGetSchumerBox', offerId + '&'+ sourceCode)> 
321                    <#if (scrapedData?size > 0)> 
322                        <#list scrapedData as sItem> 
323                            <#if ((sItem.scrapedLabel?contains("Annual Percentage Rate (APR) for Purchases")) && (sItem.scrapedValue?has_content)) > 
324                                <#assign apr = sItem.scrapedValue?replace("(\n|\r\n|\r)+", " ","r")> 
325                                <#break> 
326                            </#if> 
327                        </#list> 
328                        <script> 
329                        console.log("apr"); 
330                            $(document).ready(function () { 
331                                var aprText = "${apr}"; 
332                                if (aprText) { 
333                                    console.log("apr: " + aprText); 
334                                    try { 
335                                        $(".apr-full-text").html(aprText); 
336                                        var matches= aprText.match(/\d+(\.\d+)?%?/g); 
337                                        var billing_cycle = matches[1]; 
338                                        var apr_min = apr_min = matches[2]; 
339                                        var apr_max = apr_max = matches[3]; 
340                                        if (billing_cycle) { 
341                                            $(".scraped-billing-cycle").html(billing_cycle); 
342
343                                        if (apr_min) { 
344                                            $(".scraped-apr-min").html(apr_min); 
345
346                                        if (apr_max) { 
347                                            $('.scraped-apr-max').html(apr_max); 
348
349 
350                                    } catch (e) { 
351                                        console.log(e); 
352
353                                } else { 
354                                  $(".apr-full-text").html(''); 
355
356                            }); 
357                        </script> 
358                    </#if>                       
359                </#if> 
360            </#if> 
361        </#if>    
362        <#if product != ""> 
363            <#if ameriprise> 
364                <#assign card_art_alt =  partnerName + " " + product + " Card"> 
365                <#assign rollover_text =  partnerName + " " + product + " Card"> 
366            <#else> 
367                <#assign card_art_alt = partnerName + " " + product + "  Card"> 
368                <#assign rollover_text =  partnerName + " " + product + " Credit Card"> 
369                <#assign card_text = product + " Card"> 
370            </#if>  
371        </#if>  
372        <div class="jn-hero-container product-${productUrl} tier1-hero-${class.getData()}" title="${rollover_text!''}"> 
373            <div class="hero-main"> 
374                <div class="hero-main-logo"> 
375                    <#if partnerUrl?has_content> 
376                        <a href="${partnerUrl!''}" title="${partnerName!''} Logo"><img src="${cdnLogoUrl!''}/${logoFileName!''}" title="${partnerName!''} Logo" alt="${partnerName!''} Logo"></a> 
377                    <#else> 
378                        <a title="${partnerName!''} Logo"><img src="${cdnLogoUrl!''}/${logoFileName!''}" title="${partnerName!''} Logo" alt="${partnerName!''} Logo"></a> 
379                    </#if> 
380                </div> 
381                <div class="hero-main-container"> 
382                    <div class="hero-main-offer bg-color-white"> 
383                    <div class="offer-detail"> 
384 
385                            <div class="offer-detail-cardArt cardArtImg">                                                  
386                                <img src="${cardArtImage!''}" alt="${card_art_alt!''}" srcset="" title="${card_art_alt!''}" onerror="this.onerror=null;this.src='${cardArtImageAlt!''}'"> 
387                                <p>${card_text!''}</p> 
388                            </div> 
389                            <div class="offer-detail-text text-color-default hide-desktop"> 
390                                ${productTitle.getSiblings()[cardIndex].primaryHeadlineFeatureTop.getData()} 
391                                ${productTitle.getSiblings()[cardIndex].primaryHeadlineFeatureBottom.getData()} 
392                            </div> 
393 
394                            <#if ameriprise> 
395                                <a data-button-name="cta-button-top" title="Learn More about ${partnerName!''} credit cards" class="jn-button apply-button text-bold button-bg-color-custom text-color-white hide-desktop" href="javascript:void(0);" onclick="goToByScroll('product-display')">${productTitle.getSiblings()[cardIndex].ctaText.getData()}</a>                                 
396                            <#else>  
397                                <form action="${oadURL}?locationCode=${lc_used}&offerId=${offerId}&preparerType=${preparerType}&sourceCode=${sourceCode}" method="post" class="BAAForm hide-desktop"> 
398                                    <label for="appDataBAAMobile-${sourceCode}" style="position:absolute; clip:rect(0 0 0 0);">Application Data</label> 
399                                    <textarea rows="20" cols="100" name="applicationData" id="appDataBAAMobile-${sourceCode}" class="appDataBAA" style="display:none;" title="application data"></textarea> 
400                                    <button  
401                                        type="submit"  
402                                        data-button-name="cta-button-top"   
403                                        data-product-name="${productUrl!''}"                                        
404                                        class="jn-button apply-button apply-now-button text-bold button-bg-color-custom text-color-white" 
405                                        disabled  
406
407                                        ${productTitle.getSiblings()[cardIndex].ctaText.getData()} <span class="screen-reader-only"> for ${partnerName!''} ${product!''} Card</span> 
408                                    </button> 
409                                </form> 
410                            </#if> 
411                        </div> 
412 
413                        <div class="offer-header"> 
414                             <div class="offer-text-top"> 
415                                <div class="offer-title">${productTitle.getSiblings()[cardIndex].primaryHeadlineText.getData()}</div> 
416                                <h1 class="offer-subtitle">${productTitle.getSiblings()[cardIndex].primaryHeadlineFeature.getData()}</h1> 
417                            </div> 
418                            <div class="offer-text-bottom hide-mobile"> 
419                                <div class="offer-detail-text text-color-default"> 
420                                    ${productTitle.getSiblings()[cardIndex].primaryHeadlineFeatureTop.getData()} 
421                                    ${productTitle.getSiblings()[cardIndex].primaryHeadlineFeatureBottom.getData()} 
422                                </div> 
423 
424                                <#if ameriprise> 
425                                    <a data-button-name="cta-button-top" title="Learn More about ${partnerName!''} credit cards" class="jn-button apply-button text-bold button-bg-color-custom text-color-white" href="javascript:void(0);" onclick="goToByScroll('product-display')">${productTitle.getSiblings()[cardIndex].ctaText.getData()}</a>                                 
426                                <#else>  
427                                    <form action="${oadURL}?locationCode=${lc_used}&offerId=${offerId}&preparerType=${preparerType}&sourceCode=${sourceCode}" method="post" class="BAAForm"> 
428                                        <label for="appDataBAA-${sourceCode}" style="position:absolute; clip:rect(0 0 0 0);">Application Data</label> 
429                                        <textarea rows="20" cols="100" name="applicationData" id="appDataBAA-${sourceCode}" class="appDataBAA" style="display:none;" title="application data"></textarea> 
430                                        <button  
431                                            type="submit"  
432                                            data-button-name="cta-button-top"   
433                                            data-product-name="${productUrl!''}"  
434                                            class="jn-button apply-button apply-now-button text-bold button-bg-color-custom text-color-white" 
435                                            disabled 
436
437                                            ${productTitle.getSiblings()[cardIndex].ctaText.getData()}<span class="screen-reader-only"> for ${partnerName!''} ${product!''} Card</span> 
438                                        </button> 
439                                    </form> 
440                                </#if> 
441                            </div> 
442                        </div>                        
443                    </div> 
444                </div> 
445            </div> 
446        </div>   
447 
448    </#if> 
449</#if> 

Artikkel

En feil oppsto under behandling av visningsmalen.
Expression qstringmap["bankercode"] is undefined on line 32, column 17 in 10153#10191#5843849.
1<#assign utilServ = serviceLocator.findService("crc-utilities-portlet", "com.elan.crc.utilities.service.CRCRemoteServiceService") > 
2<#assign oadURL = propsUtil.get('elan.oad.url') > 
3<#assign url = request.attributes.CURRENT_URL > 
4<#assign qstringmap = httpUtil.getParameterMap(httpUtil.getQueryString(url))> 
5<#-- <#assign url404 = '/error/404.html'> --> 
6<#assign oadURL_TC = 'https://online1.elancard.com/oad/terms.controller' > 
7<#assign environment = url?replace('/index.*','','r')> 
8 
9 
10<#assign text_to_apply_source = "vanity url" > 
11<#if qstringmap["sms"]?has_content> 
12    <#assign sms = 1 > 
13    <#assign text_to_apply_source = "sms" > 
14</#if> 
15<#if qstringmap["qrCode"]?has_content> 
16    <#assign text_to_apply_source = "qr code" > 
17</#if> 
18 
19<#if qstringmap["ecid"]?has_content> 
20    <#assign ecidExt="&ecid="+qstringmap["ecid"]?first> 
21    <#assign campaignId = qstringmap["ecid"]?first > 
22<#else> 
23    <#assign ecidExt=""> 
24    <#assign campaignId = "" > 
25</#if> 
26<#--  check bankercode validity  --> 
27<#if oadURL?contains("uat-")> 
28    <#assign oadURL_TC = 'https://uat-online1.elancard.com/oad/terms.controller' > 
29<#else> 
30    <#assign oadURL_TC = 'https://online1.elancard.com/oad/terms.controller' > 
31</#if> 
32<#assign bCode= qstringmap["bankercode"]?first> 
33 
34<#assign fiData= utilServ.makeCall('crcDDCBankerAssistedAppSql','0&'+bCode)> 
35<#if fiData?first?has_content> 
36    <#assign fi = fiData?first> 
37    <#if ((fi.projectId == "12") || (fi.projectId == "13") || (fi.projectId == "14"))> 
38        <#assign subbu_special = fi.offerId> 
39    </#if> 
40</#if> 
41 
42<#assign bData = utilServ.makeCall('crcDDCBankerAssistedAppDetailSql','0&'+bCode)> 
43<#list bData as b>      
44    <#assign lc = b.locationcode > 
45    <#assign bName = b.branch > 
46    <#assign bPhone = b.businessphone > 
47    <#assign boeid = b.oeid > 
48    <#assign fName = b.firstname?trim > 
49    <#assign lName = b.lastname?trim > 
50    <#assign rLC = b.reallocationcode > 
51    <#assign mappedLC = b.mappedLocationCode > 
52</#list>  
53 
54<#if bCode?starts_with("amp") && (url?contains("11t1m"))> 
55    <#assign ameriprise = true> 
56<#else> 
57    <#assign ameriprise = false> 
58</#if> 
59<#if mappedLC?has_content && !ameriprise> 
60    <#assign lc = mappedLC > 
61</#if> 
62 
63           
64<#if lc?has_content> 
65    <#assign firstNameLength = fName?length > 
66    <#assign lastNameLength = lName?length > 
67    <#if firstNameLength + lastNameLength &gt; 19 > 
68        <#if lastNameLength &gt; 18 > 
69            <#assign bLName = lName?substring(0,18)> 
70        <#else> 
71            <#assign bLName = lName> 
72        </#if> 
73        <#assign maxFirstName = 19 - bLName?length > 
74        <#if firstNameLength &gt; maxFirstName > 
75            <#assign bFName = fName?substring(0,maxFirstName)> 
76        <#else> 
77            <#assign bFName = fName> 
78        </#if> 
79    <#else> 
80        <#assign bFName = fName> 
81        <#assign bLName = lName> 
82    </#if>  
83 
84    <#assign prefix = "00000" > 
85    <#assign lcWithPrefix = prefix + lc > 
86    <#assign withPrefixLength = lcWithPrefix?length > 
87    <#assign startHere = withPrefixLength - 5> 
88    <#assign lc = lcWithPrefix?substring(startHere)>   
89    <#assign clientProfileService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcClientProfileLocalService") > 
90    <#assign clientProfileList = clientProfileService.findByLocationCode(lc)> 
91    <#if (clientProfileList?first?has_content)> 
92        <#assign clientProfile = clientProfileList?first> 
93        <#assign partnerName = clientProfile.getMarketingNameLong()> 
94        <#assign pbu = clientProfile.getPbu()> 
95        <#assign subbu = clientProfile.getSUBBRANDBUNBR()>          
96        <#assign cdnCardArtUrl = propsUtil.get('rackspace.cdn.cardart.url')>  
97        <#if (subbu_special?has_content)> 
98        <script> 
99            console.log("special subbu:", '${subbu_special}'); 
100        </script> 
101            <#assign fiCardsData = utilServ.makeCall('crcTier3GetPbuData','0&' + pbu + '&' + subbu_special)>  
102        <#else> 
103            <#assign fiCardsData = utilServ.makeCall('crcTier3GetPbuData','0&' + pbu + '&' + subbu)>  
104                    <script> 
105            console.log("subbu:", '${subbu}'); 
106        </script> 
107        </#if> 
108 
109        <#-- Begin: filter cards by sourceCode and offerId and remove duplicated cards--> 
110        <#assign temp = []> 
111        <#assign consumerCards = []> 
112        <#assign businessCards = []>  
113        <#assign offerTypeList = []>  
114        <#assign consumerOfferTypes =['104', '101', '103', '108', '109', '115', '141', '147']> 
115        <#assign businessOfferTypes =['144', '128', '143', '121', '123']>     
116        <#assign index = 0> 
117        <#list fiCardsData as fib> 
118            <#if (fib.offerType?has_content && !(offerTypeList?seq_contains(fib.offerType)))>   
119                <#assign offerTypeList = offerTypeList + [fib.offerType]> 
120                <#assign temp = temp + fiCardsData[index..index]>   
121                <#if consumerOfferTypes?seq_contains(fib.offerType)> 
122                    <#assign consumerCards = consumerCards + fiCardsData[index..index]> 
123                <#elseif (businessOfferTypes?seq_contains(fib.offerType))> 
124                    <#assign businessCards = businessCards + fiCardsData[index..index]> 
125                </#if>                 
126            </#if>  
127            <#assign index = index + 1>                
128        </#list>  
129 
130 
131        <#assign fiCardsData = temp> 
132 
133        <#if (fiCardsData?size > 0)>   
134            <#if (subbu_special?has_content)> 
135                <#assign lc_used = fiCardsData?first.WebLocationCode>   
136            <#else> 
137                <#if ameriprise> 
138                    <#assign lc_used = mappedLC>  
139                <#else> 
140                    <#assign lc_used = lc>  
141                </#if> 
142            </#if>  
143        </#if>  
144 
145        <#if (consumerCards?size > 0 || businessCards?size > 0)>  
146         
147            <div class="content-container content-container-main jn-consumer-content" id="product-display"> 
148                <#if ((consumerCards?size > 0) && (businessCards?size > 0))> 
149                    <nav class="jn-primary-nav two-tabs"> 
150                        <ul> 
151                            <li title="${partnerName!''} - Personal products"> 
152                                <a href="#" class="tab-nav active" id="consumerTab"><span>Personal</span></a> 
153                            </li> 
154                            <li title="${partnerName!''} - Business products"> 
155                                <a href="#" class="tab-nav" id="businessTab"><span>Business</span></a> 
156                            </li> 
157                        </ul> 
158                    </nav> 
159                <#else> 
160                    <#if (consumerCards?size > 0)> 
161                        <nav class="jn-primary-nav" title="${partnerName!''} - Personal products"> 
162                            <ul> 
163                                <li> 
164                                    <p class="tab-nav" id="consumerTab"><span>Personal</span></p> 
165                                </li> 
166                            </ul> 
167                        </nav> 
168                    </#if> 
169                    <#if (businessCards?size > 0)> 
170                        <nav class="jn-primary-nav" title="${partnerName!''} - Business products"> 
171                            <ul> 
172                                <li> 
173                                    <p class="tab-nav" id="businessTab"><span>Business</span></p> 
174                                </li> 
175                            </ul> 
176                        </nav> 
177                    </#if> 
178                </#if> 
179                <#if (consumerCards?size > 0)> 
180                <div class="tab-more-wrapper"> 
181                    <div class="jn-consumer-content-wrapper jn-tab-content active transition-start" data-id="consumerTab" title="${partnerName!''} - Personal products"> 
182                        <#list consumerCards as fib> 
183                            <#assign cardArtImage = cdnCardArtUrl + "/" + fib.filename + ".png" > 
184                            <#assign cardArtImageAlt = cdnCardArtUrl + "/"+fib.filename+".jpg">                         
185                            <#if ameriprise>                                
186                                <#if (fib.offerType == "101")> 
187                                        <#assign productName = "premier-visa-signature"> 
188                                        <#assign product="Premier Visa Signature"> 
189                                        <#assign cardIndex = 0> 
190                                <#elseif (fib.offerType == "103")> 
191                                        <#assign productName = "visa-signature"> 
192                                        <#assign product="Visa Signature"> 
193                                        <#assign cardIndex = 1> 
194                                </#if> 
195                                <#assign titleText = consumerTitle.getSiblings()[cardIndex].Title.getData()> 
196                                <#assign titleText = titleText?replace('<[^>]+>','','r')> 
197                            <#else> 
198                                <#switch fib.offerType> 
199                                    <#case "101"> 
200                                    <#assign productName = "consumer-edr2112"> 
201                                    <#assign product="Everyday Rewards+"> 
202                                    <#assign cardIndex = 0> 
203                                    <#break> 
204                                <#case "108"> 
205                                    <#assign productName = "consumer-platinum2103"> 
206                                    <#assign product="Platinum"> 
207                                    <#assign cardIndex = 2> 
208                                    <#break> 
209                                <#case "109"> 
210                                    <#assign productName = "consumer-platinum2103"> 
211                                    <#assign product="Platinum"> 
212                                    <#assign cardIndex = 2> 
213                                    <#break>                                            
214                                <#case "115"> 
215                                    <#assign productName = "secured"> 
216                                    <#assign product="Secured"> 
217                                    <#assign cardIndex = 5> 
218                                    <#break> 
219                                <#case "104"> 
220                                    <#assign productName = "max-cash"> 
221                                    <#assign product="Max Cash Preferred"> 
222                                    <#assign cardIndex = 1> 
223                                    <#break> 
224                                 <#case "147"> 
225                                    <#assign productName = "max-cash-secured"> 
226                                    <#assign product="Max Cash Secured"> 
227                                    <#assign cardIndex = 4> 
228                                    <#break> 
229                                <#case "141"> 
230                                    <#assign productName = "college-real-rewards"> 
231                                    <#assign product="College Real Rewards"> 
232                                    <#assign cardIndex = 3> 
233                                    <#break> 
234                                <#default> 
235                                </#switch> 
236                                 
237                                <#assign titleText = consumerTitle.getSiblings()[cardIndex].Title.getData()> 
238                                <#assign titleText = titleText?replace('<[^>]+>','','r')> 
239                                 
240 
241                                <#assign APR=""> 
242                                <#assign AMF=""> 
243                                <#assign BAL=""> 
244                                <#assign scrapedData = utilServ.makeCall('crcDDCGetSchumerBox', fib.offerId + '&'+ fib.sourceCode)> 
245                                <#if (scrapedData?size > 0)> 
246                                    <#list scrapedData as sItem> 
247                                        <#if ((sItem.scrapedLabel?contains("Annual Percentage Rate (APR) for Purchases")) && (sItem.scrapedValue?has_content)) > 
248                                            <#assign APR = sItem.scrapedValue> 
249                                        <#elseif ((sItem.scrapedLabel?contains("Annual Membership Fee")) && (sItem.scrapedValue?has_content)) > 
250                                            <#assign AMF = sItem.scrapedValue> 
251                                        <#elseif ((sItem.scrapedLabel?contains("APR for Balance Transfers")) && (sItem.scrapedValue?has_content)) > 
252                                            <#assign BAL = sItem.scrapedValue> 
253                                        </#if> 
254                                        <#if (APR?has_content && AMF?has_content && BAL?has_content)> 
255                                            <#break> 
256                                        </#if> 
257                                    </#list> 
258                                </#if> 
259                            </#if> 
260                            <#if ameriprise> 
261                                <#assign rollover_text =  partnerName + " " + product + " " + " Card"> 
262                            <#else> 
263                                <#assign rollover_text =  partnerName + " " + product + " " + " Credit Card"> 
264                            </#if>                             
265                            <div class="jn-consumer-item item-${fib.offerType}" title="${rollover_text!''}"> 
266                                <div class="consumer-card-heading hide-desktop"> 
267                                    <div class="consumer-card-heading__subheading">${consumerTitle.getSiblings()[cardIndex].Title.getData()}</div> 
268                                    ${consumerTitle.getSiblings()[cardIndex].headlineText.getData()} 
269                                </div> 
270                                <div class="jn-consumer-card-image"> 
271                                    <img src="${cardArtImage!''}" alt="${rollover_text!''}"  class="jn-img-responsive" onerror="this.onerror=null;this.src='${cardArtImageAlt!''}'"> 
272                                    <#if (consumerTitle.getSiblings()[cardIndex].cardArtDescription?has_content) > 
273                                        <p class="jn-card-art-description">${consumerTitle.getSiblings()[cardIndex].cardArtDescription.getData()}</p> 
274                                    </#if> 
275                                </div> 
276 
277                                <div class="jn-consumer-card-info"> 
278                                    <div class="consumer-card-heading hide-mobile"> 
279                                        <div class="consumer-card-heading__subheading">${consumerTitle.getSiblings()[cardIndex].Title.getData()}</div> 
280                                        ${consumerTitle.getSiblings()[cardIndex].headlineText.getData()} 
281                                    </div> 
282                                    <div class="jn-additional"> 
283                                        <ul class="${fib.offerType}"> 
284                                            <#if !ameriprise>                                            
285                                                <#if (fib.offerType == "104")> 
286                                                    <li class="${fib.offerType}"> 
287                                                        <p> 
288                                                            <strong>APR for Purchases: </strong> 
289                                                            ${APR!''} 
290                                                        </p> 
291                                                         
292                                                    </li> 
293                                                    <li class="${fib.offerType}"> 
294                                                        <p> 
295                                                            <strong>Intro APR<sup>*</sup> for Balance Transfers: </strong> 
296                                                            ${BAL!''} <a href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}" target="_blank"> 
297                                                                <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
298                                                            </a> 
299                                                        </p> 
300                                                    </li> 
301                                                <#elseif (fib.offerType == "147")> 
302                                                    <li class="${fib.offerType}"> 
303                                                        <p> 
304                                                                <strong>APR for Purchases and Balance Transfers: </strong> 
305                                                            ${APR!''} <a href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}" target="_blank"> 
306                                                                <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
307                                                            </a> 
308                                                        </p> 
309                                                    </li> 
310                                                <#elseif (fib.offerType== "115")> 
311                                                    <li class="${fib.offerType}"> 
312                                                        <p> 
313                                                            <strong>APR for Purchases and Balance Transfers: </strong> 
314                                                            ${APR!''} <a href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}" target="_blank"> 
315                                                                <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
316                                                            </a> 
317                                                        </p> 
318                                                    </li> 
319                                                <#elseif (fib.offerType== "101")> 
320                                                    <li class="${fib.offerType}"> 
321                                                        <p> 
322                                                                <strong>Intro APR<sup>*</sup> for Purchases and Balance Transfers: </strong> 
323                                                            ${APR!''} <a href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}" target="_blank"> 
324                                                                <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
325                                                            </a> 
326                                                        </p> 
327                                                    </li> 
328                                                <#else> 
329                                                    <li class="${fib.offerType}"> 
330                                                        <p> 
331                                                                <strong>Intro APR<sup>*</sup> for Purchases and Balance Transfers: </strong> 
332                                                            ${APR!''} <a href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}" target="_blank"> 
333                                                                <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
334                                                            </a> 
335                                                        </p> 
336                                                    </li> 
337                                                </#if> 
338                                            </#if> 
339                                            <#if consumerTitle.getSiblings()[cardIndex].additionalInfo.getSiblings()?has_content> 
340                                                <#list consumerTitle.getSiblings()[cardIndex].additionalInfo.getSiblings() as marketingInfo> 
341                                                    <li>${marketingInfo.getData()}</li> 
342                                                </#list> 
343                                            </#if> 
344                                            <#if !ameriprise> 
345                                                <li> 
346                                                    <p> 
347                                                        Annual Fee: ${AMF!''} <a  href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}"  target="_blank"> 
348                                                            <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
349                                                        </a> 
350                                                    </p> 
351                                                </li> 
352                                            </#if> 
353                                        </ul> 
354                                    </div> 
355                                    <ul class="actions"> 
356                                        <li> 
357                                            <form action="${oadURL}?locationCode=${lc_used}&amp;offerId=${fib.offerId}&amp;preparerType=customer&amp;sourceCode=${fib.sourceCode}" method="post" class="BAAForm"> 
358                                                <label for="appDataBAA-${fib.offerId}" style="position:absolute; clip:rect(0 0 0 0);">Application Data</label> 
359                                                <textarea rows="20" cols="100" name="applicationData" id="appDataBAA-${fib.offerId}" class="appDataBAA" style="display:none;" title="application data"></textarea> 
360                                                <a  
361                                                    class="applyNowLink apply-now-button"  
362                                                    href="${oadURL}?locationCode=${lc_used}&amp;offerId=${fib.offerId}&amp;preparerType=customer&amp;sourceCode=${fib.sourceCode}" 
363                                                    data-button-name="apply-now-link"  
364                                                    data-product-name="${productName}"                 
365
366                                                        ${consumerTitle.getSiblings()[cardIndex].applyNow.getData()}<span class="screen-reader-only"> for ${partnerName!''} ${product!''} Card </span> 
367                                                </a> 
368                                            </form> 
369                                        </li> 
370                                        <li> 
371                                        <#if ameriprise> 
372                                            <a href="${environment}/${productName}?bankercode=${bCode}&ecdma-lc=${lc_used}${ecidExt}"> 
373                                                ${consumerTitle.getSiblings()[cardIndex].LearnMore.getData()}<span class="screen-reader-only"> about ${partnerName!''} ${product!''} Card </span> 
374                                            </a> 
375                                        <#else> 
376                                            <a href="${environment}/${productName}?bankercode=${bCode}&ecdma-lc=${lc}${ecidExt}"> 
377                                                ${consumerTitle.getSiblings()[cardIndex].LearnMore.getData()}<span class="screen-reader-only">about ${partnerName!''} ${product!''} Card </span> 
378                                            </a> 
379                                        </#if> 
380                                        </li> 
381                                    </ul> 
382                                </div> 
383 
384 
385                                 
386                                 
387                            </div> 
388                        </#list> 
389                    </div> 
390                </div> 
391                 
392                </#if> 
393                <#if (businessCards?size > 0)>  
394                    <div class="tab-more-wrapper">    
395                        <div class="jn-consumer-content-wrapper jn-tab-content transition-start" data-id="businessTab" title="${partnerName!''} - Business products"> 
396                             
397                            <#list businessCards as fib> 
398                                    <#assign cardArtImage = cdnCardArtUrl + "/" + fib.filename + ".png"> 
399                                    <#assign cardArtImageAlt = cdnCardArtUrl + "/"+fib.filename+".jpg"> 
400                                    <#switch fib.offerType>                                   
401                                        <#case "144"> 
402                                            <#assign productName = "smart-business-rewards"> 
403                                            <#assign product="Smart Business Rewards"> 
404                                            <#assign cardIndex = 8> 
405                                            <#break> 
406                                        <#case "128"> 
407                                            <#assign productName = "business-cash-preferred"> 
408                                            <#assign product="Business Cash Preferred"> 
409                                            <#assign cardIndex = 6>   
410                                            <#break> 
411                                        <#case "143"> 
412                                            <#assign productName = "business-real-rewards"> 
413                                            <#assign product="Business Real Rewards"> 
414                                            <#assign cardIndex = 9> 
415                                            <#break> 
416                                        <#case "121"> 
417                                            <#assign productName = "business-platinum2103"> 
418                                            <#assign product="Business Card"> 
419                                            <#assign cardIndex = 7> 
420                                            <#break> 
421                                        <#default> 
422                                    </#switch> 
423                                    <#assign APR=""> 
424                                    <#assign AMF=""> 
425                                    <#assign scrapedData = utilServ.makeCall('crcDDCGetSchumerBox', fib.offerId + '&'+ fib.sourceCode)> 
426                                    <#if (scrapedData?size > 0)> 
427                                        <#list scrapedData as sItem> 
428                                            <#if ((sItem.scrapedLabel?contains("Annual Percentage Rate (APR) for Purchases")) && (sItem.scrapedValue?has_content)) > 
429                                                <#assign APR = sItem.scrapedValue> 
430                                            <#elseif ((sItem.scrapedLabel?contains("Annual Membership Fee")) && (sItem.scrapedValue?has_content)) > 
431                                                <#assign AMF = sItem.scrapedValue> 
432                                            </#if> 
433                                            <#if (APR?has_content && AMF?has_content)> 
434                                                <#break> 
435                                            </#if> 
436                                        </#list> 
437                                    </#if> 
438                                     
439                                <div class="jn-consumer-item item-${fib.offerType}" title="${partnerName!''} ${product!''} Credit Card"> 
440                                    <div class="consumer-card-heading hide-desktop"> 
441                                        <div class="consumer-card-heading__subheading">${consumerTitle.getSiblings()[cardIndex].Title.getData()}</div> 
442                                        ${consumerTitle.getSiblings()[cardIndex].headlineText.getData()} 
443                                    </div> 
444                                    <div class="jn-consumer-card-image"> 
445                                        <img src="${cardArtImage!''}" alt="${rollover_text!''}"  class="jn-img-responsive" onerror="this.onerror=null;this.src='${cardArtImageAlt!''}'"> 
446                                        <#if (consumerTitle.getSiblings()[cardIndex].cardArtDescription?has_content) > 
447                                            <p class="jn-card-art-description">${consumerTitle.getSiblings()[cardIndex].cardArtDescription.getData()}</p> 
448                                        </#if> 
449                                    </div> 
450 
451                                    <div class="jn-consumer-card-info"> 
452                                        <div class="consumer-card-heading hide-mobile"> 
453                                            <div class="consumer-card-heading__subheading">${consumerTitle.getSiblings()[cardIndex].Title.getData()}</div> 
454                                            ${consumerTitle.getSiblings()[cardIndex].headlineText.getData()} 
455                                        </div> 
456                                        <div class="jn-additional"> 
457                                            <ul> 
458                                                <#if (fib.offerType == "144")> 
459                                                    <li> 
460                                                        <p> 
461                                                            <strong>APR<sup>*</sup> for Purchases and Balance Transfers: </strong> 
462                                                            ${APR!''} 
463                                                            <a href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}" target="_blank"> 
464                                                                <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
465                                                            </a> 
466                                                        </p> 
467                                                    </li> 
468                                                <#else> 
469                                                    <li> 
470                                                        <p> 
471                                                            <strong>Intro APR<sup>*</sup> for Purchases and Balance Transfers: </strong> 
472                                                            ${APR!''} 
473                                                            <a href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}" target="_blank"> 
474                                                                <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
475                                                            </a> 
476                                                        </p> 
477                                                    </li> 
478                                                </#if> 
479                                                <#if consumerTitle.getSiblings()[cardIndex].additionalInfo.getSiblings()?has_content> 
480                                                    <#list consumerTitle.getSiblings()[cardIndex].additionalInfo.getSiblings() as marketingInfo> 
481                                                        <li>${marketingInfo.getData()}</li> 
482                                                    </#list> 
483                                                </#if> 
484                                                <li> 
485                                                    <p> 
486                                                        Annual Fee: ${AMF!''} <a 
487                                                        href="${oadURL_TC}?step=display&amp;offerId=${fib.offerId}&amp;locationCode=${lc_used}" target="_blank"> 
488                                                            <span class="screen-reader-only">${partnerName!''} ${product!''} Card </span>See terms &amp; conditions 
489                                                        </a> 
490                                                    </p> 
491                                                </li> 
492                                            </ul> 
493                                        </div> 
494                                        <ul class="actions">                                     
495                                            <li> 
496                                                <form action="${oadURL}?locationCode=${lc_used}&amp;offerId=${fib.offerId}&amp;preparerType=customer&amp;sourceCode=${fib.sourceCode}" method="post" class="BAAForm"> 
497                                                    <label for="appDataBAA-${fib.offerId}" style="position:absolute; clip:rect(0 0 0 0);">Application Data</label> 
498                                                    <textarea rows="20" cols="100" name="applicationData" id="appDataBAA-${fib.offerId}" class="appDataBAA" style="display:none;" title="application data"></textarea>                                         
499                                                    <a  
500                                                        class="applyNowLink apply-now-button"  
501                                                        href="${oadURL}?locationCode=${lc_used}&amp;offerId=${fib.offerId}&amp;preparerType=customer&amp;sourceCode=${fib.sourceCode}"  
502                                                        data-button-name="apply-now-link"  
503                                                        data-product-name="${productName}" 
504
505                                                        ${consumerTitle.getSiblings()[cardIndex].applyNow.getData()} 
506                                                        <span class="screen-reader-only"> for ${partnerName!''} ${product!''} Card </span> 
507                                                    </a> 
508                                                </form> 
509                                            </li> 
510                                            <li> 
511                                                <a href="${environment}/${productName}?bankercode=${bCode}&ecdma-lc=${lc}${ecidExt}"> 
512                                                    ${consumerTitle.getSiblings()[cardIndex].LearnMore.getData()}<span class="screen-reader-only">about ${partnerName!''} ${product!''} Card </span> 
513                                                </a> 
514                                            </li> 
515                                        </ul> 
516                                    </div> 
517                                </div> 
518                                 
519                            </#list> 
520                             
521                        </div> 
522                    </div> 
523                </#if>  
524            </div> 
525            <script> 
526                var consumerSelector = '.jn-consumer-content-wrapper.jn-tab-content[data-id="consumerTab"]'; 
527                var businessSelector = '.jn-consumer-content-wrapper.jn-tab-content[data-id="businessTab"]'; 
528                 $(document).ready(function () { 
529                    var banker_code = "${bCode!''}"; 
530                    var tabs=$('.tab-nav'); 
531                    var slideDiv = $('.jn-tab-content.active');                    
532                    var screenWidthMobile = 768; 
533                    var screenWidth = window.innerWidth; 
534 
535                    if (tabs.length == 1) { 
536                        if ($(consumerSelector).length > 0) { 
537                            if(banker_code && (banker_code.indexOf("amp") == 0) && (banker_code.length > 6)) { 
538                                $("nav.jn-primary-nav").hide(); 
539                                changeCardLayout(consumerSelector); 
540                                createMetaTag("consumer"); 
541                            } else { 
542                                hideHeroAndDisclaimer('business'); 
543                                showHeroAndDisclaimer('consumer'); 
544                                changeCardLayout(consumerSelector); 
545                                renumberFootnote("consumer"); 
546                                createMetaTag("consumer");  
547
548                        }  
549                        if ($(businessSelector).length > 0) { 
550                            $(businessSelector).addClass('active'); 
551                            hideHeroAndDisclaimer('consumer'); 
552                            showHeroAndDisclaimer('business'); 
553                            changeCardLayout(businessSelector); 
554                            renumberFootnote("business"); 
555                            createMetaTag("business");  
556
557
558                    if (tabs.length == 2) { 
559                        renumberFootnote("consumer"); 
560                        renumberFootnote("business"); 
561                        createMetaTag("consumer"); 
562                        if ($(consumerSelector + ' .jn-consumer-item').length < 3) { 
563                            changeCardLayout(consumerSelector); 
564
565                        if ($(businessSelector + ' .jn-consumer-item').length < 3) { 
566                            changeCardLayout(businessSelector); 
567
568                             
569                        var tabsNav = document.querySelectorAll('.tab-nav'); 
570                        togglePrimaryNav(tabsNav); 
571 
572                        if(window.location.href.indexOf('#business') > -1 ) { 
573                            $(consumerSelector).removeClass('active'); 
574                            $(businessSelector).addClass('active'); 
575                            $('#consumerTab').removeClass('active'); 
576                            $('#businessTab').addClass('active'); 
577                            hideHeroAndDisclaimer('consumer'); 
578                            showHeroAndDisclaimer('business'); 
579                            changeCardLayout(businessSelector); 
580                            renumberFootnote("business"); 
581                            createMetaTag("business"); 
582 
583                            $(tabs).click(function(){ 
584                                if ($(this).attr('id') === "consumerTab") { 
585                                    var newUrl = window.location.toString(); 
586                                    window.location = newUrl.replace(/#business/, '#consumer'); 
587
588                                if ($(this).attr('id') === "businessTab") { 
589                                    var url = window.location.toString(); 
590                                    window.location = url.replace(/#consumer/, '#business'); 
591
592                            }); 
593
594
595                     
596                }); 
597                // Primary Nav function 
598                 
599                function togglePrimaryNav(elem) { 
600                    for (var i = 0; i < elem.length; i++) { 
601                        elem[i].addEventListener("click", function(e) { 
602 
603                            var current = this, 
604                                allSections = document.querySelectorAll('[data-id]'), 
605                                section = document.querySelector("[data-id='"+ current.id +"']"); 
606 
607                            for (var a = 0; a < allSections.length; a++) { 
608                                allSections[a].classList.remove('active'); 
609
610                            for (var c = 0; c < elem.length; c++) { 
611                                if (current != elem[c]) { 
612                                    elem[c].classList.remove('active'); 
613                                } else { 
614                                    current.classList.add('active'); 
615                                    section.classList.add('active'); 
616                                    hideHeroAndDisclaimer('consumer'); 
617                                    hideHeroAndDisclaimer('business'); 
618                                    if(current.getAttribute('id') === "consumerTab"){ 
619                                        showHeroAndDisclaimer('consumer'); 
620                                    } else if(current.getAttribute('id') === "businessTab"){ 
621                                        showHeroAndDisclaimer('business'); 
622
623
624
625                            e.preventDefault(); 
626                        }); 
627
628
629 
630                function renumberFootnote(type) { 
631                    var discriptionSelector = '.jn-consumer-content-wrapper.jn-tab-content' + '[data-id="' + type + 'Tab"]'; 
632                    var disclaimerSelector = '.tier1-disclaimer-landing-' + type; 
633                    var heroSelector = '.tier1-hero-landing-' + type; 
634                    var numOfFootnote = $(disclaimerSelector + ' sup').length; 
635                    var showList = []; 
636                    var hideList=[]; 
637                    for (var i = 1; i <= numOfFootnote; i++) { 
638                    var cssClass="tag-" + i; 
639                    if ($(discriptionSelector + ' sup').hasClass(cssClass) || $(heroSelector + ' sup').hasClass(cssClass)) { 
640                        showList.push(i);      
641                    } else { 
642                        hideList.push(i); 
643
644                    }  
645                    /* 
646                    for (var i = 1; i < showList.length + 1; i++) { 
647                        if(showList[i-1] != i) { 
648                            var className="tag-" + showList[i-1]; 
649                            $(heroSelector).find("." +  className).html(i); 
650                            // $(discriptionSelector).find("." +  className).html(i); 
651                            $(disclaimerSelector).find("." +  className).html(i); 
652
653
654                    */ 
655                    for (var i = 0; i <hideList.length; i++) { 
656                        var cname="tag-" + hideList[i]; 
657                        $(disclaimerSelector).find("." + cname).parent().hide(); 
658                    }    
659
660 
661                function changeCardLayout(cssSelector) { 
662                    var numOfCards = $(cssSelector + ' .jn-consumer-item').length; 
663                    if(numOfCards == 1) { 
664                        $(cssSelector).addClass('one-card'); 
665                    } else if (numOfCards == 2) { 
666                        $(cssSelector).addClass('two-card'); 
667                    }   
668
669                function hideHeroAndDisclaimer(type) { 
670                    try { 
671                        document.querySelector('.tier1-hero-landing-'+ type).classList.remove('show'); 
672                        document.querySelector('.tier1-hero-landing-'+ type).classList.add('hide'); 
673                    } catch (e) { 
674                        console.log(e); 
675
676 
677                    try { 
678                        document.querySelector('.tier1-disclaimer-landing-'+ type).classList.remove('show'); 
679                        document.querySelector('.tier1-disclaimer-landing-'+ type).classList.add('hide');  
680                    } catch (e) { 
681                        console.log(e); 
682
683 
684
685                function showHeroAndDisclaimer(type) { 
686                    try { 
687                        document.querySelector('.tier1-hero-landing-'+ type).classList.add('show'); 
688                        document.querySelector('.tier1-hero-landing-'+ type).classList.remove('hide'); 
689                    } catch (e) { 
690                        console.log(e); 
691
692                     
693                    try { 
694                        document.querySelector('.tier1-disclaimer-landing-'+ type).classList.add('show'); 
695                        document.querySelector('.tier1-disclaimer-landing-'+ type).classList.remove('hide');  
696                    } catch (e) { 
697                        console.log(e); 
698
699 
700
701                function createMetaTag(type) { 
702                    var partnerName = "${partnerName!0}"; 
703                    var product_name = $('.jn-hero-container .jn-button').data('product-name'); 
704                    var metaDesc = ""; 
705                    if (type == "consumer") {     
706                        if(location.pathname.indexOf("11t1m") != -1) { 
707                            metaDesc = "Apply Today for an Ameriprise Financial Credit Card. Earn Rewards Points worth $375 cash value when deposited into an eligible account after spending $3,000 in eligible net purchases within the first 90 days of account opening." 
708                        } else {                                    
709                            if(product_name ==  "consumer-platinum2103") { 
710                                metaDesc = "Apply Today for a "+partnerName+" Credit Card. Limited Time Offer. 0% Intro APR on Purchases and Balance Transfers for 20 Billing Cycles Consolidate your Balances with the "+partnerName+" Intro APR Card."; 
711                            } else if(product_name ==  "real-rewards") { 
712                                metaDesc = "Apply Today for a "+partnerName+" Credit Card. Take home 2,500 bonus points after your first purchase."; 
713                            } else if(product_name ==  "secured") { 
714                                metaDesc = "Apply Today for a "+partnerName+" Credit Card. Use this card as a solid foundation to build your credit."; 
715                            } else if(product_name ==  "max-cash") { 
716                                metaDesc = "Apply Today for a "+partnerName+" Credit Card. Earn a $150 Bonus and 5% cash back on the two categories you select."; 
717
718
719 
720                    } else if (type == "business") { 
721                        if(product_name ==  "business-cashback") {               
722                            metaDesc = "Apply Today for a "+partnerName+" Credit Card. Earn Cash back on common business expenses."; 
723                        } else if(product_name ==  "business-real-rewards") { 
724                            metaDesc = "Apply Today for a "+partnerName+" Credit Card. Get more rewards in the categories you spend the most on."; 
725                        } else if(product_name ==  "business-visa") { 
726                            metaDesc = "Apply Today for a "+partnerName+" Business Card. 0% Intro APR on Purchases and Balance Transfers for 15 Billing Cycles"; 
727                        } else if(product_name ==  "smart-business-rewards") { 
728                            metaDesc = "Apply Today for a "+partnerName+" Credit Card. More choices. More value for your business. Earn a $200 Bonus and 2x Rewards on your top 2 spend categories each month with the "+partnerName+" Credit Card."; 
729
730
731                    var m = document.createElement('meta');  
732                    m.name = 'description';  
733                    m.content = metaDesc;  
734                    document.head.appendChild(m); 
735
736                function goToByScroll(id) { 
737                    var element = document.getElementById(id); 
738                    element.scrollIntoView(true); 
739
740                 
741            </script> 
742            <script> 
743                    var reportingData = window.reportingData || {}; 
744                document.addEventListener('DOMContentLoaded', function() { 
745                    console.log('inside ready'); 
746                    var page = location.pathname.split('/')[location.pathname.split('/').length-1]; 
747                    var hostName = location.hostname;                                     
748                    function getDomainFromHostname(hostname) { 
749                        var parts = hostname.split('.'); 
750                        return parts.length === 3 ? parts[1] : parts[0]; 
751
752                    var domain = getDomainFromHostname(hostName); 
753                    var partnerName = "${partnerName!0}"; 
754                    var ameriprise = '${ameriprise?string("yes", "no")}'; 
755                    var locationCode = "${rLC!lc}"; 
756                    var eidAmp = ""; 
757                    var heroCardImgs = document.querySelectorAll('.jn-consumer-card-image img, .cardArtImg img'); 
758                    for (var index = 0; index < heroCardImgs.length; index++) { 
759                        var heroCardImg = heroCardImgs[index]; 
760                        var heroCardSrc = heroCardImg.getAttribute("src"); 
761                        if(heroCardSrc != "") { 
762                            resizeImg(heroCardImg); 
763
764
765                    if (ameriprise == "yes") { 
766                        var bankercode_amp = '${bCode}'; 
767                        eidAmp = bankercode_amp.substring(3); 
768                        locationCode =""; 
769                        document.title = "Ameriprise Financial Credit Card Overview Page"; 
770                    } else { 
771                        document.title = partnerName + " Credit Card Index Page"; 
772
773                     
774                    var lc = '${lc!0}'; 
775 
776                    var regex = /\d+/g; 
777                    var bdNumber = "${bPhone!''}"; 
778                    var phoneNum = bdNumber.match(regex); 
779                    var areaCode = ""; 
780                    var exchangeCode = ""; 
781                    var num = ""; 
782                    if(phoneNum != null) { 
783                        phoneNum = phoneNum.join(""); 
784                        areaCode = phoneNum.substring(0,3); 
785                        exchangeCode = phoneNum.substring(3,6); 
786                        num = phoneNum.substring(6,10); 
787
788 
789                        /* update SiteCatalyst data object */ 
790                    reportingData.current_page = "microsite:${partnerName}:" + domain + ':' + page.replace('-',' '); 
791                    reportingData.page_type = 'product';  
792                    reportingData.site_section = 'credit cards'; 
793                    reportingData.platform = 'microsite'; 
794                    reportingData.campaign_id = '${campaignId}'; 
795                    reportingData.location_code = '${rLC!0}'; 
796                    reportingData.partner_name = "${partnerName}"; 
797                    reportingData.product = 'All Cards'; 
798                    reportingData.text_to_apply_source = '${text_to_apply_source}'; 
799                    reportingData.visitor_type = 'prospect';         
800                    reportingData.Banker_id = '${boeid}'; 
801                    reportingData.Banker_code = '${bCode}'; 
802 
803                                                     
804                    /* SiteCatalyst  pageView tracking */ 
805                    AUI().ready(function() { 
806                        if (window.publisherFW) { 
807                            //console.log('reportingData', reportingData); 
808                            window.publisherFW.publishEvent("pageView", reportingData); 
809
810                    });  
811 
812                                     
813                    $('.jn-button').removeAttr('disabled'); 
814                    $('.jn-button').removeClass('jn-disabled'); 
815 
816                    jQuery('.applyNowLink').on('click', function(e){ 
817                        $(this).closest('.BAAForm').submit(); 
818                        ga("send", { 
819                            hitType: "event", 
820                            eventAction: "ApplyNow", 
821                            eventCategory: "click", 
822                            eventLabel: "BottomButton" 
823                        }); 
824                        return false; 
825                    }); 
826                    jQuery(".BAAForm").on("submit", function(e){ 
827                        e.preventDefault(); 
828                        console.log("in custom submit"); 
829                        var xmlData; 
830                        if(ameriprise == "yes") { 
831                            xmlData = '<?xml version="1.0"?>'+ 
832                                "<prefillData>"+  
833                                "<versionNumber>1.0</versionNumber>"+  
834                                "<applicationData>"+  
835                                "<referral>" +  
836                                "<employeeId>" + eidAmp + "</employeeId>" + 
837                                "<storeNumber>"+"${bName!'0'}"+"</storeNumber>"+ 
838                                "<divisionNumber></divisionNumber>"+ 
839                                "</referral>" +  
840                                "<bankerInformation>"+  
841                                "<locationCode>" + locationCode + "</locationCode>"+ 
842                                "<originatingBranchNumber>"+"${bName!'0'}"+"</originatingBranchNumber>"+ 
843                                "<employeeID>${boeid!0}</employeeID>"+ 
844                                "<name>" + 
845                                "<first>${bFName!'0'}</first>" + 
846                                "<last>${bLName!'0'}</last>" + 
847                                "</name>"+ 
848                                "<phone>"+ 
849                                "<areaCode>"+areaCode+"</areaCode>"+  
850                                "<exchange>"+exchangeCode+"</exchange>"+ 
851                                "<number>"+num+"</number>"+  
852                                "</phone>"+  
853                                "</bankerInformation>"+  
854                                "</applicationData>"+  
855                                "</prefillData>" 
856                        } else { 
857                            xmlData = '<?xml version="1.0"?>'+ 
858                                "<prefillData>"+  
859                                "<versionNumber>1.0</versionNumber>"+  
860                                "<applicationData>"+  
861                                "<bankerInformation>"+  
862                                "<locationCode>" + locationCode + "</locationCode>"+ 
863                                "<originatingBranchNumber>"+"${bName!'0'}"+"</originatingBranchNumber>"+ 
864                                "<employeeID>${boeid!0}</employeeID>"+ 
865                                "<name>" + 
866                                "<first>${bFName!'0'}</first>" + 
867                                "<last>${bLName!'0'}</last>" + 
868                                "</name>"+ 
869                                "<phone>"+ 
870                                "<areaCode>"+areaCode+"</areaCode>"+  
871                                "<exchange>"+exchangeCode+"</exchange>"+ 
872                                "<number>"+num+"</number>"+  
873                                "</phone>"+  
874                                "</bankerInformation>"+  
875                                "</applicationData>"+  
876                                "</prefillData>" 
877
878                        $(this).children(".appDataBAA").val(xmlData); 
879                        var buttonName = $(this).find(".apply-now-button").data("button-name"); 
880                        var productName = $(this).find(".apply-now-button").data("product-name"); 
881                        /* SiteCatalyst  onClick tracking */ 
882                        reportingData.apply_button = buttonName; 
883                        reportingData.product = productName; 
884 
885                        if (window.publisherFW) { 
886                            console.log('clicked', reportingData); 
887                            window.publisherFW.publishEvent("onClick", reportingData); 
888
889 
890                        this.submit(); 
891                    });                                                                
892                     
893 
894                }); 
895                function resizeImg(img) { 
896                    img.addEventListener("load", function() { 
897                        var cardImgWidth = img.width; 
898                        var cardImgHeight = img.height; 
899                        console.log('width', cardImgWidth); 
900                        console.log('height', cardImgHeight); 
901                        if(cardImgWidth > cardImgHeight) { 
902                            img.style.width = "285px"; 
903                        } else { 
904                            img.style.width = "150px"; 
905
906                    }); 
907
908            </script>                    
909                 
910        </#if>  
911    </#if> 
912</#if> 

Artikkel

En feil oppsto under behandling av visningsmalen.
Expression qstringmap["bankercode"] is undefined on line 5, column 17 in 10153#10191#5843858.
1<#assign url = request.attributes.CURRENT_URL > 
2<#assign qstringmap = httpUtil.getParameterMap(httpUtil.getQueryString(url))> 
3<#assign utilServ = serviceLocator.findService("crc-utilities-portlet", "com.elan.crc.utilities.service.CRCRemoteServiceService")> 
4 
5<#assign bCode= qstringmap["bankercode"]?first> 
6<#assign bData = utilServ.makeCall('crcDDCBankerAssistedAppDetailSql','0&'+bCode)> 
7<#list bData as b>      
8    <#assign lc = b.locationcode > 
9    <#assign rLC = b.reallocationcode > 
10    <#assign mappedLC = b.mappedLocationCode > 
11</#list>  
12<#if bCode?starts_with("amp") && (url?contains("11t1m"))> 
13    <#assign ameriprise = true> 
14<#else> 
15    <#assign ameriprise = false> 
16</#if> 
17<#if mappedLC?has_content && !ameriprise> 
18    <#assign lc = mappedLC > 
19</#if> 
20 
21 
22<#if lc?has_content> 
23    <#assign prefix = "00000" > 
24    <#assign lcWithPrefix = prefix + lc > 
25    <#assign withPrefixLength = lcWithPrefix?length > 
26    <#assign startHere = withPrefixLength - 5> 
27    <#assign lc = lcWithPrefix?substring(startHere)> 
28    <#assign clientProfileService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcClientProfileLocalService") > 
29    <#assign clientProfileList = clientProfileService.findByLocationCode(lc)> 
30 
31    <#assign clientProfile = clientProfileList?first>  
32    <#assign partnerName=clientProfile.getMarketingNameLong()> 
33 
34    <#assign pbu = clientProfile.getPbu()> 
35    <#assign subbu = clientProfile.getSUBBRANDBUNBR()> 
36    <#assign fiCardsData = utilServ.makeCall('crcTier3GetPbuData','0&'+ pbu +'&'+subbu)>  
37    <#assign cardProvider = utilServ.makeCall('crcDDCGetMcOrVisa', fiCardsData[0].offerType + '&' + lc)> 
38 
39    <#if (cardProvider?size > 0)> 
40        <#-- This will be V for visa or M for mastercard. --> 
41        <#assign cardProviderAbbreviated = cardProvider[0].cardType> 
42    <#else> 
43        <script> 
44            console.log("No card provider(Visa/Master Card) found for disclaimer"); 
45        </script> 
46    </#if> 
47 
48 
49    <div class="jn-disclaimer tier1-disclaimer-${class.getData()}" title="${partnerName} - Disclaimer"> 
50        <div class="disclaimer" > 
51            <#if (disclaimersVisa?has_content && cardProviderAbbreviated?contains("V"))> 
52                ${disclaimersVisa.getData()} 
53            </#if> 
54            <#if (disclaimersMasterCard?has_content && cardProviderAbbreviated?contains("M")) > 
55                ${disclaimersMasterCard.getData()} 
56            </#if> 
57        </div> 
58    </div> 
59<#else> 
60    <script> 
61        console.log("No lc for disclaimer"); 
62    </script> 
63</#if> 

Artikkel

En feil oppsto under behandling av visningsmalen.
Expression qstringmap["bankercode"] is undefined on line 5, column 17 in 10153#10191#5843858.
1<#assign url = request.attributes.CURRENT_URL > 
2<#assign qstringmap = httpUtil.getParameterMap(httpUtil.getQueryString(url))> 
3<#assign utilServ = serviceLocator.findService("crc-utilities-portlet", "com.elan.crc.utilities.service.CRCRemoteServiceService")> 
4 
5<#assign bCode= qstringmap["bankercode"]?first> 
6<#assign bData = utilServ.makeCall('crcDDCBankerAssistedAppDetailSql','0&'+bCode)> 
7<#list bData as b>      
8    <#assign lc = b.locationcode > 
9    <#assign rLC = b.reallocationcode > 
10    <#assign mappedLC = b.mappedLocationCode > 
11</#list>  
12<#if bCode?starts_with("amp") && (url?contains("11t1m"))> 
13    <#assign ameriprise = true> 
14<#else> 
15    <#assign ameriprise = false> 
16</#if> 
17<#if mappedLC?has_content && !ameriprise> 
18    <#assign lc = mappedLC > 
19</#if> 
20 
21 
22<#if lc?has_content> 
23    <#assign prefix = "00000" > 
24    <#assign lcWithPrefix = prefix + lc > 
25    <#assign withPrefixLength = lcWithPrefix?length > 
26    <#assign startHere = withPrefixLength - 5> 
27    <#assign lc = lcWithPrefix?substring(startHere)> 
28    <#assign clientProfileService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcClientProfileLocalService") > 
29    <#assign clientProfileList = clientProfileService.findByLocationCode(lc)> 
30 
31    <#assign clientProfile = clientProfileList?first>  
32    <#assign partnerName=clientProfile.getMarketingNameLong()> 
33 
34    <#assign pbu = clientProfile.getPbu()> 
35    <#assign subbu = clientProfile.getSUBBRANDBUNBR()> 
36    <#assign fiCardsData = utilServ.makeCall('crcTier3GetPbuData','0&'+ pbu +'&'+subbu)>  
37    <#assign cardProvider = utilServ.makeCall('crcDDCGetMcOrVisa', fiCardsData[0].offerType + '&' + lc)> 
38 
39    <#if (cardProvider?size > 0)> 
40        <#-- This will be V for visa or M for mastercard. --> 
41        <#assign cardProviderAbbreviated = cardProvider[0].cardType> 
42    <#else> 
43        <script> 
44            console.log("No card provider(Visa/Master Card) found for disclaimer"); 
45        </script> 
46    </#if> 
47 
48 
49    <div class="jn-disclaimer tier1-disclaimer-${class.getData()}" title="${partnerName} - Disclaimer"> 
50        <div class="disclaimer" > 
51            <#if (disclaimersVisa?has_content && cardProviderAbbreviated?contains("V"))> 
52                ${disclaimersVisa.getData()} 
53            </#if> 
54            <#if (disclaimersMasterCard?has_content && cardProviderAbbreviated?contains("M")) > 
55                ${disclaimersMasterCard.getData()} 
56            </#if> 
57        </div> 
58    </div> 
59<#else> 
60    <script> 
61        console.log("No lc for disclaimer"); 
62    </script> 
63</#if> 

Artikkel

En feil oppsto under behandling av visningsmalen.
Expression qstringmap["bankercode"] is undefined on line 6, column 17 in 10153#10191#6590080.
1<#assign url = request.attributes.CURRENT_URL > 
2<#assign qstringmap = httpUtil.getParameterMap(httpUtil.getQueryString(url))> 
3<#assign utilServ = serviceLocator.findService("crc-utilities-portlet", "com.elan.crc.utilities.service.CRCRemoteServiceService")> 
4<#assign url404 = '/error/404.html'> 
5 
6<#assign bCode= qstringmap["bankercode"]?first> 
7<#assign bData = utilServ.makeCall('crcDDCBankerAssistedAppDetailSql','0&'+bCode)> 
8<#list bData as b>      
9    <#assign lc = b.locationcode > 
10    <#assign rLC = b.reallocationcode > 
11    <#assign mappedLC = b.mappedLocationCode > 
12</#list>  
13 
14<#if bCode?starts_with("amp") && (url?contains("11t1m"))> 
15    <#assign ameriprise = true> 
16<#else> 
17    <#assign ameriprise = false> 
18</#if> 
19<#if mappedLC?has_content && !ameriprise> 
20    <#assign lc = mappedLC > 
21</#if> 
22 
23<#if lc?has_content> 
24 
25    <#assign prefix = "00000" > 
26    <#assign lcWithPrefix = prefix + lc > 
27    <#assign withPrefixLength = lcWithPrefix?length > 
28    <#assign startHere = withPrefixLength - 5> 
29    <#assign lc = lcWithPrefix?substring(startHere)> 
30    <#assign clientProfileService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcClientProfileLocalService") > 
31    <#assign clientProfileList = clientProfileService.findByLocationCode(lc)> 
32 
33    <#assign clientProfile = clientProfileList?first> 
34    <#assign pbu = clientProfile.getPbu()> 
35    <#assign subbu = clientProfile.getSUBBRANDBUNBR()>   
36    <#assign partnerName=clientProfile.getMarketingNameLong()> 
37    <#assign clientDataService = serviceLocator.findService("crc-clientprofile-portlet", "com.elan.crc.servicebuilder.crcclientprofile.service.CrcPbuLocalService") > 
38    <#assign clientProfileDataList = clientDataService.getByPbuAndSubBu(pbu,subbu)> 
39    <#assign partnerUrl = clientProfileDataList.getPartnerMainUrl()> 
40    <#if partnerUrl?has_content && !partnerUrl?matches(r"(?i)^https?\:\/\/.*") && !partnerUrl?matches(r"(?i)^https?\:&#x2F;&#x2F;.*")> 
41        <#-- add protocal if missing  --> 
42        <#assign partnerUrl = 'https://' + partnerUrl> 
43    </#if> 
44    <footer class="footer bg-color-black text-color-white"> 
45        ${footerContent.getData()} 
46    </footer> 
47    <#if url?contains("11t1m")> 
48        <script>                 
49            document.querySelector('.footer .copyright').classList.add("ecdma-footer-client-name-copyright"); 
50            document.querySelector('.footer .fdic').innerHTML='<a class="text-color-white" href="https://login.elancreditcard.com/onlineCard/publicPrivacyPolicy.do?loc=18598" target="_blank">Privacy and Security</a>'; 
51        </script> 
52    <#else> 
53        <script>                 
54            document.querySelector('.footer .copyright').classList.add("ecdma-footer-client-name-copyright"); 
55            document.querySelector('.footer .fdic').innerHTML='<a class="text-color-white" href="https://www.myaccountaccess.com/onlineCard/publicPrivacyPolicy.do?loc=${lc!0}" target="_blank">Privacy and Security</a>'; 
56            var newNode = document.createElement("div");  
57             newNode.classList.add("member-agreement"); 
58            newNode.innerHTML='<a class="text-color-white" href="https://online1.elancard.com/oad/cmas.controller?locationCode=${lc!0}&preparerType=customer&isNewRequest=false" target="_blank">Cardmember Agreements</a>'; 
59            var fdicNode = document.querySelector('.footer .fdic'); 
60            var parent = fdicNode.parentNode; 
61            parent.insertBefore(newNode, fdicNode); 
62        </script> 
63    </#if> 
64 
65    <#if partnerUrl?has_content> 
66        <script> 
67            document.querySelector('.copyright .homelink').innerHTML="<a class='text-color-white' href='${partnerUrl!''}' title='${partnerName!''}' target='_blank'>Home</a>"; 
68        </script> 
69    </#if> 
70</#if>