I don't know of anything in the email-ext code that would escape anything
like you are describing. Can you try checking the "save to workspace"
checkbox in the project settings and see if the same escaping is shown in
the saved off file?


On Mon, Apr 21, 2014 at 11:08 AM, Stephan Lips <stephan.l...@gmail.com>wrote:

> Yes, the issue reproduces with a template.  Curiously, when testing the
> template (through the 'Email Template Testing' link in the workspace), the
> inserted base64 string renders correctly.  The received email, however,
> still sees the &#43; escapes instead of the '+' char, causing the base64
> img src to not render.
>
> The template I'm using (saved to $JENKINS_HOME/email-templates) is
>
> <TABLE>
>   <TR><TD align="right"><IMG
> SRC="${rooturl}static/e59dfe28/images/32x32/<%= build.result.toString() ==
> 'SUCCESS' ? "blue.gif" : build.result.toString() == 'FAILURE' ? 'red.gif' :
> 'yellow.gif' %>" />
>   </TD><TD valign="center"><B style="font-size: 200%;">BUILD
> ${build.result}</B></TD></TR>
>   <TR><TD>Build URL</TD><TD><A
> href="${rooturl}${build.url}">${rooturl}${build.url}</A></TD></TR>
>   <TR><TD>Project:</TD><TD>${project.name}</TD></TR>
>   <TR><TD>Date of build:</TD><TD>${it.timestampString}</TD></TR>
>   <TR><TD>Build duration:</TD><TD>${build.durationString}</TD></TR>
> </TABLE>
> <BR/>
>
>
> <img src="data:image/png;base64,<%=
> build.getParent().getWorkspace().child("my-image.b64").readToString() %>"
> width="700" height="400">
>
>
> The file 'my-image.b64' is confirmed to exist in the workspace, and
> contain valid base64.  The contents of the file are inserted correctly,
> save for the html-escaped '+' char.
>
> So, how do I turn off html escaping of content?
>
> Thx, S
>
>
> On Mon, Apr 21, 2014 at 9:59 AM, Slide <slide.o....@gmail.com> wrote:
>
>> Yes, I'd like you to try and see if the issue occurs with a template.
>> On Apr 21, 2014 6:49 AM, "Stephan Lips" <stephan.l...@gmail.com> wrote:
>>
>>> It reproduces without any templates.  Simply put the following in the
>>> 'Default Content' field of the ext-email configuration:
>>>
>>> <img src='data:image/png;base64,ley2Rz+WBUus2qBS8'/>
>>> a+b
>>>
>>> The email received will show the above as
>>>
>>> <img src="data:image/png;base64,ley2Rz&#43;WBUus2qBS8">
>>> a&#43;b
>>>
>>> (note the &#34; in place of the '+' signs).
>>>
>>> Thx,
>>>
>>> - S
>>>
>>>
>>>
>>>
>>> On Fri, Apr 18, 2014 at 8:37 PM, Slide <slide.o....@gmail.com> wrote:
>>>
>>>> Can you try using a groovy template instead of just trying to generate
>>>> the HTML yourself? I'm not sure why the text is being encoded like you
>>>> mention. I can try and recreate if you send the file you are using and the
>>>> template.
>>>> On Apr 18, 2014 5:48 PM, "stephanl" <stephan.l...@gmail.com> wrote:
>>>>
>>>>> So then, do you know if there is a way to send a base64 as-is in an
>>>>> email?  E.g. without being html-escaped implicitly?  Looks like some macro
>>>>> tokens support this, through the escapeHtml attribute.  I did not see
>>>>> anything in the ext-email code base suggesting there is a global
>>>>> option/switch, or for individual fields.  But I also did not see on 
>>>>> cursory
>>>>> glance where the html escaping occurs, so is there an option somewhere 
>>>>> else?
>>>>>
>>>>> Thx, S
>>>>>
>>>>> On Friday, April 18, 2014 4:08:36 PM UTC-5, slide wrote:
>>>>>>
>>>>>> There is no capability to add a different content type.
>>>>>>
>>>>>>
>>>>>> On Fri, Apr 18, 2014 at 1:16 PM, stephanl <stepha...@gmail.com>wrote:
>>>>>>
>>>>>>> HTML (text/html).  For grins, I tried Plain Text (text/plain), in
>>>>>>> which case the base64 string was included un-escaped, but (of course) 
>>>>>>> not
>>>>>>> recognized/rendered as image when the containing email was viewed.  In 
>>>>>>> the
>>>>>>> configuration section of the ext-email plugin these are the only two
>>>>>>> options (text/html and text/plain).  If another content-type is 
>>>>>>> required,
>>>>>>> how do I add it (UI does not show option to add addt'l content types, 
>>>>>>> using
>>>>>>> latest jenkins and ext-email versions), and what should it be?
>>>>>>>
>>>>>>> Thx, S
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Friday, April 18, 2014 3:08:05 PM UTC-5, slide wrote:
>>>>>>>
>>>>>>>> What is your content type set to in the settings?
>>>>>>>>
>>>>>>>>
>>>>>>>> On Fri, Apr 18, 2014 at 12:52 PM, stephanl <stepha...@gmail.com>wrote:
>>>>>>>>
>>>>>>>>> Not using templates.  Tried using
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> <img src='data:image/png;base64, ${FILE,
>>>>>>>>> path="my-base64-encoded-png.b64"}' width="900" height="550"/>
>>>>>>>>>
>>>>>>>>> in the 'Default Content' section/field of the ext-email plugin.
>>>>>>>>>  Also tried using
>>>>>>>>>
>>>>>>>>> def reportPath = build.getWorkspace().child("my
>>>>>>>>> -base64-encoded-png.b64")
>>>>>>>>> msg.setContent("<img src='data:image/png;base64," +
>>>>>>>>> reportPath.readToString() + "'/>", "text/html");
>>>>>>>>>
>>>>>>>>>  as pre-send script (also in the ext-email plugin, Advanced
>>>>>>>>> section).  From what I can tell, the html encoding occurs after the 
>>>>>>>>> default
>>>>>>>>> content and pre-send scripts have been processed/executed.  Which 
>>>>>>>>> would
>>>>>>>>> apply to templates as well, no?
>>>>>>>>>
>>>>>>>>> Thx, S
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Friday, April 18, 2014 12:31:05 PM UTC-5, slide wrote:
>>>>>>>>>
>>>>>>>>>> Are you using a groovy or jelly template, or generating the HTML
>>>>>>>>>> yourself?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Fri, Apr 18, 2014 at 10:20 AM, stephanl 
>>>>>>>>>> <stepha...@gmail.com>wrote:
>>>>>>>>>>
>>>>>>>>>>> Howdy,
>>>>>>>>>>>
>>>>>>>>>>> I am trying to embed a base64 img src in the body/content of an
>>>>>>>>>>> ext-email notification, like so:
>>>>>>>>>>>
>>>>>>>>>>> <img src='data:image/png;base64, ${FILE,
>>>>>>>>>>> path="my-base64-encoded-png.b64"}' width="900" height="550"/>
>>>>>>>>>>>
>>>>>>>>>>> The email I receive has all '+' characters in the included
>>>>>>>>>>> base64 string escaped as &#43;.  I tried to set the email content 
>>>>>>>>>>> in a
>>>>>>>>>>> pre-send groovy script, like so:
>>>>>>>>>>>
>>>>>>>>>>> def reportPath = build.getWorkspace().child("my
>>>>>>>>>>> -base64-encoded-png.b64")
>>>>>>>>>>> msg.setContent("<img src='data:image/png;base64," +
>>>>>>>>>>> reportPath.readToString() + "'/>", "text/html");
>>>>>>>>>>>
>>>>>>>>>>>  and still see the escapes for the '+' in the email received.  I
>>>>>>>>>>> do not see an option to turn off html escaping (except for a few 
>>>>>>>>>>> macro
>>>>>>>>>>> tokens, which I am not using).
>>>>>>>>>>>
>>>>>>>>>>> Any insights/advice on how I can embed a base64 image in an
>>>>>>>>>>> email without triggeriung automatic encoding of the base64 string?  
>>>>>>>>>>> And no,
>>>>>>>>>>> referencing the image by URL is not an option, unfortunately.  
>>>>>>>>>>> Last, for
>>>>>>>>>>> grins I have included verbatim strings in the email body/content, 
>>>>>>>>>>> like
>>>>>>>>>>> 'A+B' and "A+B", in all cases the '+' character arrived encoded.
>>>>>>>>>>>
>>>>>>>>>>> TIA,
>>>>>>>>>>>
>>>>>>>>>>> - S
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> You received this message because you are subscribed to the
>>>>>>>>>>> Google Groups "Jenkins Users" group.
>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from
>>>>>>>>>>> it, send an email to jenkinsci-use...@googlegroups.com.
>>>>>>>>>>>
>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Website: http://earl-of-code.com
>>>>>>>>>>
>>>>>>>>>  --
>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>> Groups "Jenkins Users" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>>>> send an email to jenkinsci-use...@googlegroups.com.
>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Website: http://earl-of-code.com
>>>>>>>>
>>>>>>>  --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "Jenkins Users" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>> send an email to jenkinsci-use...@googlegroups.com.
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Website: http://earl-of-code.com
>>>>>>
>>>>>  --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Jenkins Users" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to jenkinsci-users+unsubscr...@googlegroups.com.
>>>>>
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>  --
>>>> You received this message because you are subscribed to a topic in the
>>>> Google Groups "Jenkins Users" group.
>>>> To unsubscribe from this topic, visit
>>>> https://groups.google.com/d/topic/jenkinsci-users/cwLvSKlxO3I/unsubscribe
>>>> .
>>>> To unsubscribe from this group and all its topics, send an email to
>>>> jenkinsci-users+unsubscr...@googlegroups.com.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "Jenkins Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to jenkinsci-users+unsubscr...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>  --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "Jenkins Users" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/jenkinsci-users/cwLvSKlxO3I/unsubscribe
>> .
>> To unsubscribe from this group and all its topics, send an email to
>> jenkinsci-users+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Jenkins Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to jenkinsci-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Website: http://earl-of-code.com

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to