<html><body><div style="font-family: arial, helvetica, sans-serif; font-size: 10pt; color: #000000"><div>Hi Folks,</div><div><br></div><div>Most of the following explanation is for my benefit with the expectation that I will get corrections where I misunderstand, but the real question is just the last line of this message.</div><div><br></div><div><span style="font-size: 10pt; background-color: rgb(253, 253, 253);">I have an audio field which plays mp3s just fine. I need to occasionally download them. When I configure a content type, I can select a display field type of "Audio Player" or "Audio Player with Download". I need "Audio Player with Download", but this is a cruel joke! <span style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;">"Left-Click" just gets me "Play"; </span>"Download" requires "Right-Click".</span></div><div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;"> </span></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;">When I "Inspect Element", I see a reasonably complicated block of HTML for each "Audio Player with Download".</span></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;"><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;"></span></span><blockquote><pre data-mce-style="margin: 0px;" style="margin: 0px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><section class="field field-name-field-tl field-type-file field-label-inline clearfix view-mode-full"></span></pre><pre data-mce-style="margin: 0px; padding-left: 30px;" style="margin: 0px; padding-left: 30px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><h2 class="field-label">TL:&nbsp;</h2></span></pre><pre data-mce-style="margin: 0px; padding-left: 30px;" style="margin: 0px; padding-left: 30px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><div class="field-items"></span></pre><pre data-mce-style="margin: 0px; padding-left: 60px;" style="margin: 0px; padding-left: 60px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><div class="field-item even"></span></pre><pre data-mce-style="margin: 0px; padding-left: 90px;" style="margin: 0px; padding-left: 90px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><object class="audioplayer2" height="24" width="290" data="/sites/all/libraries/audioplayers/audio-player/player.swf" type="application/x-shockwave-flash"></span></pre><pre data-mce-style="margin: 0px; padding-left: 120px;" style="margin: 0px; padding-left: 120px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><param value="/sites/all/libraries/audioplayers/audio-player/player.swf" name="movie"></span><br><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><param value="playerID=2&amp;bg=0xCDDFF3&amp;leftbg=0x357DCE&amp;lefticon=0xF2F2F2&amp;rightbg=0xF06A51&amp;rightbghover=0xAF2910&amp;righticon=0xF2F2F2&amp;righticonhover=0xFFFFFF&amp;text=0x357DCE&amp;slider=0x357DCE&amp;track=0xFFFFFF&amp;border=0xFFFFFF&amp;loader=0xAF2910&amp;soundFile=http://new.capitolaires.org/sites/default/files/music/tl/Sweet%20And%20Lovely.mp3" name="FlashVars"></span><br><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><param value="high" name="quality"></span><br><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><param value="false" name="menu"></span><br><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><param value="transparent" name="wmode"></span></pre><pre data-mce-style="margin: 0px; padding-left: 90px;" style="margin: 0px; padding-left: 90px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"></object></span></pre><pre data-mce-style="margin: 0px; padding-left: 90px;" style="margin: 0px; padding-left: 90px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><div class="audio-download"><b>Download:</b></span></pre><pre data-mce-style="margin: 0px; padding-left: 120px;" style="margin: 0px; padding-left: 120px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><span class="file"></span></pre><pre data-mce-style="margin: 0px; padding-left: 150px;" style="margin: 0px; padding-left: 150px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"><img class="file-icon" alt="" title="audio/mpeg" src="/modules/file/icons/audio-x-generic.png"></span></pre><pre data-mce-style="margin: 0px; padding-left: 150px;" style="margin: 0px; padding-left: 150px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"> <a href="http://new.capitolaires.org/sites/default/files/music/tl/Sweet%20And%20Lovely.mp3" type="audio/mpeg; length=1707678">Sweet And Lovely.mp3</a></span></pre><pre data-mce-style="margin: 0px; padding-left: 120px;" style="margin: 0px; padding-left: 120px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"></span></span></pre><pre data-mce-style="margin: 0px; padding-left: 90px;" style="margin: 0px; padding-left: 90px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"></div></span></pre><pre data-mce-style="margin: 0px; padding-left: 60px;" style="margin: 0px; padding-left: 60px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"></div></span></pre><pre data-mce-style="margin: 0px; padding-left: 30px;" style="margin: 0px; padding-left: 30px;"><span style="font-family: arial, helvetica, sans-serif; font-size: xx-small;" data-mce-style="font-family: arial, helvetica, sans-serif; font-size: xx-small;"></div></span></pre><pre data-mce-style="margin: 0px;" style="margin: 0px;"><span style="font-size: xx-small; font-family: arial, helvetica, sans-serif;" data-mce-style="font-size: xx-small; font-family: arial, helvetica, sans-serif;"></section></span></pre></blockquote></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;">The way I see it, I can either </span><span style="font-size: 10pt;">hack this field to make it do what I want</span><span style="font-size: 10pt;"> or I can </span><span style="font-size: 10pt;">create a display field that does what I want.</span></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><span style="font-size: 10pt;"><br></span></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><span style="font-size: 10pt;">"Hacking" would involve:</span></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;"><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;"></span></span><ol><li><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;">I can re-jigger the whole node in JavaScript.</span></li><li><span style="font-size: 10pt;" data-mce-style="font-size: 10pt;">Find the code which renders "Audio Field with Download" in core, and write a module that will intercept that output and modify it to the structure I want before it becomes part of the page</span></li></ol>"Creating" would involve:</div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><ol><li><span style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;">Find the code which renders "Audio Field with Download" in core, and copy it as a Custom Formatter for "Audio Field with Download, Really"</span></li></ol></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><br></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><br></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><br></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;"><br></div><div style="background-color: #fdfdfd;" data-mce-style="background-color: #fdfdfd;">I don't think either of my "hacking" options are very future-proof, which leaves me with my preference, "creating", but I need to know where the code which renders the display field "Audio Field with Download" lives. Can anybody tell me w<span style="font-size: small;">here can I find the code that outputs the HTML I see when I define a display field as "Audio File with Download"?</span></div><div><span size="2" style="font-size: small;" data-mce-style="font-size: small;"></span><br></div><div><span size="2" style="font-size: small;" data-mce-style="font-size: small;">Thanks for the help,</span></div><div><span size="2" style="font-size: small;" data-mce-style="font-size: small;"><br></span></div></div><div><span name="x"></span>Chris.</div></div></body></html>