KDE Bug Tracking System
Home
Report New Wish or Bug
Query Existing Reports
First
Last
Prev
Next
No search results available
Search page
Bug
33968
:
Need to implement MSIE extension insertAdjacent...
P
roduct
:
konqueror
Co
m
ponent
:
khtml ecma
Status
:
RESOLVED
Resolution
:
FIXED
Target
:
---
Version
:
unspecified
Pr
i
ority
:
NOR
Severity
:
normal
V
otes
:
0
Description
:
Opened:
2001-10-21 18:18
Last Changed:
2004-10-17 15:03:35
(*** This bug was imported into bugs.kde.org ***) Package: kjs Version: KDE 2.2.1 Severity: normal Installed from: Compiled From Sources Compiler: gcc 2.96 20000731 OS: Linux OS/Compiler notes: Standard gcc from RedHat 7.1 with all updates Logging in at www.sebank.se throws kdeinit in an endless loop printing the error message on line 258 in kdelibs/kjs/string_object.cpp: "Match/Search. Argument is not a RegExp - returning Undefined". It has to be stopped by killing the kdeinit process. Konqueror is set to identify itself as Mozilla/4.7 as they have very strict tests for which browsers they allow (just Netscape and MS Explorer). The site (ssl one time pads) contains lots of frames and JavaScript that loads new contents into the frames after short timeouts. When JavaScript is enabled some of these reloads work but suddenly kdeinit is thrown into an endless loop eating cpu. When JavaScript is disabled the initial contents is loaded fine but since the timeouts aren't activated the evil code is never loaded making it impossible for me to provide any example html/js. I could recompile kdelibs to try to provide a stack trace but would need pretty detailed instructions in how to attach gdb to it. I know gdb but I don't know kde (yet). (Submitted via bugs.kde.org)
Comment
#1
David Faure 2001-10-21 18:43:42
--------------Boundary-00=_U0KK753AMPT48W30535X Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit On Dimanche 21 Octobre 2001 20:07
basic@chello.se
wrote:
> Package: kjs > Version: KDE 2.2.1 > Severity: normal > Installed from: Compiled From Sources > Compiler: gcc 2.96 20000731 > OS: Linux > OS/Compiler notes: Standard gcc from RedHat 7.1 with all updates > > Logging in at www.sebank.se throws kdeinit in an endless loop printing the error message on line 258 in kdelibs/kjs/string_object.cpp: > "Match/Search. Argument is not a RegExp - returning Undefined".
I have fixed a bug that was leading to that error message (match and search wanted a regexp as argument and wouldn't accept a string. That's fixed now). I have even backported that fix to the 2.2 branch so if you could get the KDE_2_2_BRANCH of kdelibs from cvs (see
http://www.kde.org/anoncvs.html
) and recompile kdelibs it'd be the best way to check if this fixed it. Or simply apply the attached patch (in kdelibs/kjs).
> The site (ssl one time pads) contains lots of frames and JavaScript that loads new contents into the frames after short timeouts. > When JavaScript is enabled some of these reloads work but suddenly kdeinit is thrown into an endless loop eating cpu. > When JavaScript is disabled the initial contents is loaded fine but since the timeouts aren't activated the evil code is never loaded making it impossible for me to provide any example html/js.
Hmm you could grasp the code in Netscape or in wget.....
> I could recompile kdelibs to try to provide a stack trace but would need pretty detailed instructions in how to attach gdb to it. I know gdb but I don't know kde (yet).
Simply "gdb konqueror" would work fine. kdeinit is a hack to gain on speed but apps can also run independently. -- David FAURE
david@mandrakesoft.com
faure@kde.org
http://perso.mandrakesoft.com/~david/
http://www.konqueror.org/
KDE 3.0: Konquering the Desktops --------------Boundary-00=_U0KK753AMPT48W30535X Content-Type: text/x-diff; charset="iso-8859-1"; name="string_object.cpp.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="string_object.cpp.diff" SW5kZXg6IHN0cmluZ19vYmplY3QuY3BwCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KUkNTIGZpbGU6IC9ob21lL2tkZS9rZGVsaWJzL2tqcy9zdHJpbmdfb2Jq ZWN0LmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4yMwpyZXRyaWV2aW5n IHJldmlzaW9uIDEuMjMuMi4xCmRpZmYgLXUgLXAgLXIxLjIzIC1yMS4yMy4y LjEKLS0tIHN0cmluZ19vYmplY3QuY3BwCTIwMDEvMDUvMTMgMTY6MTM6NTIJ MS4yMworKysgc3RyaW5nX29iamVjdC5jcHAJMjAwMS8xMC8wNiAxMDoxMzoy NQkxLjIzLjIuMQpAQCAtMjM5LDggKzIzOSwxNyBAQCBDb21wbGV0aW9uIFN0 cmluZ1Byb3RvRnVuYzo6ZXhlY3V0ZShjb25zCiAgIGNhc2UgTWF0Y2g6CiAg IGNhc2UgU2VhcmNoOgogICAgIHUgPSBzLnZhbHVlKCk7Ci0gICAgaWYgKGEw LmlzQShPYmplY3RUeXBlKSAmJiBhMC50b09iamVjdCgpLmdldENsYXNzKCkg PT0gUmVnRXhwQ2xhc3MpIHsKKyAgICBpZiAoYTAuaXNBKE9iamVjdFR5cGUp ICYmIGEwLnRvT2JqZWN0KCkuZ2V0Q2xhc3MoKSA9PSBSZWdFeHBDbGFzcykK ICAgICAgIHMyID0gYTAuZ2V0KCJzb3VyY2UiKS50b1N0cmluZygpOworICAg IGVsc2UgaWYgKGEwLmlzQShTdHJpbmdUeXBlKSkKKyAgICAgIHMyID0gYTAu dG9TdHJpbmcoKTsKKyAgICBlbHNlCisgICAgeworICAgICAgcHJpbnRmKCJL SlM6IE1hdGNoL1NlYXJjaC4gQXJndW1lbnQgaXMgbm90IGEgUmVnRXhwIG5v ciBhIFN0cmluZyAtIHJldHVybmluZyBVbmRlZmluZWRcbiIpOworICAgICAg cmVzdWx0ID0gVW5kZWZpbmVkKCk7IC8vIE5vIGlkZWEgd2hhdCB0byBkbyBo ZXJlCisgICAgICBicmVhazsKKyAgICB9CisgICAgewogICAgICAgUmVnRXhw IHJlZyhzMi52YWx1ZSgpKTsKICAgICAgIFVTdHJpbmcgbXN0ciA9IHJlZy5t YXRjaCh1LCAtMSwgJnBvcyk7CiAgICAgICBpZiAoaWQgPT0gU2VhcmNoKSB7 CkBAIC0yNTMsMTAgKzI2Miw2IEBAIENvbXBsZXRpb24gU3RyaW5nUHJvdG9G dW5jOjpleGVjdXRlKGNvbnMKICAgICAgIH0KICAgICAgIC8qIFRPRE8gcmV0 dXJuIGFuIGFycmF5LCB3aXRoIHRoZSBtYXRjaGVzLCBldGMuICovCiAgICAg ICByZXN1bHQgPSBTdHJpbmcobXN0cik7Ci0gICAgfSBlbHNlCi0gICAgewot ICAgICAgcHJpbnRmKCJNYXRjaC9TZWFyY2guIEFyZ3VtZW50IGlzIG5vdCBh IFJlZ0V4cCAtIHJldHVybmluZyBVbmRlZmluZWRcbiIpOwotICAgICAgcmVz dWx0ID0gVW5kZWZpbmVkKCk7IC8vIE5vIGlkZWEgd2hhdCB0byBkbyBoZXJl CiAgICAgfQogICAgIGJyZWFrOwogICBjYXNlIFJlcGxhY2U6Cg== --------------Boundary-00=_U0KK753AMPT48W30535X--
Comment
#2
Daniel Brahneborg 2001-10-21 20:03:27
--ReaqsoxgOBHFXBhH Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Sun Oct 21 2001 at 08:43:42PM +0200 David Faure wrote:
> On Dimanche 21 Octobre 2001 20:07
basic@chello.se
wrote: > > "Match/Search. Argument is not a RegExp - returning Undefined". > > I have fixed a bug that was leading to that error message > (match and search wanted a regexp as argument and wouldn't accept a string. > That's fixed now). I have even backported that fix to the 2.2 branch
I tried the patch and it works fine. Lots of thanks! The top frame code attached refuses to show the popup menu. It just stays dark grey. The code in wow0001.js detects by testing for document.all and document.layers if the browser is Netscape or MS Explorer but in Konqueror nothing happens. I tried fiddling with the IdentifyAs menu but that doesn't help. /Basic --ReaqsoxgOBHFXBhH Content-Type: text/html; charset=iso-8859-1 Content-Disposition: attachment; filename="sebanktop.html" Content-Transfer-Encoding: quoted-printable <html>=0D <head>=0D <title>S|E|B</title> <script src=3D"/wowjs/wow0001.js"> </script> <script> function loader() { if((this.oldInnerWidth !=3D this.innerWidth) || (this.oldInnerHeight !=3D = this.innerHeight)) { this.oldInnerWidth =3D this.innerWidth; this.oldInnerHeight =3D this.innerHeight; this.frames['nav'].location.href =3D 'wow0002.asp'; } return true; } var popup logOut envelope line; var oLoading; function start() { if(window.parent.frames['content']) { window.parent.frames['content'].location.href =3D '/cgi-bin/pts3/WOW/cgi-= bin/pcb.dll/wo10.c1001.f003'; } popup =3D new popUpMenu("popup" 80 4); popup.createStyle(18 4 785 "#6699CC" "#336699" "#003366" "#000033" = "Verdana Arial Helvetica" "white" "white" "white" 11 1 "black" "#9= 99999"); popup.addEntry('e0'0"root""URL1"); popup.addEntry('e2''e0''Min ekonomi'''81);popup.addEntry('e40''e0''B= =F6rs & Finans'''91);popup.addEntry('e149''e0''Placera'' '50);popup.a= ddEntry('e153''e0''L=E5na'' '34);popup.addEntry('e162''e0''Betala'' = '44);popup.addEntry('e146''e0''Shoppa''/cgi-bin/pts3/WOW/wow/2000/2300/= wow2301.asp'49);popup.addEntry('e6''e0''Kundservice'''77);popup.addEnt= ry('e109''e1''V=E4lkommen''/cgi-bin/pts3/WOW/wowgeneral/wow0024.asp'74)= ;popup.addEntry('e206''e1''Guide''/cgi-bin/pts3/WOW/wow/9000/9600/wow960= 1.asp'38);popup.addEntry('e9''e2''Mina konton'''80);popup.addEntry('e2= 2''e2''Min v=E4rdepappersportf=F6lj'''159);popup.addEntry('e14''e2''M= ina fonder'''79);popup.addEntry('e8''e2''Mina personf=F6rs=E4kringar/IP= S'''180);popup.addEntry('e34''e2''Mina l=E5n'''56);popup.addEntry('e1= 47''e2''Min =F6versikt''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c1145.f00= 1'81);popup.addEntry('e113''e6''Kontakta oss'''87);popup.addEntry('e1'= 'e6''Aktuellt'''54);popup.addEntry('e176''e6''Hj=E4lp'' '35);popup.= addEntry('e211''e6''Mobila banktj=E4nster''/cgi-bin/pts3/WOW/cgi-bin/pcb= .dll/wo38.c3806.f001'126);popup.addEntry('e177''e6''=D6vriga tj=E4nster'= ' '101);popup.addEntry('e89''e8''=D6versikt''/cgi-bin/pts3/WOW/wow/500= 0/5100/wow5101.asp?M1=3DSHOW'57);popup.addEntry('e225''e8''Allm=E4nt''/= cgi-bin/pts3/WOW/wow/5000/5200/wow5201.asp?M1=3DSHOW'52);popup.addEntry('e= 121''e8''V=E4rde''/cgi-bin/pts3/WOW/wow/5000/5400/wow5401.asp?M1=3DSHOW'= 41);popup.addEntry('e122''e8''Aff=E4rer''/cgi-bin/pts3/WOW/wow/5000/530= 0/wow5301.asp?M1=3DSHOW'53);popup.addEntry('e224''e8''Betala ut''/cgi-b= in/pts3/WOW/wow/5000/5500/wow5501.asp?M1=3DSHOW'64);popup.addEntry('e189'= 'e8''Ans=F6k''/cgi-bin/pts3/WOW/wow/3000/3700/wow3703.asp'42);popup.addE= ntry('e10''e9''Konto=F6versikt''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c= 1101.f001'90);popup.addEntry('e126''e9''Valutakonto=F6versikt''/cgi-bin= /pts3/WOW/cgi-bin/pcb.dll/wo11.c1120.f001'127);popup.addEntry('e193''e9'= 'Ans=F6k''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo37.c3711.f001'42);popup.add= Entry('e15''e14''Fond=F6versikt''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo12.= c1201.f001'83);popup.addEntry('e188''e14''Ans=F6k''/cgi-bin/pts3/WOW/cg= i-bin/pcb.dll/wo37.c3702.f001'42);popup.addEntry('e23''e22''Dep=E5=F6ver= sikt''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo13.c1301.f001'85);popup.addEntr= y('e26''e22''Historik''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo13.c1307.f001= '52);popup.addEntry('e187''e22''Ans=F6k''/cgi-bin/pts3/WOW/cgi-bin/pcb.= dll/wo34.c3401.f001'42);popup.addEntry('e35''e34''L=E5ne=F6versikt''/cg= i-bin/pts3/WOW/cgi-bin/pcb.dll/wo15.c1501.f001'83);popup.addEntry('e223''= e34''L=E5n SEB Finans''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo15.c1502.f001'= 97);popup.addEntry('e194''e40''=D6versikt''/cgi-bin/pts3/WOW/wow/2000/2= 100/wow2110.asp'57);popup.addEntry('e138''e40''Kurser'''46);popup.addE= ntry('e136''e40''Nyheter''/cgi-bin/pts3/WOW/wow/2000/2100/wow2150.asp'5= 4);popup.addEntry('e191''e40''Analys''/cgi-bin/pts3/WOW/wow/2000/2600/wo= w2601.asp'45);popup.addEntry('e139''e40''Bevakning''/cgi-bin/pts3/WOW/w= ow/2000/2100/wow2170.asp'66);popup.addEntry('e192''e40''R=E5dgivning''/= cgi-bin/pts3/WOW/wow/2000/2400/wow2401.asp'70);popup.addEntry('e200''e73'= '=D6versikt''/cgi-bin/pts3/WOW/wow/2000/2200/wow2210.asp'57);popup.addEn= try('e100''e73''Kurser'''46);popup.addEntry('e98''e73''Nyheter''/cgi= -bin/pts3/WOW/wow/2000/2200/wow2250.asp'54);popup.addEntry('e97''e73''An= alys''/cgi-bin/pts3/WOW/wow/2000/2200/wow2260.asp'45);popup.addEntry('e10= 1''e73''Bevakning''/cgi-bin/pts3/WOW/wow/2000/2200/wow2270.asp'66);popu= p.addEntry('e102''e73''Skicka meddelande''/cgi-bin/pts3/WOW/wow/2000/220= 0/wow2290.asp'121);popup.addEntry('e201''e100''Aktier''/cgi-bin/pts3/WO= W/wow/2000/2200/wow2231.asp'44);popup.addEntry('e202''e100''Fonder''/cg= i-bin/pts3/WOW/wow/2000/2200/wow2239.asp'47);popup.addEntry('e216''e100'= 'Aktieobligationer''/cgi-bin/pts3/WOW/wow/2000/2200/wow2211.asp'108);popu= p.addEntry('e205''e100''Obligationer''/cgi-bin/pts3/WOW/wow/2000/2200/wo= w2228.asp'78);popup.addEntry('e203''e100''Index''/cgi-bin/pts3/WOW/wow/= 2000/2200/wow2294.asp'40);popup.addEntry('e204''e100''Optioner''/cgi-bi= n/pts3/WOW/wow/2000/2200/wow2244.asp'58);popup.addEntry('e115''e113''Rin= g oss''/cgi-bin/pts3/WOW/wow/4000/wow4001.asp'58);popup.addEntry('e128''= e113''Skicka meddelande''/cgi-bin/pts3/WOW/wow/4000/4100/wow4101.asp'121= );popup.addEntry('e114''e113''L=E4s meddelanden''/cgi-bin/pts3/WOW/wow/4= 000/4100/wow4102.asp'110);popup.addEntry('e178''e113''Mina uppgifter''/= cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo39.c3901.f001'95);popup.addEntry('e221'= 'e113''Mina avtal''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo13.c1341.f001'69= );popup.addEntry('e195''e138''Aktier''/cgi-bin/pts3/WOW/wow/2000/2100/wo= w2131.asp'44);popup.addEntry('e196''e138''Fonder''/cgi-bin/pts3/WOW/wow= /2000/2100/wow2139.asp'47);popup.addEntry('e214''e138''Aktieobligationer= ''/cgi-bin/pts3/WOW/wow/2000/2100/wow2111.asp'108);popup.addEntry('e199'= 'e138''Obligationer''/cgi-bin/pts3/WOW/wow/2000/2100/wow2128.asp'78);pop= up.addEntry('e197''e138''Index''/cgi-bin/pts3/WOW/wow/2000/2100/wow2194.= asp'40);popup.addEntry('e198''e138''Optioner''/cgi-bin/pts3/WOW/wow/200= 0/2100/wow2144.asp'58);popup.addEntry('e150''e149''V=E4rdepapper'' '82= );popup.addEntry('e151''e149''Fonder'' '47);popup.addEntry('e152''e149= ''Liv & Pension'' '89);popup.addEntry('e24''e150''K=F6pa''/cgi-bin/pt= s3/WOW/cgi-bin/pcb.dll/wo13.c1325.f001'35);popup.addEntry('e25''e150''S= =E4lja''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo13.c1330.f001'35);popup.addEn= try('e27''e150''Liggande order''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo13.c= 1306.f001'98);popup.addEntry('e90''e150''Analys''/cgi-bin/pts3/WOW/wow/= 1000/1300/wow1310.asp'45);popup.addEntry('e17''e151''K=F6pa''/cgi-bin/p= ts3/WOW/cgi-bin/pcb.dll/wo12.c1203.f001'35);popup.addEntry('e18''e151''S= =E4lja''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo12.c1204.f001'35);popup.addEn= try('e19''e151''Byta''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo12.c1205.f001'= 34);popup.addEntry('e217''e151''Liggande order''/cgi-bin/pts3/WOW/cgi-b= in/pcb.dll/wo12.c1213.f001'98);popup.addEntry('e20''e151''=C4ndra fondf= =F6rdelning''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo12.c1211.f001'136);popup= .addEntry('e222''e151''M=E5nadsspara''/cgi-bin/pts3/WOW/wow/1000/1200/wo= w1215.asp'82);popup.addEntry('e21''e151''Analys''/cgi-bin/pts3/WOW/wow/= 1000/1300/wow1310.asp'45);popup.addEntry('e124''e152''Extra inbetalning'= '/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo14.c1414.f001'110);popup.addEntry('e= 123''e152''Byta fondandelar''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo14.c140= 5.f001'112);popup.addEntry('e125''e152''=C4ndra fondf=F6rdelning''/cgi-= bin/pts3/WOW/cgi-bin/pcb.dll/wo14.c1402.f001'136);popup.addEntry('e190''e= 152''Analys''/cgi-bin/pts3/WOW/wow/3000/3700/wow3712.asp'45);popup.addEn= try('e208''e153''Kontokredit'''77);popup.addEntry('e155''e153''Bol=E5= n'' '38);popup.addEntry('e154''e153''Enkla l=E5net'' '74);popup.addEn= try('e156''e153''Bill=E5n'' '37);popup.addEntry('e157''e154''Ans=F6k'= '/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo35.c3501.f001'42);popup.addEntry('e1= 58''e154''L=E5nebesked''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo35.c3504.f00= 1'75);popup.addEntry('e159''e155''Ans=F6k''/cgi-bin/pts3/WOW/wow/3000/3= 500/wow3547.asp'42);popup.addEntry('e160''e155''F=F6rl=E4ngning''/cgi-b= in/pts3/WOW/wow/3000/3500/wow3518.asp'74);popup.addEntry('e161''e156''An= s=F6k''/cgi-bin/pts3/WOW/wow/3000/3500/wow3521.asp'42);popup.addEntry('e1= 3''e162''Kommande uppdrag''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c1113.= f001'126);popup.addEntry('e42''e162''Betala pg/bg''/cgi-bin/pts3/WOW/cg= i-bin/pcb.dll/wo11.c1103.f001'86);popup.addEntry('e164''e162''=D6verf=F6= ring'' '71);popup.addEntry('e220''e162''E-giro'''43);popup.addEntry('= e218''e162''Utlandsbetalning''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c11= 49.f001'104);popup.addEntry('e165''e162''Mottagarregister'''109);popup= .addEntry('e169''e162''Ans=F6k'' '42);popup.addEntry('e12''e164''Eng= =E5ngs=F6verf=F6ring''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c1104.f001'1= 17);popup.addEntry('e41''e164''St=E5ende =F6verf=F6ring''/cgi-bin/pts3/W= OW/cgi-bin/pcb.dll/wo11.c1111.f001'125);popup.addEntry('e111''e164''=D6v= ersikt st=E5ende uppdrag''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c1115.f00= 1'166);popup.addEntry('e145''e165''Mina mottagare''/cgi-bin/pts3/WOW/cg= i-bin/pcb.dll/wo11.c1142.f001'103);popup.addEntry('e144''e165''L=E4gga t= ill mottagare''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c1140.f001'134);pop= up.addEntry('e170''e169''Betalservice''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll= /wo37.c3701.f001'79);popup.addEntry('e171''e169''E-giro''/cgi-bin/pts3/= WOW/cgi-bin/pcb.dll/wo31.c3191.f001'43);popup.addEntry('e172''e169''Kort= ''/cgi-bin/pts3/WOW/wow/3000/3150/wow3187.asp'33);popup.addEntry('e106''= e176''Kom ig=E5ng''/cgi-bin/pts3/WOW/wow/9000/wowh9002.asp'70);popup.add= Entry('e207''e176''Teknikhj=E4lp''/cgi-bin/pts3/WOW/wow/9000/wowh9003.as= p'73);popup.addEntry('e219''e176''Vanliga fr=E5gor''/cgi-bin/pts3/WOW/w= ow/9000/wowh9004.asp'94);popup.addEntry('e180''e177''Avbest=E4lla avier'= '/cgi-bin/pts3/WOW/wow/4000/4200/wow4201.asp'105);popup.addEntry('e181''= e177''Flytta konton''/cgi-bin/pts3/WOW/wow/4000/4200/wow4204.asp'90);pop= up.addEntry('e182''e177''Flytta v=E4rdepapper''/cgi-bin/pts3/WOW/cgi-bin= /pcb.dll/wo32.c3201.f001'124);popup.addEntry('e183''e177''Avsluta konton= ''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo33.c3301.f001'99);popup.addEntry('e= 184''e177''Ans=F6k''/cgi-bin/pts3/WOW/wow/4000/4200/wow4220.asp'42);pop= up.addEntry('e210''e177''Produktinformation''/cgi-bin/pts3/WOW/wow/4000/= 4200/wow4221.asp'124);popup.addEntry('e209''e208''Ans=F6k''/cgi-bin/pts= 3/WOW/wow/3000/3500/wow3505.asp'42);popup.addEntry('e140''e220''Betala e= -giro''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c1131.f001'88);popup.addEnt= ry('e186''e220''Behandlade e-giro''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo1= 1.c1134.f001'117);popup.addEntry('e167''e220''Mina e-giromottagare''/cg= i-bin/pts3/WOW/cgi-bin/pcb.dll/wo11.c1130.f001'140);popup.addEntry('e168'= 'e220''F=F6retag med e-giro''/cgi-bin/pts3/WOW/cgi-bin/pcb.dll/wo31.c3192= .f001'129);popup.addEntry('e166''e220''Aktivera/=E4ndra e-giro''/cgi-bi= n/pts3/WOW/cgi-bin/pcb.dll/wo31.c3191.f001'143); popup.create(); if(window.document.layers) { window.parent.captureEvents(Event.RESIZE); window.parent.onResize =3D loader; window.parent.oldInnerHeight =3D window.parent.innerHeight; window.parent.oldInnerWidth =3D window.parent.innerWidth; } logOut =3D new logOutButton('logOut' '/wowimg/loggaut_2.gif' '/cgi-bin/p= ts3/WOW/cgi-bin/pcb.dll/wo10.c1002.f001' 48 9 537 8 window.parent.fram= es['content']); logOut.show(); envelope =3D new logOutButton('hem' '/wowimg/hem.gif' '/cgi-bin/pts3/WOW= /wowgeneral/wow0024.asp' 21 9 595 8 window.parent.frames['content'] "= popup.lastClickedEntryID=3Dpopup.root.id;"); envelope.show(); line =3D new logOutButton('line' '/wowimg/streck.gif' '' 1 10 590 7= window.top); line.show(); /*oLoading =3D new loadingBox('loading'300 15 160'laddar.gif'); oLoading.create();*/ } </script> </head> <body BACKGROUND=3D"/wowimg/bground.gif" onLoad=3D"start();" alink=3D"#ffff= ff"> <img src=3D"/wowimg/loggo.gif" WIDTH=3D"55" HEIGHT=3D"21"> </body> </html> --ReaqsoxgOBHFXBhH Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="wow0001.js" Content-Transfer-Encoding: 8bit window.onerror = handleError; function handleError() {return true;} var loadingContent = true; var isIE4; var isNAV4; var navRoot; var bookRoot; var maxWidthNs4; var welcomeID; function loadingBox(sName nXpos nYpos nWidth sImage){ this.name = sName; this.oLayer = null; this.x = nXpos; this.y =nYpos; this.width = nWidth; this.image=sImage; this.create = createLoadingBox; this.hide=hideLoadingBox; this.show=showLoadingBox; } function createLoadingBox(){ if(document.layers){ this.oLayer = new Layer(this.width); sTemp = '<layer name="' + this.name + '" visibility="inherit">'; sTemp += '<IMG SRC="/wowimg/'+this.image+'">'; sTemp += '</layer>'; this.oLayer.document.open(); this.oLayer.document.write(sTemp); this.oLayer.document.close(); this.oLayer.top = this.y; this.oLayer.left = this.x; this.oLayer.owner = this; this.oLayer.visibility = 'show'; }else { sTemp = '<div id="' + this.name + '" style="position:absolute; visibility:visible; left:' + this.x + 'px; top:' + this.y + 'px;">'; sTemp += '</div>'; document.body.insertAdjacentHTML('BeforeEnd' sTemp); document.all[this.name].innerHTML = '<IMG SRC="/wowimg/'+this.image+'">'; this.oLayer = document.all.tags('div')(this.name); this.oLayer.owner = this; } } function hideLoadingBox(){if(document.layers){this.oLayer.visibility = 'hide';}else{this.oLayer.style.visibility = 'hidden';}} function showLoadingBox(){if(document.layers){this.oLayer.visibility = 'show';}else{this.oLayer.style.visibility = 'visible';}} var g_bPmsIsChecked = false; var g_bHavePms = false; var g_bSupressMsg = false; var g_iPmsId1g_iPmsId2g_sMsg1g_sMsg2 function savePms(bPmsIsChecked bHavePms bSupressMsg sPrintMsg1 sPrintMsg2 iPmsId1 iPmsId2){ g_bPmsIsChecked = bPmsIsChecked; g_bHavePms = bHavePms; g_bSupressMsg = bSupressMsg; g_sMsg1 = sPrintMsg1; g_sMsg2 = sPrintMsg2; g_iPmsId1 = iPmsId1; g_iPmsId2 = iPmsId2; return true; } function getPms(){ var sArr=new Array(); sArr[0]=g_bPmsIsChecked; sArr[1]=g_bHavePms; sArr[2]=g_bSupressMsg; sArr[3]=g_sMsg1; sArr[4]=g_sMsg2; sArr[5]=g_iPmsId1; sArr[6]=g_iPmsId2; return sArr; } var g_sFile = ""; var g_sServiceId = ""; var g_bHaveInstruction = false; function saveCurrentInfo(sServiceId bHaveInstruction sMyName) { g_sFile = sMyName; g_sServiceId = sServiceId; g_bHaveInstruction = bHaveInstruction; return true; } var numberBunt numberEgiro; numberBunt = 0; numberEgiro = 0; function setBunt(x){ numberBunt = x; } function setEgiro(x){ numberEgiro = x; } function getBunt(){ return numberBunt; } function getEgiro(){ return numberEgiro; } function getCurrentInfo() { var sArr = new Array(); sArr[0] = g_sFile; sArr[1] = g_sServiceId; sArr[2] = g_bHaveInstruction; return sArr; } function InfoObject(sName){ //properties this.name= sName this.elements = new Array(); // methods this.A= AddIns;// creates instruction elements this.Ret= RetIns;// returns content when file name is given this.AP= AddPms;// creates personal message elements this.RetPmsSup= RetPmsSup;// returns supress flag for a personal message } function AddPms(sName bSupress sContent){ if (this.elements[sName]== null) this.elements[sName]=new Object(); this.elements[sName].supress=bSupress; this.elements[sName].content=sContent; } function RetPmsSup(sName1 sName2){ var bSupress = false; if(typeof this.elements[sName1] == 'object'){ bSupress = this.elements[sName1].supress; } if(typeof this.elements[sName2] == 'object'){ bSupress = this.elements[sName2].supress; } return bSupress; } function AddIns(sFileName sContent){ if (this.elements[sFileName]== null) this.elements[sFileName]=new Object(); this.elements[sFileName].content=sContent; } function RetIns(sFileName){ if(typeof this.elements[sFileName] == 'object'){ returnthis.elements[sFileName].content; }else return ''; } function keyURL(URL) { var sTemp = ""; if(URL.indexOf('://') > 0) { sTemp = URL.substring(URL.indexOf('://')+3 URL.length); sTemp = sTemp.substring(sTemp.indexOf('/') sTemp.length); if(sTemp.indexOf('?') > 0) { sTemp = sTemp.substring(0 sTemp.indexOf('?')); } } return sTemp; } function stripQueryFromURL(URL) { var sTemp = ""; if(URL.indexOf('?') > 0) { sTemp = URL.substring(0 URL.indexOf('?')); return sTemp } return URL; } function logOutButton(nameimageSource actionURL imgWidth imgHeight xPos yPos targetWin sUserEvent) { this.name = name; this.objLayer = null; this.imageSource = imageSource; this.actionURL = actionURL; this.imgWidth = imgWidth; this.imgHeight = imgHeight; this.xPos = xPos; this.yPos = yPos; this.targetWin = targetWin; this.sUserEvent = sUserEvent; this.show = showLogout; } function showLogout(){ isNAV4 = (document.layers); if(isNAV4) { this.objLayer = new Layer(this.imgWidth); sTemp = '<layer name="' + this.name + '" visibility="inherit" width="' + this.imgWidth + '" height="' + this.imgHeight + '">'; sTemp += '<a href="#"><img src="' + this.imageSource + '" width="'+ this.imgWidth +'" height="' + this.imgHeight + '" align="right" border="0"></a>'; sTemp += '</layer>'; this.objLayer.document.write(sTemp); this.objLayer.document.close(); this.objLayer.top = this.yPos; this.objLayer.left = this.xPos; this.objLayer.captureEvents(Event.MOUSEUP); this.objLayer.onmouseup=onLogOut; this.objLayer.owner = this; this.objLayer.visibility = 'show'; } else { sTemp = '<div id="'+ this.name +'" style="position:absolute; visibility:visible;left:' + this.xPos + 'px; top:' + this.yPos + 'px; width:' + this.imgWidth + '; height:' + this.imgHeight + ';">'; sTemp += '<img src="' + this.imageSource + '" width="' + this.imgWidth + '" height="' + this.imgHeight + '" align="right" border="0" style="cursor:hand">'; sTemp += '</div>'; document.body.insertAdjacentHTML('BeforeEnd'sTemp); this.objLayer = document.all.tags('div')(this.name); this.objLayer.owner = this; this.objLayer.onmouseup = onLogOut; } } function onLogOut() { var sURL = ''; var objLogout; if(isNAV4) { objLogout = this.owner; sURL = objLogout.actionURL; } else { if(window.event.srcElement.parentElement.owner) { objLogout = window.event.srcElement.parentElement.owner; sURL = objLogout.actionURL; } } if((sURL.length > 0) && (objLogout)) { objLogout.targetWin.location.href = sURL; if(objLogout.sUserEvent != null) eval(objLogout.sUserEvent); } } function popUpMenu(name rootXPos rootYPos hostWindow) { isIE4 = (document.all); isNAV4 = (document.layers); navRoot = '/wow/'; //bookRoot = 'e1'; bookRoot = ''; maxWidthNs4 = 200; welcomeID = 'e109'; this.rootXPos = rootXPos; this.rootYPos = rootYPos; this.name = name; this.hostWindow = (hostWindow != null?hostWindow:window); this.numberBookmarks = numberOfBookmarks; this.style = null; this.Menus = new Array(); this.backContLayer = null; this.lastClickedEntryID = 0; this.elements = new Array(); this.elementsRelAddress = new Array(); this.root = null; this.create = createAllMenus; this.createMenu = createMenu; this.addEntry = addEntry; this.addCreateEntry = addCreateEntry; this.changeEntry = changeEntry; this.createStyle = createStyle; this.createBackCont = createBackCont; this.showEntry = showEntryFromPopup; this.updateLocation = updateLocation; this.hideEntry = hideEntry; this.deleteAllBookmarks = deleteAllBookmarks; this.highLight = popupHighlight; this.lowLight = popupLowlight; } function popupHighlight() { if(this.lastClickedEntryID != 0) { var menuID = this.elements[this.lastClickedEntryID].parent.id var objMenu = this.Menus[menuID] if(isNAV4) { objMenu.objLayer.document.layers[''+ this.lastClickedEntryID].bgColor = this.style.bgColorClicked; } else { objMenu.objLayer.document.all.tags('div')('e_'+ this.lastClickedEntryID).style.backgroundColor = this.style.bgColorClicked; } } } function popupLowlight() { if(this.lastClickedEntryID != 0) { var menuID = this.elements[this.lastClickedEntryID].parent.id var objMenu = this.Menus[menuID] if(isNAV4) { objMenu.objLayer.document.layers[''+ this.lastClickedEntryID].bgColor = objMenu.menuBgColor; } else { objMenu.objLayer.document.all.tags('div')('e_'+ this.lastClickedEntryID).style.backgroundColor = objMenu.menuBgColor; } } } function updateLocation(path) { var entryID = ""; if(this.elementsRelAddress[keyURL(path)]) { entryID = this.elementsRelAddress[keyURL(path)]; } //if(entryID && this.lastClickedEntryID){ if(entryID){ if(entryID != this.lastClickedEntryID) { this.showEntry(entryID); } } } function createAllMenus(ID) { if(ID==null) { var elementObject = this.root; this.createBackCont(); } else { var elementObject = this.elements[ID]; } for (var childId in elementObject.children) { if(elementObject.children[childId].children!=null) this.create(childId); } this.createMenu(elementObject.id((elementObject.parent!=null)?elementObject.parent.id:0)); } function createMenu(ID parentID) { return this.Menus[ID] = new menu(ID parentID this); } function createStyle(menuHeight popupXOffset popupWidth bgColorRoot bgColorChild1 bgColorChild2 bgColorHigh fontFace fontColor1 fontColor2 fontColor3 fontSize borderWidth borderColor bgColorClicked) { return this.style = new style(menuHeight popupXOffset popupWidth bgColorRoot bgColorChild1 bgColorChild2 bgColorHigh fontFace fontColor1 fontColor2 fontColor3 fontSize borderWidth borderColor bgColorClicked); } function createBackCont() { var contWidth = (2*this.style.menuHeight-(this.style.borderWidth*2)); var sTemp = ""; if(isNAV4) { this.backContLayer = new Layer(this.style.popupWidth this.hostWindow); sTemp += "<layer name='backContLayerBgColor' left='0' top='0' BGCOLOR='" + this.style.borderColor + "' WIDTH='" + this.style.popupWidth + "' height='" + contWidth + "' visibility='inherit'>"; sTemp += "<layer name='backContLayerMenuColor' left='" + this.style.borderWidth + "' top='" + this.style.borderWidth + "' BGCOLOR='" + this.style.bgColorRoot + "' WIDTH='" + this.style.popupWidth + "' height='" + contWidth + "' visibility='inherit' clip='" + (this.style.popupWidth - 2*this.style.borderWidth) + "" + (contWidth - 2*this.style.borderWidth) + "'>"; sTemp += "</layer></layer>"; this.backContLayer.document.write(sTemp); this.backContLayer.document.close(); this.backContLayer.left = this.style.popupXOffset; this.backContLayer.top = (this.style.menuHeight + this.rootYPos - this.style.borderWidth); this.backContLayer.visibility = "show"; } else { sTemp = "<DIV ID='backContLayer' STYLE='position:absolute; visibility:visible; left:" + this.style.popupXOffset + "; top:" + (this.style.menuHeight + this.rootYPos - this.style.borderWidth) + "'>"; sTemp += "<DIV ID='backContLayerBgColor' STYLE='position:absolute; left:0px; top:0px; background-color:" + this.style.borderColor + "; width:" + this.style.popupWidth + "px; HEIGHT:" + contWidth + "; VISIBILITY:inherit;'>"; sTemp += "<DIV ID='backContLayerMenuColor' STYLE='position:absolute; left:" + this.style.borderWidth + "px; top:" + this.style.borderWidth + "px; background-color:" + this.style.bgColorRoot + "; width:" + this.style.popupWidth + "px; height:" + contWidth + "px; visibility:inherit; clip:rect(0px " + (this.style.popupWidth - 2*this.style.borderWidth) + "px " + (contWidth - 2*this.style.borderWidth) + "px 0px);'>"; sTemp += "</DIV>"; sTemp += "</DIV>" sTemp += "</DIV>"; this.hostWindow.document.body.insertAdjacentHTML('BeforeEnd'sTemp); this.backContLayer = this.hostWindow.document.all.tags('div')('backContLayer'); } } function addEntry(idparentIDtextURL width) { if(this.elements[id]==null) this.elements[id]=new Object(); this.elements[id].id=id; this.elements[id].text=text; this.elements[id].URL=URL; this.elements[id].width = (width||(text.length*Math.round(this.style.fontSize*0.5))); if(parentID==0) { this.root=this.elements[id]; this.root.parent=0; } else { if(this.elements[parentID]==null) this.elements[parentID]=new Object(); this.elements[id].parent=this.elements[parentID]; if(this.elements[parentID].children==null) { this.elements[parentID].children=new Array() this.elements[parentID].nbChild=0; } this.elements[parentID].children[id]=this.elements[id]; this.elements[parentID].nbChild++; } if((URL.length > 0) && (parentID != bookRoot)) this.elementsRelAddress[stripQueryFromURL(URL)] = id; } function addCreateEntry(idparentIDtextURL width) { if(this.elements[id]) { this.changeEntry(id textURL width); } else { this.addEntry(id parentID text URL width); var sTemp; var menu = this.Menus[parentID]; var tempColor = this.style.bgColorRoot; var tempFontColor = this.style.fontColor1; var thisEntryLayer; if(this.Menus[parentID].menuBgColor) tempColor = this.Menus[parentID].menuBgColor; if(this.Menus[parentID].fontColor) tempFontColor = this.Menus[parentID].fontColor; if(isNAV4) { sTemp = "<font face='" + this.style.fontFace + "' color='" + tempFontColor + "' size='" + this.style.fontSize + "'>"; sTemp += " <a href='#' style='color:" + tempFontColor + ";text-decoration:none;'>" + text + "</a></font>"; thisEntryLayer = new Layer(maxWidthNs4 menu.objLayer); thisEntryLayer.document.write(sTemp); thisEntryLayer.document.close(); thisEntryLayer.left = 0; thisEntryLayer.top = this.style.borderWidth; thisEntryLayer.bgColor = tempColor; thisEntryLayer.clip.width = width; thisEntryLayer.clip.height = this.style.menuHeight - 2*this.style.borderWidth; thisEntryLayer.visibility = 'inherit'; eval("menu.objLayer.layers." + id + "=thisEntryLayer;"); thisEntryLayer.entryID = id; thisEntryLayer.captureEvents(Event.MOUSEOVER); thisEntryLayer.onmouseover=onEnterEntry; thisEntryLayer.captureEvents(Event.MOUSEOUT); thisEntryLayer.onmouseout=onExitEntry; thisEntryLayer.document.captureEvents(Event.MOUSEUP); thisEntryLayer.document.onmouseup=onClickEntry; thisEntryLayer.document.clickID = '' + id; thisEntryLayer.document.clickMenu = this.Menus[parentID]; } else { sTemp = "<DIV ID='e_" + id + "' style='cursor:hand; position:absolute; visibility:inherit; left:0px; top:" + this.style.borderWidth + "px; background-color:" + tempColor + "; width:" + width + "px; height:" + (this.style.menuHeight-2*this.style.borderWidth) + "px;'>"; sTemp += " " + text; sTemp += "</DIV>"; menu.objLayer.insertAdjacentHTML('BeforeEnd'sTemp); menu.objLayer.document.all.tags('div')('e_' + id).parentElement.owner = menu; } } } function changeEntry(id newText newURL newWidth) { if(this.elements[id]) { var parentID = this.elements[id].parent.id; this.elements[id].text = newText; this.elements[id].URL = newURL; this.elements[id].width = newWidth; var tempFontColor = this.style.fontColor1; if(this.Menus[parentID].fontColor) tempFontColor = this.Menus[parentID].fontColor; var sTemp; if(isNAV4) { sTemp = "<font face='" + this.style.fontFace + "' color='" + tempFontColor + "' size='" + this.style.fontSize + "'>"; sTemp += " " + newText + "</font>"; var entryLayer = this.Menus[parentID].objLayer.document.layers[id]; entryLayer.document.write(sTemp); entryLayer.document.close(); entryLayer.clip.width = newWidth; entryLayer.visibility = 'inherit'; } else { sTemp = " " + newText; var entryDiv = this.Menus[parentID].objLayer.document.all.tags('div')('e_' + id); entryDiv.innerHTML = sTemp; entryDiv.style.width = newWidth; entryDiv.style.visibility = 'inherit'; } } } function deleteAllBookmarks() { for(var id in this.elements[bookRoot].children) { if(id.substring(01) == "b") this.hideEntry(id); } } function numberOfBookmarks() { var iTemp=0; for(var id in this.elements[bookRoot].children) { if(id.substring(01) == "b") { if(isNAV4) { if(this.Menus[this.elements[id].parent.id].objLayer.document.layers[id].visibility != 'hide') iTemp++; } else { if(this.Menus[this.elements[id].parent.id].objLayer.document.all.tags('div')('e_' + id).style.visibility != 'hidden') iTemp++; } } } return iTemp; } function hideEntry(id) { var objLayer = this.Menus[this.elements[id].parent.id].objLayer; if(isNAV4) { objLayer.document.layers[''+id].clip.width = 0; objLayer.document.layers[''+id].visibility = "hide"; } else { objLayer.document.all.tags('div')('e_'+id).style.width = 0; objLayer.document.all.tags('div')('e_'+id).style.visibility = "hidden"; } } function showEntryFromPopup(ID) { var clickMenu = this.Menus[this.elements[ID].parent.id]; var clickID = ID; if(this.Menus[this.elements[ID].parent.id]) this.showEntry(this.elements[ID].parent.id); if(clickMenu) { if(clickMenu.activeClickedID != clickID) { clickMenu.unClickedLight(); if(clickMenu.popupParent.Menus[clickMenu.activeClickedID]) { clickMenu.popupParent.Menus[clickMenu.activeClickedID].resetChildren(); } if(clickMenu.popupParent.Menus[clickID]) clickMenu.popupParent.Menus[clickID].show(); } clickMenu.activeClickedID = clickID; clickMenu.clickedLight(); this.lastClickedEntryID = clickID; if(!(this.elements[clickID].nbChild > 0)) this.highLight(); } } function style(menuHeight popupXOffset popupWidth bgColorRoot bgColorChild1 bgColorChild2 bgColorHigh fontFace fontColor1 fontColor2 fontColor3 fontSize borderWidth borderColor bgColorClicked) { this.menuHeight = menuHeight; this.popupXOffset = popupXOffset; this.popupWidth = popupWidth; this.borderWidth = borderWidth; this.bgColorRoot = bgColorRoot; this.bgColorChild1 = bgColorChild1; this.bgColorChild2 = bgColorChild2; this.bgColorHigh = bgColorHigh; this.borderColor = borderColor; this.bgColorClicked = bgColorClicked; this.fontFace = fontFace; this.fontColor1 = fontColor1; this.fontColor2 = fontColor2; this.fontColor3 = fontColor3; this.fontSize = fontSize; } function menu(ID parentID popupParent) { this.ID=ID; this.parentID = (parentID||0); this.activeHighlightID = 0; this.activeClickedID = 0; this.xPos = popupParent.rootXPos; this.yPos = popupParent.rootYPos; this.menuBgColor = popupParent.style.bgColorRoot; this.fontColor = popupParent.style.fontColor1; this.popupParent = popupParent; this.objLayer = null; this.createMenuLayersIE4 = createMenuLayersIE4; this.createMenuLayersNS4 = createMenuLayersNS4; this.highLight = highLight; this.lowLight = lowLight; this.clickedLight = clickedLight; this.unClickedLight = unClickedLight; this.show = showMenu; this.hide = hideMenu; this.resetChildren = resetChildren; this.trim = trimMenu; if(isNAV4) { this.createMenuLayersNS4(); } else { this.createMenuLayersIE4(); } } function showMenu() { if(isNAV4) { this.objLayer.left = this.xPos; this.objLayer.top = this.yPos; this.objLayer.visibility = true; } else { this.objLayer.style.left = this.xPos + 'px'; this.objLayer.style.top = this.yPos + 'px'; this.objLayer.style.visibility = 'visible'; } } function hideMenu(){ if(isNAV4) this.objLayer.visibility = "hide"; else this.objLayer.style.visibility = "hidden"; } function highLight() { if (this.activeHighlightID != 0) { if(isNAV4) { this.objLayer.document.layers[''+ this.activeHighlightID].bgColor = this.popupParent.style.bgColorHigh; } else { this.objLayer.document.all.tags('div')('e_'+ this.activeHighlightID).style.backgroundColor = this.popupParent.style.bgColorHigh; } } } function lowLight() { if (this.activeHighlightID != 0) { if(isNAV4) { var entries = this.popupParent.elements[this.ID]; for(var i in entries.children) { if((entries.children[i].id != this.activeClickedID) && (entries.children[i].id != this.popupParent.lastClickedEntryID)){ this.objLayer.document.layers[''+ entries.children[i].id].bgColor = this.menuBgColor; } } } else { this.objLayer.document.all.tags('div')('e_'+ this.activeHighlightID).style.backgroundColor = this.menuBgColor; } } } function clickedLight() { if((this.activeClickedID != 0) && (this.popupParent.Menus[this.activeClickedID])) { if(isNAV4) { this.objLayer.document.layers[''+ this.activeClickedID].bgColor = this.popupParent.Menus[this.activeClickedID].menuBgColor; this.objLayer.document.layers[''+ this.activeClickedID].clip.height = (this.popupParent.style.menuHeight-2*this.popupParent.style.borderWidth) + this.popupParent.style.borderWidth; this.popupParent.backContLayer.layers[0].layers[0].bgColor = this.popupParent.style.bgColorChild1; } else { this.objLayer.document.all.tags('div')('e_'+ this.activeClickedID).style.backgroundColor = this.popupParent.Menus[this.activeClickedID].menuBgColor; this.objLayer.document.all.tags('div')('e_'+ this.activeClickedID).style.height = (this.popupParent.style.menuHeight-2*this.popupParent.style.borderWidth) + this.popupParent.style.borderWidth; this.popupParent.backContLayer.document.all.tags('div')('backContLayerMenuColor').style.backgroundColor = this.popupParent.style.bgColorChild1; } } } function unClickedLight() { if(isNAV4) { if (this.activeClickedID != 0) { this.objLayer.document.layers[''+ this.activeClickedID].bgColor = this.menuBgColor; this.objLayer.document.layers[''+ this.activeClickedID].clip.height = (this.popupParent.style.menuHeight-2*this.popupParent.style.borderWidth); } } else { if(this.activeClickedID != 0) { this.objLayer.document.all.tags('div')('e_'+ this.activeClickedID).style.backgroundColor = this.menuBgColor; this.objLayer.document.all.tags('div')('e_'+ this.activeClickedID).style.height = (this.popupParent.style.menuHeight-2*this.popupParent.style.borderWidth); } } } function resetChildren(ID) { var menuObject; if(ID==null) { menuObject = this; } else { menuObject = this.popupParent.Menus[ID]; } if(menuObject) { if((menuObject.activeClickedID !=0) && (menuObject.activeClickedID.length > 0)) { this.resetChildren('' + menuObject.activeClickedID); } menuObject.hide(); menuObject.lowLight(); menuObject.unClickedLight(); menuObject.activeHighlightID = 0; menuObject.activeClickedID = 0; } return true; } function createMenuLayersNS4() { var style = this.popupParent.style; var isRoot = (this.parentID == 0); this.objLayer = new Layer(style.popupWidth this.popupParent.hostWindow); var entries = this.popupParent.elements[this.ID]; var sTemp = ""; var iTempXPos = style.borderWidth; var sEntryWidth; var sEntryWidthNS4; var bIsLevel1 = false; var bIsLevel2 = false; if (!isRoot) { if (this.popupParent.elements[this.parentID].parent == 0) { this.menuBgColor = style.bgColorChild1; this.xPos = style.popupXOffset; this.yPos = this.popupParent.rootYPos + style.menuHeight - style.borderWidth; this.fontColor = style.fontColor2; bIsLevel1 = true; } else { this.menuBgColor = style.bgColorChild2; this.xPos = style.popupXOffset; this.yPos = this.popupParent.rootYPos + 2*(style.menuHeight - style.borderWidth); this.fontColor = style.fontColor3; bIsLevel2 = true; } } for(var j in entries.children) var iLastChild = j; var bFirstTime = true; sTemp += "<layer name='borderLayer' left='0' top='0' BGCOLOR='" + style.borderColor + "' WIDTH='" + style.popupWidth + "' height='" + style.menuHeight + "' visibility='inherit'></layer>" for(var i in entries.children) { if ((i == iLastChild) && !isRoot && !bIsLevel1 && !bIsLevel2) sEntryWidth = (style.popupWidth - iTempXPos-style.borderWidth); else { sEntryWidthNS4 = maxWidthNs4; sEntryWidth = entries.children[i].width; } var endText = ''; var thisElt = this.popupParent.elements[entries.children[i].id]; if((thisElt.nbChild > 0) && (thisElt.parent.id != this.popupParent.root.id)) { endText =" »"; sEntryWidth += 11; } sTemp += "<layer name='" + entries.children[i].id + "' left='" + iTempXPos + "' top='" + style.borderWidth + "' BGCOLOR='" + this.menuBgColor + "' WIDTH='" + sEntryWidthNS4 + "' height='" + style.menuHeight + "' visibility='inherit' clip='" + sEntryWidth + "" + (style.menuHeight-2*style.borderWidth) + "'>"; sTemp += "<font style='font-size:" + style.fontSize + "px; font-family:" + style.fontFace + "; color:" + this.fontColor + ";'>"; sTemp += " <a href='#' style='font-size:" + style.fontSize + "px; color:" + this.fontColor + ";text-decoration:none; font-family:" + style.fontFace + ";'>" + entries.children[i].text + endText + "</a>"; sTemp+= "</font>"; sTemp += "</layer>"; if (isRoot && bFirstTime) sTemp += "<div style='position:absolute; left:" + (iTempXPos - style.borderWidth) + "px; top:0px;height:18;width:4;'><img src='/wowimg/cornerleft.gif' height=18 width=4 border=0></div>"; else if (isRoot) sTemp += "<div style='position:absolute; left:" + (iTempXPos -4) + "px; top:0px;height:18;width:4;'><img src='/wowimg/cornercenter.gif' height=18 width= 7 border=0></div>"; bFirstTime = false; if (isRoot && (i==iLastChild)) sTemp += "<div style='position:absolute; left:" + (iTempXPos + sEntryWidth - 3) + "px; top:0px;height:18;width:4;'><img src='/wowimg/cornerright.gif' height=18 width=4 border=0></div>"; iTempXPos += sEntryWidth + style.borderWidth; } if(!isRoot) sTemp += "<layer name='emptyElement' left='" + iTempXPos + "' top='" + style.borderWidth + "' BGCOLOR='" + this.menuBgColor + "' WIDTH='" + (style.popupWidth - iTempXPos - style.borderWidth) + "' height='" + style.menuHeight + "' visibility='inherit' clip='" + (style.popupWidth - iTempXPos-style.borderWidth) + "" + (style.menuHeight-2*style.borderWidth) + "'></layer>"; this.objLayer.document.write(sTemp); this.objLayer.document.close(); this.objLayer.bgColor = style.borderColor; this.objLayer.left = this.xPos; this.objLayer.top = this.yPos; if(isRoot) this.objLayer.clip.width = iTempXPos; this.objLayer.owner=this; for(var i in entries.children) { this.objLayer.document.layers[entries.children[i].id].captureEvents(Event.MOUSEOVER); this.objLayer.document.layers[entries.children[i].id].onmouseover=onEnterEntry; this.objLayer.document.layers[entries.children[i].id].captureEvents(Event.MOUSEOUT); this.objLayer.document.layers[entries.children[i].id].onmouseout=onExitEntry; this.objLayer.document.layers[entries.children[i].id].document.captureEvents(Event.MOUSEUP); this.objLayer.document.layers[entries.children[i].id].document.onmouseup=onClickEntry; this.objLayer.document.layers[entries.children[i].id].document.clickID = entries.children[i].id; this.objLayer.document.layers[entries.children[i].id].document.clickMenu = this; this.objLayer.document.layers[entries.children[i].id].entryID = entries.children[i].id; } this.objLayer.visibility = (isRoot?"show":"hidden"); } function createMenuLayersIE4() { var style = this.popupParent.style; var isRoot = (this.parentID == 0); var entries = this.popupParent.elements[this.ID]; var sTemp = ""; var iTempXPos = style.borderWidth; var sEntryWidth; var bIsLevel1 = false; var bIsLevel2 = false; if (!isRoot) { if (this.popupParent.elements[this.parentID].parent == 0) { this.menuBgColor = style.bgColorChild1; this.xPos = style.popupXOffset; this.yPos = this.popupParent.rootYPos + style.menuHeight - style.borderWidth; this.fontColor = style.fontColor2; bIsLevel1 = true; } else { this.menuBgColor = style.bgColorChild2; this.xPos = style.popupXOffset; this.yPos = this.popupParent.rootYPos + 2*(style.menuHeight - style.borderWidth); this.fontColor = style.fontColor3; bIsLevel2 = true; } } for(var j in entries.children) var iLastChild = j; var bFirstTime = true; sTemp += "<font style='font-family:" + style.fontFace + "; font-size:" + style.fontSize + "px; color:" + this.fontColor + ";'>"; sTemp += "<DIV ID='objLayer" + this.ID + "' style='position:absolute; visibility:visible; left:" + this.xPos + "; top:" + this.yPos + ";'>"; sTemp += "<DIV ID='borderLayer' style='position:absolute; visibility:inherit; left:0px; top:0px; background-color:" + style.borderColor + "; width:" + style.popupWidth + "px; height:" + style.menuHeight + "px;'></DIV>"; for(var i in entries.children) { if ((i == iLastChild) && !isRoot && !bIsLevel1 && !bIsLevel2) sEntryWidth = (style.popupWidth - iTempXPos-style.borderWidth); else sEntryWidth = entries.children[i].width; var endText = ''; var thisElt = this.popupParent.elements[entries.children[i].id]; if((thisElt.nbChild > 0) && (thisElt.parent.id != this.popupParent.root.id)) { endText =" »"; sEntryWidth += 11; } sTemp += "<DIV ID='e_" + entries.children[i].id + "' style='color:" + this.fontColor + "; font-family:" + style.fontFace + "; cursor:hand; font-size:" + style.fontSize + "px; position:absolute; visibility:inherit; left:" + iTempXPos + "px; top:" + style.borderWidth + "px; background-color:" + this.menuBgColor + "; width:" + sEntryWidth + "px; height:" + (style.menuHeight-2*style.borderWidth) + "px;'>"; sTemp += " " + entries.children[i].text + endText; sTemp += "</DIV>"; if (isRoot && bFirstTime) sTemp += "<div style='position:absolute; left:" + (iTempXPos - style.borderWidth) + "px; top:0px;height:18;width:4;'><img src='/wowimg/cornerleft.gif' height=18 width=4 border=0></div>"; else if (isRoot) sTemp += "<div style='position:absolute; left:" + (iTempXPos -4) + "px; top:0px;height:18;width:4;'><img src='/wowimg/cornercenter.gif' height=18 width=7 border=0></div>"; bFirstTime = false; if (isRoot && (i==iLastChild)) sTemp += "<div style='position:absolute; left:" + (iTempXPos + sEntryWidth - 3) + "px; top:0px;height:18;width:4;'><img src='/wowimg/cornerright.gif' height=18 width=4 border=0></div>"; iTempXPos += sEntryWidth + style.borderWidth; } if(!isRoot) sTemp += "<DIV ID='" + this.ID + "_emptyElement' style='position:absolute; visibility:inherit; left:" + iTempXPos + "; top:" + style.borderWidth + "; background-color:" + this.menuBgColor + "; width:" + (style.popupWidth - iTempXPos - style.borderWidth) + "px; height:" + (style.menuHeight-2*style.borderWidth) + "px;'></DIV>"; sTemp += "</DIV></font>"; this.popupParent.hostWindow.document.body.insertAdjacentHTML('BeforeEnd'sTemp); this.objLayer = this.popupParent.hostWindow.document.all.tags('div')('objLayer' + this.ID); this.objLayer.style.visibility = (isRoot?"visible":"hidden"); if(isRoot) this.objLayer.all.tags('DIV')('borderLayer').style.width = iTempXPos; this.objLayer.owner=this; this.objLayer.onmouseover = onEnterEntry; this.objLayer.onmouseout = onExitEntry; this.objLayer.onmouseup = onClickEntry; } function trimMenu(){ var xSum; xSum = this.popupParent.style.borderWidth; for (var childId in this.popupParent.elements[this.ID].children) { if(isNAV4) { if (this.objLayer.layers[childId].visibility =='inherit') { this.objLayer.layers[childId].left = xSum; xSum += this.objLayer.layers[childId].clip.width + this.popupParent.style.borderWidth; } } else { if (this.objLayer.document.all.tags('div')('e_' + childId).style.visibility == 'inherit') { this.objLayer.document.all.tags('div')('e_' + childId).style.left = xSum; xSum += parseInt(this.objLayer.document.all.tags('div')('e_' + childId).style.width) + this.popupParent.style.borderWidth; } } } if(isNAV4) { this.objLayer.layers['emptyElement'].left = xSum; this.objLayer.layers['emptyElement'].clip.width = this.popupParent.style.popupWidth - xSum - this.popupParent.style.borderWidth; } else { this.objLayer.document.all.tags('div')(this.ID + '_emptyElement').style.left = xSum; this.objLayer.document.all.tags('div')(this.ID + '_emptyElement').style.width = this.popupParent.style.popupWidth - xSum - this.popupParent.style.borderWidth; } return true; } function onEnterEntry() { if(isNAV4) { var menuObject = this.parentLayer.owner; var entryID = this.entryID; } else { if(window.event.srcElement.id.substring(02) == "e_") { var menuObject = window.event.srcElement.parentElement.owner; var entryID = window.event.srcElement.id.substring(2window.event.srcElement.id.length); window.event.cancelBubble = true; } } if(menuObject) { if ((menuObject.activeClickedID != entryID) && (menuObject.popupParent.lastClickedEntryID != entryID)) { menuObject.activeHighlightID = entryID; menuObject.highLight(); } } return true; } function onExitEntry() { if(isNAV4) { var menuObject = this.parentLayer.owner; var entryID = this.entryID; } else { if(window.event.srcElement.id.substring(02) == "e_") { var menuObject = window.event.srcElement.parentElement.owner; var entryID = window.event.srcElement.id.substring(2window.event.srcElement.id.length); window.event.cancelBubble = true; } } if(menuObject) { if(menuObject.activeClickedID == entryID){ menuObject.clickedLight(); } else { menuObject.lowLight(); if(menuObject.popupParent.Menus[entryID]) { menuObject.popupParent.Menus[entryID].hide(); } } } return true; } function onClickEntry() { if(isNAV4) { var clickMenu = this.clickMenu; var clickID = this.clickID; } else { if(window.event.srcElement.id.substring(02) == "e_") { var clickMenu = window.event.srcElement.parentElement.owner; var clickID = window.event.srcElement.id.substring(2window.event.srcElement.id.length); } } if(loadingContent==true){alert("Du har begärt en sida innan den föregÃ¥ende laddats klart.\n\nVänta till sidan laddat klart för att inte bli utloggad.");loadingContent=false;return true;} if(clickMenu) { if(clickMenu.activeClickedID != clickID) { clickMenu.unClickedLight(); if(clickMenu.popupParent.Menus[clickMenu.activeClickedID]) { clickMenu.popupParent.Menus[clickMenu.activeClickedID].resetChildren(); } if(clickMenu.popupParent.Menus[clickID]) clickMenu.popupParent.Menus[clickID].show(); } clickMenu.activeClickedID = clickID; clickMenu.clickedLight(); clickMenu.popupParent.lowLight(); if(!(clickMenu.popupParent.elements[clickID].nbChild > 0)) { if(clickMenu.popupParent.elements[clickID].URL.length > 0) { var targetURL = clickMenu.popupParent.elements[clickID].URL; window.parent.frames['content'].location.href = targetURL; loadingContent=true; clickMenu.popupParent.lastClickedEntryID = clickID; //if (oLoading){oLoading.show();} } } clickMenu.popupParent.highLight(); } return true; } --ReaqsoxgOBHFXBhH--
Comment
#3
David Faure 2001-10-21 22:37:12
On Dimanche 21 Octobre 2001 22:03 Daniel Brahneborg wrote:
> On Sun Oct 21 2001 at 08:43:42PM +0200 David Faure wrote: > > On Dimanche 21 Octobre 2001 20:07
basic@chello.se
wrote: > > > "Match/Search. Argument is not a RegExp - returning Undefined". > > > > I have fixed a bug that was leading to that error message > > (match and search wanted a regexp as argument and wouldn't accept a string. > > That's fixed now). I have even backported that fix to the 2.2 branch > > I tried the patch and it works fine. > Lots of thanks!
:-)
> The top frame code attached refuses to show the popup menu. > It just stays dark grey. The code in wow0001.js detects by testing > for document.all and document.layers if the browser is Netscape or > MS Explorer but in Konqueror nothing happens.
Konqueror supports document.all and is usually identified as IE so the problem isn't there. KJS: Failed function call attempt on: undefined : Undefined (0x8463ad8) line 0 KJS: Was property 'insertAdjacentHTML' KJS: of: [object BODY] : HTMLElement (0x8657330) KJS: Type error at line 0. Expression is no object. Cannot be called. insertAdjacentHTML ? And indeed grepping the code: wow0001.js:document.body.insertAdjacentHTML('BeforeEnd' sTemp); wow0001.js:document.body.insertAdjacentHTML('BeforeEnd'sTemp); wow0001.js:this.hostWindow.document.body.insertAdjacentHTML('BeforeEnd'sTemp); wow0001.js:menu.objLayer.insertAdjacentHTML('BeforeEnd'sTemp); wow0001.js:this.popupParent.hostWindow.document.body.insertAdjacentHTML('BeforeEnd'sTemp);
http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/insertAdjacentHTML.asp
Hmm that's an IE-specific extension. But we have to support it since we want to be IE compatible. Well that's not really my area Peter or Dirk will have a look hopefully ;) -- David FAURE
david@mandrakesoft.com
faure@kde.org
http://perso.mandrakesoft.com/~david/
http://www.konqueror.org/
KDE 3.0: Konquering the Desktops
Comment
#4
David Faure 2002-10-24 15:07:00
***
Bug 30781
has been marked as a duplicate of this bug. ***
Comment
#5
David Faure 2002-10-24 15:08:02
Testcase also available at
http://www.algonet.se/~bjorn/jsexample.zip
Will look into this after KDE-3.1 is out.
Comment
#6
David Faure 2002-10-25 01:41:46
***
Bug 18204
has been marked as a duplicate of this bug. ***
Comment
#7
Maksim Orlovich 2004-02-06 21:14:45
***
Bug 23328
has been marked as a duplicate of this bug. ***
Comment
#8
Maksim Orlovich 2004-05-08 22:24:15
***
Bug 80332
has been marked as a duplicate of this bug. ***
Comment
#9
Maksim Orlovich 2004-05-08 22:26:12
***
Bug 56656
has been marked as a duplicate of this bug. ***
Comment
#10
Richard Lärkäng 2004-09-22 13:30:42
Created an attachment (id=7623)
[details]
Patch to implement insertAdjacentHTML Would something like this patch be ok? It's based on code from:
http://www.faqts.com/knowledge_base/view.phtml/aid/5756
Since this is the first time I code something in khtml, I'm sure there are some things I'm doing wrong. But at least insertAdjacentHTML seems to work for the tests that I have done, and also that part of www.sebank.se works (but there are other errors later on).
Comment
#11
Stephan Kulow 2004-10-17 13:58:56
CVS commit by coolo: applying patch to support insertAdjacentHTML after testing it (most test cases available online are interactive though) FEATURE: 33968 M +5 -0 ChangeLog 1.304 M +27 -0 ecma/kjs_dom.cpp 1.181 M +1 -1 ecma/kjs_dom.h 1.72 --- kdelibs/khtml/ChangeLog #1.303:1.304 @@ -1,2 +1,7 @@ +2004-10-17 Stephan Kulow <
coolo@kde.org
> + + * ecma/kjs_dom.cpp: adding patch by Richard Lärkäng to support IE + extension insertAdjacentHTML (#33968) + 2004-10-16 Allan Sandfeld Jensen <
kde@carewolf.com
> * html/html_formimpl.cpp: Escape otherwise unencodable characters. --- kdelibs/khtml/ecma/kjs_dom.cpp #1.180:1.181 @@ -65,4 +65,5 @@ using namespace KJS; # IE extensions contains DOMNode::Contains DontDelete|Function 1 + insertAdjacentHTML DOMNode::InsertAdjacentHTML DontDelete|Function 2 # "DOM level 0" (from Gecko DOM reference; also in WinIE) item DOMNode::Item DontDelete|Function 1 @@ -497,4 +498,30 @@ Value DOMNodeProtoFunc::tryCall(ExecStat return Undefined(); } + case DOMNode::InsertAdjacentHTML: + { + // see
http://www.faqts.com/knowledge_base/view.phtml/aid/5756
+ // and
http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/insertAdjacentHTML.asp
+ Range range = node.ownerDocument().createRange(); + + range.setStartBefore(node); + + DocumentFragment docFrag = range.createContextualFragment(args[1].toString(exec).string()); + + DOMString where = args[0].toString(exec).string(); + + if (where == "beforeBegin" || where == "BeforeBegin") + node.parentNode().insertBefore(docFrag, node); + else if (where == "afterBegin" || where == "AfterBegin") + node.insertBefore(docFrag, node.firstChild()); + else if (where == "beforeEnd" || where == "BeforeEnd") + return getDOMNode(exec, node.appendChild(docFrag)); + else if (where == "afterEnd" || where == "AfterEnd") + if (!node.nextSibling().isNull()) + node.parentNode().insertBefore(docFrag, node.nextSibling()); + else + node.parentNode().appendChild(docFrag); + + return Undefined(); + } case DOMNode::Item: return getDOMNode(exec, node.childNodes().item(static_cast<unsigned long>(args[0].toNumber(exec)))); --- kdelibs/khtml/ecma/kjs_dom.h #1.71:1.72 @@ -60,5 +60,5 @@ namespace KJS { ReplaceChild, RemoveChild, AppendChild, HasAttributes, HasChildNodes, CloneNode, Normalize, IsSupported, AddEventListener, RemoveEventListener, - DispatchEvent, Contains, + DispatchEvent, Contains, InsertAdjacentHTML, OnAbort, OnBlur, OnChange, OnClick, OnDblClick, OnDragDrop, OnError, OnFocus, OnKeyDown, OnKeyPress, OnKeyUp, OnLoad, OnMouseDown,
Comment
#12
Richard Lärkäng 2004-10-17 15:03:35
Thanks. For the original report, getting www.sebank.se to work, the relevant bug reports are: #76948 and #90269
P
latform
:
Compiled Sources
O
S
:
Linux
K
eywords
:
People
Reporter
:
Daniel Brahneborg
Assigned To
:
Konqueror Developers
CC
:
bigbadbill dingoblue net au
death_leech gmx de
jburgess777 googlemail com
patrick rutka free fr
richard goteborg utfors se
Related actions
View Bug Activity
Format For Printing
XML
Clone This Bug
Note
You need to
log in
before you can comment on or make changes to this bug.
Attachments
Patch to implement insertAdjacentHTML
(2.69 KB, patch)
2004-09-22 13:30
,
Richard Lärkäng
Details
View All
Add an attachment
(proposed patch, testcase, etc.)
Depends on
:
B
locks
:
Show dependency tree
-
Show dependency graph
First
Last
Prev
Next
No search results available
Search page
Actions
Reports
Requests
Reports
Bugs reported today
Bugs reported in the last 3 days
Bug reports with patches
Weekly Bug statistics
The most hated bugs
The most severe bugs
The most frequently reported bugs
The most wanted features
Junior Jobs
Report ownership counts and charts
My Account
New Account
Log In