3 var isMSIE55
= (window
.showModalDialog
&& window
.clipboardData
&& window
.createPopup
);
7 if (document
.attachEvent
)
8 document
.attachEvent('onreadystatechange', hookit
);
11 if (!doneIETransform
&& document
.getElementById
&& document
.getElementById('bodyContent')) {
12 doneIETransform
= true;
18 // png alpha transparency fixes
21 if (isMSIE55
&& !doneIEAlphaFix
)
23 var plogo
= document
.getElementById('p-logo');
26 var logoa
= plogo
.getElementsByTagName('a')[0];
29 var bg
= logoa
.currentStyle
.backgroundImage
;
30 var imageUrl
= bg
.substring(5, bg
.length
-2);
32 doneIEAlphaFix
= true;
34 if (imageUrl
.substr(imageUrl
.length
-4).toLowerCase() == '.png') {
35 var logospan
= logoa
.appendChild(document
.createElement('span'));
37 logoa
.style
.backgroundImage
= 'none';
38 logospan
.style
.filter
= 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=' + imageUrl
+ ')';
39 logospan
.style
.height
= '100%';
40 logospan
.style
.position
= 'absolute';
41 logospan
.style
.width
= logoa
.currentStyle
.width
;
42 logospan
.style
.cursor
= 'hand';
43 // Center image with hack for IE5.5
44 if (document
.documentElement
.dir
== "rtl")
46 logospan
.style
.right
= '50%';
47 logospan
.style
.setExpression('marginRight', '"-" + (this.offsetWidth / 2) + "px"');
51 logospan
.style
.left
= '50%';
52 logospan
.style
.setExpression('marginLeft', '"-" + (this.offsetWidth / 2) + "px"');
54 logospan
.style
.top
= '50%';
55 logospan
.style
.setExpression('marginTop', '"-" + (this.offsetHeight / 2) + "px"');
57 var linkFix
= logoa
.appendChild(logoa
.cloneNode());
58 linkFix
.style
.position
= 'absolute';
59 linkFix
.style
.height
= '100%';
60 linkFix
.style
.width
= '100%';
65 // fix ie6 disappering float bug
66 function relativeforfloats() {
67 var bc
= document
.getElementById('bodyContent');
69 var tables
= bc
.getElementsByTagName('table');
70 var divs
= bc
.getElementsByTagName('div');
75 function setrelative (nodes
) {
77 while (i
< nodes
.length
) {
78 if(((nodes
[i
].style
.float && nodes
[i
].style
.float != ('none') ||
79 (nodes
[i
].align
&& nodes
[i
].align
!= ('none'))) &&
80 (!nodes
[i
].style
.position
|| nodes
[i
].style
.position
!= 'relative')))
82 nodes
[i
].style
.position
= 'relative';
89 // Expand links for printing
91 String
.prototype.hasClass = function(classWanted
)
93 var classArr
= this.split(/\s/);
94 for (var i
=0; i
<classArr
.length
; i
++)
95 if (classArr
[i
].toLowerCase() == classWanted
.toLowerCase()) return true;
101 onbeforeprint = function() {
104 var contentEl
= document
.getElementById("content");
108 var allLinks
= contentEl
.getElementsByTagName("a");
110 for (var i
=0; i
< allLinks
.length
; i
++) {
111 if (allLinks
[i
].className
.hasClass("external") && !allLinks
[i
].className
.hasClass("free")) {
112 var expandedLink
= document
.createElement("span");
113 var expandedText
= document
.createTextNode(" (" + allLinks
[i
].href
+ ")");
114 expandedLink
.appendChild(expandedText
);
115 allLinks
[i
].parentNode
.insertBefore(expandedLink
, allLinks
[i
].nextSibling
);
116 expandedURLs
[i
] = expandedLink
;
122 onafterprint = function()
124 for (var i
=0; i
< expandedURLs
.length
; i
++)
126 expandedURLs
[i
].removeNode(true);