Board Thread:Support Requests - Getting Technical/@comment-28639118-20151221142253/@comment-4731443-20151222175945

The explanation is simple. Your USERNAME template does not actually insert a username into a page's code. It simply creates a span element with a certain class that contains a placeholder. When the page is served to a client, the placeholder is still in the source. Then, at page load, a JavaScript function replaces the content of the span with the client's username, if logged in. It's important to understand that JavaScript is run in the client, not on the server.

So when you try to use USERNAME in a template, the parameter you are actually passing to the other template is whatever the USERNAME template outputs as a placholder when transcluded; currently this: