TYPO free

home

fighting for TYPO free code

Removing the unused blurLink related javaScript

21 Jun 2009

There is ancient code in TYPO3. It lives in 'sysext/cms/tslib/class.tslib_pagegen.php'. Here is the code that is included by default when you have not disabled all default JS code by setting 'config.removeDefaultJS' to 1.

var browserName = navigator.appName;
var browserVer = parseInt(navigator.appVersion);
var version = "";
var msie4 = (browserName == "Microsoft Internet Explorer" && browserVer >= 4);
if ((browserName == "Netscape" && browserVer >= 3) || msie4 || browserName=="Konqueror" || browserName=="Opera") {version = "n3";} else {version = "n2";}
  // Blurring links:
function blurLink(theObject)  { //
  if (msie4)  {theObject.blur();}
}

I do not use the blurLink function anywhere in my site. I have hardly any visitors that use these ancient browser versions. I would like TYPO3 to stop including this script by default and sending it to the client on every page request.

The only solution I could find is to set config.removeDefaultJS to 1. But alas, this also stops TYPO3 from including the 'linkTo_UnCryptMailto' function. I would love to have a configuration setting for this ;-). It also stops your JSeventFunctions from working (if you have defined any). So take a look at the file and see if you are affected in any way by setting removeDefaultJS to true.

I created my own JavaScript include file for the email decryption functions and load that statically using TS. This works fine and now I can disable the DefaultJS and get rid of the ancient blurLink code.

page.includeJS = COA
page.includeJS {
    file1 = {$scriptPath}spam.js
    file1.type = application/x-javascript
}
 

I would love a configuration option for the blurLink function inclusion. Something like:

config.ICanHazOldSkoolBlurLinkJS = 1

That would do the job for people who really want it back.
;-)

add comment
Commenting is closed for this item