Skip to main content
Eoin_Lyons1
Level 2
September 4, 2019
Respondido

Velocity script adding a space before my URL

  • September 4, 2019
  • 11 comentários
  • 5860 Visualizações

Hi, 

I don't fully understand the code below, but am hoping someone who does can tell me why there's a space being inserted before my URL when I apply this script token to an email.

Thanks!

#set($Calendly = $display.alt($OpportunityList.get(0).Calendly_OC_Checkin__c.trim(),""))

#if(
$Calendly.isEmpty() ||
$Calendly.indexOf(" ") == 1
)
https://calendly.com/welcome-to-bench/account-check-in##
#else
#set($Calendly = $Calendly.trim())
$display.capitalize($Calendly.toLowerCase())##
#end
Este tópico foi fechado para respostas.
Melhor resposta por SanfordWhiteman

You've got leading whitespace as well when you use the fallback value (check that indent on line 10). This code has no extraneous printable whitespace:

#set( $Calendly = $display.alt( $OpportunityList.get(0).Calendly_OC_Checkin__c.trim(),"" ) )
#if(
$Calendly.isEmpty() ||
$Calendly.indexOf(" ") == 1
)
https://calendly.com/welcome-to-bench/account-check-in##
#else
#set( $Calendly = $Calendly.trim() )
$display.capitalize( $Calendly.toLowerCase() )##
#end

Note how there are spaces inside the parens. That's totally fine (and necessary to stay sane when coding) because it's not printable.

11 comentários

SanfordWhiteman
Level 10
September 4, 2019

Line 2 is whitespace. Velocity doesn't insert whitespace, but it always *preserves* whitespace.

Eoin_Lyons1
Level 2
September 5, 2019

Hey Sanford - that's good to know. What's the best way to get rid of it? I deleted this line and even mashed it together so it read like

__c.trim(),""))#if(

... but neither worked

SanfordWhiteman
Level 10
September 5, 2019

You've got leading whitespace as well when you use the fallback value (check that indent on line 10). This code has no extraneous printable whitespace:

#set( $Calendly = $display.alt( $OpportunityList.get(0).Calendly_OC_Checkin__c.trim(),"" ) )
#if(
$Calendly.isEmpty() ||
$Calendly.indexOf(" ") == 1
)
https://calendly.com/welcome-to-bench/account-check-in##
#else
#set( $Calendly = $Calendly.trim() )
$display.capitalize( $Calendly.toLowerCase() )##
#end

Note how there are spaces inside the parens. That's totally fine (and necessary to stay sane when coding) because it's not printable.