1/* begin Page */ 2 3/* Generated with Artisteer version 2.3.0.19571, file checksum is 14D73535. */ 4 5cssFix = function(){ 6var u = navigator.userAgent.toLowerCase(), 7addClass = function(el, val){ 8 if(! el.className) { 9 el.className = val; 10 } else { 11 var newCl = el.className; 12 newCl+=(' '+val); 13 el.className = newCl; 14 } 15}, 16is = function(t){return (u.indexOf(t)!=-1)}; 17addClass(document.getElementsByTagName('html')[0],[ 18(!(/opera|webtv/i.test(u))&&/msie (\d)/.test(u))?('ie ie'+RegExp.$1) 19: is('firefox/2')?'gecko firefox2' 20: is('firefox/3')?'gecko firefox3' 21: is('gecko/')?'gecko' 22: is('chrome/')?'chrome' 23: is('opera/9')?'opera opera9':/opera (\d)/.test(u)?'opera opera'+RegExp.$1 24: is('konqueror')?'konqueror' 25: is('applewebkit/')?'webkit safari' 26: is('mozilla/')?'gecko':'', 27(is('x11')||is('linux'))?' linux' 28: is('mac')?' mac' 29: is('win')?' win':'' 30].join(' ')); 31}(); 32 33var artEventHelper = { 34 'bind': function(obj, evt, fn) { 35 if (obj.addEventListener) 36 obj.addEventListener(evt, fn, false); 37 else if (obj.attachEvent) 38 obj.attachEvent('on' + evt, fn); 39 else 40 obj['on' + evt] = fn; 41 } 42}; 43 44var userAgent = navigator.userAgent.toLowerCase(); 45var browser = { 46 version: (userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1], 47 safari: /webkit/.test(userAgent) && !/chrome/.test(userAgent), 48 chrome: /chrome/.test(userAgent), 49 opera: /opera/.test(userAgent), 50 msie: /msie/.test(userAgent) && !/opera/.test(userAgent), 51 mozilla: /mozilla/.test(userAgent) && !/(compatible|webkit)/.test(userAgent) 52}; 53 54var artLoadEvent = (function() { 55 56 57 var list = []; 58 59 var done = false; 60 var ready = function() { 61 if (done) return; 62 done = true; 63 for (var i = 0; i < list.length; i++) 64 list[i](); 65 }; 66 67 if (document.addEventListener && !browser.opera) 68 document.addEventListener('DOMContentLoaded', ready, false); 69 70 if (browser.msie && window == top) { 71 (function() { 72 try { 73 document.documentElement.doScroll('left'); 74 } catch (e) { 75 setTimeout(arguments.callee, 10); 76 return; 77 } 78 ready(); 79 })(); 80 } 81 82 if (browser.opera) { 83 document.addEventListener('DOMContentLoaded', function() { 84 for (var i = 0; i < document.styleSheets.length; i++) { 85 if (document.styleSheets[i].disabled) { 86 setTimeout(arguments.callee, 10); 87 return; 88 } 89 } 90 ready(); 91 }, false); 92 } 93 94 if (browser.safari || browser.chrome) { 95 var numStyles; 96 (function() { 97 if (document.readyState != 'loaded' && document.readyState != 'complete') { 98 setTimeout(arguments.callee, 10); 99 return; 100 } 101 if ('undefined' == typeof numStyles) { 102 numStyles = document.getElementsByTagName('style').length; 103 var links = document.getElementsByTagName('link'); 104 for (var i = 0; i < links.length; i++) { 105 numStyles += (links[i].getAttribute('rel') == 'stylesheet') ? 1 : 0; 106 } 107 if (document.styleSheets.length != numStyles) { 108 setTimeout(arguments.callee, 0); 109 return; 110 } 111 } 112 ready(); 113 })(); 114 } 115 artEventHelper.bind(window, 'load', ready); 116 return ({ 117 add: function(f) { 118 list.push(f); 119 } 120 }) 121})(); 122 123(function() { 124 // fix ie blinking 125 var m = document.uniqueID && document.compatMode && !window.XMLHttpRequest && document.execCommand; 126 try { if (!!m) { m('BackgroundImageCache', false, true); } } 127 catch (oh) { }; 128})(); 129 130function xGetElementsByClassName(clsName, parentEle, tagName) { 131 var elements = null; 132 var found = []; 133 var s = String.fromCharCode(92); 134 var re = new RegExp('(?:^|' + s + 's+)' + clsName + '(?:$|' + s + 's+)'); 135 if (!parentEle) parentEle = document; 136 if (!tagName) tagName = '*'; 137 elements = parentEle.getElementsByTagName(tagName); 138 if (elements) { 139 for (var i = 0; i < elements.length; ++i) { 140 if (elements[i].className.search(re) != -1) { 141 found[found.length] = elements[i]; 142 } 143 } 144 } 145 return found; 146} 147 148var styleUrlCached = null; 149function GetStyleUrl() { 150 if (null == styleUrlCached) { 151 var ns; 152 styleUrlCached = ''; 153 ns = document.getElementsByTagName('link'); 154 for (var i = 0; i < ns.length; i++) { 155 var l = ns[i]; 156 if (l.href && /style\.ie6\.css(\?.*)?$/.test(l.href)) { 157 return styleUrlCached = l.href.replace(/style\.ie6\.css(\?.*)?$/, ''); 158 } 159 } 160 161 ns = document.getElementsByTagName('style'); 162 for (var i = 0; i < ns.length; i++) { 163 var matches = new RegExp('import\\s+"([^"]+\\/)style\\.ie6\\.css"').exec(ns[i].innerHTML); 164 if (null != matches && matches.length > 0) 165 return styleUrlCached = matches[1]; 166 } 167 } 168 return styleUrlCached; 169} 170 171function fixPNG(element) { 172 if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent)) { 173 var src; 174 if (element.tagName == 'IMG') { 175 if (/\.png$/.test(element.src)) { 176 src = element.src; 177 element.src = GetStyleUrl() + '../images/spacer.gif'; 178 } 179 } 180 else { 181 src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i); 182 if (src) { 183 src = src[1]; 184 element.runtimeStyle.backgroundImage = 'none'; 185 } 186 } 187 if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "')"; 188 } 189} 190 191function artHasClass(el, cls) { 192 return (el && el.className && (' ' + el.className + ' ').indexOf(' ' + cls + ' ') != -1); 193} 194/* end Page */ 195 196/* begin Button */ 197 198 199function artButtonsSetupJsHover(className) { 200 var tags = ["input", "a", "button"]; 201 for (var j = 0; j < tags.length; j++){ 202 var buttons = xGetElementsByClassName(className, document, tags[j]); 203 for (var i = 0; i < buttons.length; i++) { 204 var button = buttons[i]; 205 if (!button.tagName || !button.parentNode) return; 206 if (!artHasClass(button.parentNode, 'art-button-wrapper')) { 207 if (!artHasClass(button, 'art-button')) button.className += ' art-button'; 208 var wrapper = document.createElement('span'); 209 wrapper.className = "art-button-wrapper"; 210 if (artHasClass(button, 'active')) wrapper.className += ' active'; 211 var spanL = document.createElement('span'); 212 spanL.className = "l"; 213 spanL.innerHTML = " "; 214 wrapper.appendChild(spanL); 215 var spanR = document.createElement('span'); 216 spanR.className = "r"; 217 spanR.innerHTML = " "; 218 wrapper.appendChild(spanR); 219 button.parentNode.insertBefore(wrapper, button); 220 wrapper.appendChild(button); 221 } 222 artEventHelper.bind(button, 'mouseover', function(e) { 223 e = e || window.event; 224 wrapper = (e.target || e.srcElement).parentNode; 225 wrapper.className += " hover"; 226 }); 227 artEventHelper.bind(button, 'mouseout', function(e) { 228 e = e || window.event; 229 button = e.target || e.srcElement; 230 wrapper = button.parentNode; 231 wrapper.className = wrapper.className.replace(/hover/, ""); 232 if (!artHasClass(button, 'active')) wrapper.className = wrapper.className.replace(/active/, ""); 233 }); 234 artEventHelper.bind(button, 'mousedown', function(e) { 235 e = e || window.event; 236 button = e.target || e.srcElement; 237 wrapper = button.parentNode; 238 if (!artHasClass(button, 'active')) wrapper.className += " active"; 239 }); 240 artEventHelper.bind(button, 'mouseup', function(e) { 241 e = e || window.event; 242 button = e.target || e.srcElement; 243 wrapper = button.parentNode; 244 if (!artHasClass(button, 'active')) wrapper.className = wrapper.className.replace(/active/, ""); 245 }); 246 } 247 } 248} 249 250artLoadEvent.add(function() { artButtonsSetupJsHover("art-button"); }); 251/* end Button */ 252 253 254 255artLoadEvent.add(function() { 256 artButtonsSetupJsHover("button"); 257 artButtonsSetupJsHover("readon"); 258});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.