PageSourceSearch

https://brainking.com/js/functions-26.js

js brainking.com collected 2026-10-02 06:39:11 UTC 9,216 bytes, 302 lines download raw bytes

1var uaValue;
2var isIE;
3var isGecko;
4var isSafari;
5var isKonqueror;
6var globallyInited = false;
7var dragonX, dragonY, dragonTimer, dragonDirection, dragonDescent, dragonMaxX, dragonCounter;
8var flameX, flameY, flameTimer, flameDelay, flameDescent;
9var flameDirection = 0;
10var flameCounter = 0;
11
12function getRequestObject()
13{
14    var req = false;
15    if (window.XMLHttpRequest)
16        req = new XMLHttpRequest();
17    else if (window.ActiveXObject)
18        req = new ActiveXObject("Microsoft.XMLHTTP");
19    return req;
20}
21
22var http = getRequestObject();
23var adTimer;
24
25function globalInit()
26{
27    uaValue = navigator.userAgent;
28    var ua = uaValue.toLowerCase();
29    isIE = (ua.indexOf("msie") != -1) && (ua.indexOf("opera") == -1) && (ua.indexOf("webtv") == -1);
30    isGecko = ua.indexOf("gecko") != -1;
31    isSafari = ua.indexOf("safari") != -1;
32    isKonqueror = ua.indexOf("konqueror") != -1;
33//    initBannerEvents();
34//    initAdEvents();
35    globallyInited = true;
36}
37
38function initAdEvents()
39{
40    var nextButton = document.getElementById('adClickButton');
41    if (nextButton)
42        adTimer = setInterval('checkCounter()', 1000);
43}
44
45function switchBanner(bannerUrl)
46{
47    document.getElementById("top-center").innerHTML = '<a href="http://www.celebpoker.com/?tracker=ref127966_0&lp=1&b=374"><img src="' + bannerUrl + '" alt="CelebPoker.com" border="0" width="468" height="60" style="margin-top: 10px;"/></a>';
48}
49
50function initDragon(direction)
51{
52    var dragon = document.getElementById("dragon-" + (direction == 1 ? "right" : "left"));
53    if (dragon)
54    {
55        if (window.innerWidth)
56            dragonMaxX = window.innerWidth - 100;
57        if (document.body && document.body.scrollWidth)
58            dragonMaxX = document.body.scrollWidth - 100;
59        if (direction == 1)
60            dragonX = -100;
61        else
62        {
63            direction = -1;
64            dragonX = dragonMaxX;
65        }
66        dragonCounter = 0;
67        dragonDirection = direction;
68        flameDelay = 100 + Math.floor(Math.random() * 400);
69        flameDescent = 1 + Math.floor(Math.random() * 3);
70        dragon.style.left = dragonX + 'px';
71        dragon.style.visibility = 'visible';
72        dragonTimer = setInterval("animateDragon()", 10);
73    }
74}
75
76function animateDragon()
77{
78    var dragon = document.getElementById("dragon-" + (dragonDirection == 1 ? "right" : "left"));
79    if (dragon)
80    {
81        if (dragonCounter == flameDelay && !flameTimer)
82        {
83            var flameId = "flame-" + (dragonDirection == 1 ? "right" : "left");
84            var flame = document.getElementById(flameId);
85            if (flame)
86            {
87                var flameShift = dragonDirection == 1 ? 70 : -40;
88                flameTimer = setInterval("animateFlame('" + flameId + "', " + (dragonX + flameShift) + ", 30, " + (dragonDirection * 3) + ")", 10);
89            }
90        }
91        dragonX += dragonDirection;
92        dragon.style.left = dragonX + 'px';
93        dragonCounter++;
94        if (dragonX < -200 || dragonX > dragonMaxX)
95        {
96            clearInterval(dragonTimer);
97            dragon.style.display = 'none';
98        }
99    }
100}
101
102function animateFlame(flameId, x, y, direction)
103{
104    var flame = document.getElementById(flameId);
105    if (flame)
106    {
107        if (flameDirection == 0)
108        {
109            flameX = x;
110            flameY = y;
111            flameDirection = direction;
112            flame.style.visibility = 'visible';
113        }
114        flame.style.left = flameX + 'px';
115        flame.style.top = flameY + 'px';
116        flameX += flameDirection;
117        flameY += flameDescent;
118        flameCounter++;
119        if (flameCounter > 200)
120        {
121            clearInterval(flameTimer);
122            flame.style.display = 'none';
123            flameCounter = 0;
124            flameDirection = 0;
125        }
126    }
127}
128
129function isDesignModeAvailable()
130{
131    return document.getElementById && document.designMode && !isSafari && !isKonqueror;
132}
133
134function addInviteBox(parentDiv, userId, aLabel, gameOptionStr, buttonLabel)
135{
136    var newDivId = parentDiv.id + 'body';
137    if (document.getElementById(newDivId))
138        parentDiv.removeChild(document.getElementById(newDivId));
139    else
140    {
141        var newDiv = document.createElement('div');
142        newDiv.setAttribute('id', newDivId);
143        var formCode = '<form action="DefineNewGame" method="get">';
144        formCode += '<div class=\"padded-border\">';
145        formCode += aLabel + ': ';
146        formCode += '<select name="tp" class="inputbox">';
147        formCode += gameOptionStr.replace(/\|\|/g, "\"");
148        formCode += '</select> ';
149        formCode += '<input type="submit" name="submit" value="' + buttonLabel + '" class="inputbutton">';
150        formCode += '<input type="hidden" name="op" value="' + userId + '">';
151        formCode += '</div>';
152        formCode += '</form>';
153        newDiv.innerHTML = formCode;
154        parentDiv.appendChild(newDiv);
155    }
156}
157
158function findPosition(object)
159{
160    if (object.offsetParent)
161    {
162        for (var posX = 0, posY = 0; object.offsetParent; object = object.offsetParent)
163        {
164            posX += object.offsetLeft;
165            posY += object.offsetTop;
166//            alert(posX + ", " + posY);
167        }
168        return [posX, posY];
169    }
170    else
171    {
172        return [object.x, object.y];
173    }
174}
175
176function getLeftOffset(elm, parents_up)
177{
178    var mOffsetLeft = elm.offsetLeft;
179    var mOffsetParent = elm.offsetParent;
180    if (!parents_up)
181        parents_up = 10000; // arbitrary big number
182    while (parents_up > 0 && mOffsetParent)
183    {
184        mOffsetLeft += mOffsetParent.offsetLeft;
185        mOffsetParent = mOffsetParent.offsetParent;
186        parents_up--;
187    }
188    return mOffsetLeft;
189}
190
191function getTopOffset(elm, parents_up)
192{
193    var mOffsetTop = elm.offsetTop;
194    var mOffsetParent = elm.offsetParent;
195    if (!parents_up)
196        parents_up = 10000; // arbitrary big number
197    while (parents_up > 0 && mOffsetParent)
198    {
199        mOffsetTop += mOffsetParent.offsetTop;
200        mOffsetParent = mOffsetParent.offsetParent;
201        parents_up--;
202    }
203    return mOffsetTop;
204}
205
206function initBannerEvents()
207{
208    var iframes = document.all ? document.all.tags('iframe') : document.getElementsByTagName('iframe');
209    for (var i = 0; i < iframes.length; i++)
210    {
211        var frame = iframes[i];
212        if (frame.src.indexOf('googlesyndication.com') > -1)
213        {
214            if (frame.addEventListener)
215                frame.addEventListener('focus', adSenseCapture, false);
216            else if (frame.attachEvent)
217                frame.attachEvent('onfocus', adSenseCapture);
218        }
219        else if (frame.src.indexOf('chitika.net') > -1)
220        {
221            if (frame.addEventListener)
222                frame.addEventListener('focus', chitikaCapture, false);
223            else if (frame.attachEvent)
224                frame.attachEvent('onfocus', chitikaCapture);
225        }
226        else if (frame.src.indexOf('adtegrity.net') > -1)
227            {
228                if (frame.addEventListener)
229                    frame.addEventListener('focus', adtegrityCapture, false);
230                else if (frame.attachEvent)
231                    frame.attachEvent('onfocus', adtegrityCapture);
232            }
233            else if (frame.name == 'googleSearchFrame')
234                {
235                    if (frame.addEventListener)
236                        frame.addEventListener('focus', adSearchCapture, false);
237                    else if (frame.attachEvent)
238                        frame.attachEvent('onfocus', adSearchCapture);
239                }
240    }
241}
242
243function adSenseCapture()
244{
245    if (window.status)
246    {
247        var bug = new Image();
248        bug.src = 'https://BrainKing.com/en/AJAXAdSenseClick?ref=' + escape(document.location.href) +
249                  '&url=' + escape(window.status);
250    }
251}
252
253function chitikaCapture()
254{
255    if (window.status)
256    {
257        var bug = new Image();
258        bug.src = 'https://BrainKing.com/en/AJAXChitikaClick?ref=' + escape(document.location.href) +
259                  '&url=' + escape(window.status);
260    }
261}
262
263function adtegrityCapture()
264{
265    if (window.status)
266    {
267        var bug = new Image();
268        bug.src = 'https://BrainKing.com/en/AJAXAdtegrityClick?ref=' + escape(document.location.href) +
269                  '&url=' + escape(window.status);
270    }
271}
272
273function adSearchCapture()
274{
275    if (window.status)
276    {
277        var bug = new Image();
278        bug.src = 'https://BrainKing.com/en/AJAXAdSearchClick?ref=' + escape(document.location.href) +
279                  '&url=' + escape(window.status);
280    }
281}
282
283function initBlogPageEvents()
284{
285    var bug = new Image();
286    bug.src = 'https://BrainKing.com/en/AJAXBlogPage?ref=' + escape(document.location.href) +
287              '&url=' + escape(uaValue);
288}
289
290function initBrainRookPageEvents()
291{
292    var bug = new Image();
293    bug.src = 'https://BrainKing.com/en/AJAXBrainRookPage?ref=' + escape(document.location.href) +
294              '&url=' + escape(uaValue);
295}
296
297function textLinkClickCapture(targetUrl)
298{
299    var bug = new Image();
300    bug.src = 'https://BrainKing.com/en/AJAXAdSenseClick?ref=' + escape(document.location.href) +
301              '&url=' + escape(targetUrl);
302}

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.