Closed Bug 100117 Opened 24 years ago Closed 24 years ago

datek.com - Cancel button doesn't appear on page

Categories

(Tech Evangelism Graveyard :: English US, defect, P1)

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: bnesse, Assigned: bnesse)

References

()

Details

(Keywords: ecommerce, Whiteboard: [ETA 10/5/2001])

Attachments

(9 files)

I submitted a trade order at Datek Online, which I later went to the "open orders" page to cancel. The cancel page shows up, with the checkboxes to select the order(s) to be canceled, but the submit button does not appear on the page. Numerous attachments coming, including screen shots and the page source (which does appear to contain the cancel button when the other on screen graphics are not available (just cancel through the log-in requests.)
Attached file html souce of the page
Keywords: 4xp, ecommerce, nsbranch
There aren't any comments on this bug since the 17th of Sept. Can QA regess against the Netscape commercial builds and determine if this is still a valid bug? If so, and we can get fixes/reviews in the next day or two, please mark as nsbranch+ which will get this on the PDT radar. Else, mark is as nsbranch-. Also, can someone comment in the bug how serious you think this is? PDT is only accepting "stop ship" bugs such as data loss and loss of major functionality. From reading the comments this seems to fit into that category of bugs.
Keywords: topembed
I can verify that this still occurs with the 2001-09-24-05 Mac branch bits. As to how serious it is... I can only say that it's a blocker for me. I won't be using Netscape 6.x to do my online trading until it is fixed.
Reassigning to Chris.
Assignee: kmcclusk → karnaze
In the 4th attachment, I see (on a 9/24 Win2K debug m0.9.4 branch build and a 9/20 debug Win2K trunk build) the "cancel checked orders" button but not the broken image below it which is an anchor. The reason the broken image is not showing up is because we (unlike other browsers) don't show broken images in these situations. But it sounds like bnesse is not even seeing the "cancel checked orders" button on Mac, so maybe this is a mac only problem. Well, for either problem --> attinasi.
Assignee: karnaze → attinasi
If I open the 4th attachment on the Mac I do see the "cancel checked orders" button. When I am live on the site however I see nothing (as per the 2nd attachment.)
Accepting to investigate as topembed bug.
Status: NEW → ASSIGNED
Testcase works fine using the 09-25 Mozilla nightly build. Karnaze said it worked on the Win branch build from 09-24, so confirming that this is a Mac only problem. Does topembed apply to Mac only bugs? Anyway, it is serious so I'll look into it right away.
Sorry, not Mac only. See attachment #5 [details] taken on Win2K with this mornings branch build... no Cancel Orders button. Please don't consider attachment #4 [details] [diff] [review] a test case, it is not, it always generates the button. I simply posted the source incase it might be useful in debugging. I may have a lead on another, more readily accessible, page with exibits the same problem...looking in to it.
OS: Mac System 9.x → All
Hardware: Macintosh → All
Secondary test case turned out to be a bust. I'll keep looking...
what are the chances of getting this fixed for the 0.9.4 branch?
Whiteboard: [ETA ?]
Jamie, that might be difficult. Marc doesn't really have a testcase to work from (unless he's secretly a Datek customer) and I don't have the layout knowledge to debug it in a short period of time. Marc, if you have some ideas as to what might be causing this to fail, I'm certainly willing to attempt some remote debugging for you. Otherwise I have had one other thought as to how I might be able to put together a workable test case for you... I'll give that a shot this morning.
Updated ETA
Whiteboard: [ETA ?] → [ETA 10/1/2001]
I don't have a Datek account. I'm looking at the HTML source hoping to see some pattern that might account for the problem. One thing I am thinking is that the image is simply not coming in, or is coming in late and we are not then displaying it. Maybe a rule in hml.css like img { border: 3px solid red; } might help us to see if the image is even being layed-out. Just a shot in the dark... My hope lies in Brian coming up with a testcase, but I'll keep looking in the meantime.
heh - ignore that, the button is just a button (why did I think it was an image?)
Maybe because there is supposed to be an image to the right of the button? :) I pulled down the various css, js, and gif files referenced in the page and built my own little web page. Oddly enough, it basically seems to work... If I remove the preceeding "/" character from the src descriptor for the image I see the image and the button. With the "/" in place, the image doesn't appear but the button does. I have uploaded it to http://blues/users/bnesse/publish/DatekTest/ if you're curious. The only other thing I can think of is that the Datek server is secure...
Brian, one possible way to help is to bring up the page in viewer, then dump the content and frame models. I'd love to see if that button is getting a frame at all, if there is a coordinate problem, if the content includes it... Probably have to use WIndows for that though...
So far, I don't seem to be able to get to the login screen using viewer. Clicking on the OK button to login just does nothing. Sort of like viewer can't bring up the login dialog or something.
Do you have an SSL-enabled build? Another option is to dump the frames in the code in Mozilla. There is a static method on the nsIFrameDebug called RootFrameList and you can call that from almost anywhere to dump the current frame tree. If you can find a clever way to call it once the page is loaded, we might get the info we want. Maybe you can call it after every page load and then dredge through the output for the correct page?
Making nsbranch+
Keywords: nsbranchnsbranch+
I am building with psm. I will see if I can produce anything useful with nsIFrameDebug.
Attached output from RootFrameList(). I also generate the following 3 warnings when loading the page. ###!!! ASSERTION: getElementById(""), fix caller?: '!aElementId.IsEmpty()', file nsHTMLDocument.cpp, line 2534 ###!!! ASSERTION: getElementById(""), fix caller?: '!aElementId.IsEmpty()', file nsHTMLDocument.cpp, line 2534 ###!!! ASSERTION: bad parent frame pointer: 'parentFrame == (nsIFrame*)this', file nsContainerFrame.cpp, line 1102
Thanks for the frame dump - now if only we could get the content dump too. I am trying to compare the frame dump with the content in the testcase but it appears that something is different. In any case, I do see some possible problems. Look at the forms first: in the markup there is a FORM inside of the TABLE, before the TR. You can find this in the frame dump pretty easily too as it is the first form in the dump. Now look for the next form in the frame dump. It is also directiy under a TABLE, before a TR, but the markup does not show this form. Also, that form is the last one to appear before the series of hidden forms at the end of the page (4 forms each with 4 hidden fields). So, from the frame dump it looks like the forms that contains the button in question is missing totally. I also searched from the last SUP down looking for the form and button but could nto find it - also foudn some frames that I did not expect from teh markup I am using. Any chance we can get a more accurate page?
Unfortunately that page is generated. When you select Open Orders in the top frame, it does a <OPTION value="document.order.submit()">Open Orders. This causes it to spit out a generated page (the original contained my account number in half a dozen places). I can't get logged into Datek right now. Their server(s) don't appear to be responding. I will attempt to re-grab the source, but I don't expect it to look any different.
I finally got back into the Datek site. Now, unfortunately, I can't figure out how I grabbed the page I originally posted. Attaching the only thing I can get now.
Optimistic ETA of 10/5 set - still very little progress here in understanding the frame dump that Brian got.
Whiteboard: [ETA 10/1/2001] → [ETA 10/5/2001]
Brian, I'm looking at some code in Viewer that dumps the content model. Is it possible for you to put that snippet in your build where you dump the frame tree? It is pretty simple, check this link and tell me what you think: http://lxr.mozilla.org/seamonkey/source/webshell/tests/viewer/nsBrowserWindow.cpp#2565 I'd be happy to move that code into the Document too, for general use, like the RootFrameList method.
Yeah, that looks like it would be pretty straightforward to hack in... my stuff is in nsPresShell already... I'll see what I can do...
Grrr. After my build finally finished and I had a chance to test it last night it turned out that my pull from yesterday wouldn't render any Datek page past the login screen. I'll pull fresh this morning and try it again.
Attached file Content model dump
Thanks Brian - I foudn the button in the content model dump - trying to reconcile it with the frame dump now.
OK, the button in question is in the frame dump, but the frame dump is BEFORE the initial reflow (notice that the x,y,width,height values are all 0 for the frames). I started to question the style rules for the cancel button (class=cb) in case its visibility is changed by script or something, and that led me to tearing apart the content looking for script. I found this very interesting and suspicious script block in the content dump: <!-- //kluge if(!(is_nav5up||is_ie5up)) { if(isCancels) { var cancelString = ""; cancelString += "<FORM name=\"cbutton\">\n"; cancelString += "<input type=\"button\" value=\"Cancel checked orders"; if(isExpress) cancelString+= " immediately!"; cancelString += "\" name=\"cancelbutton\" class=\"cb\" onClick=\"document.cancel.submit()\">&nbsp;\n"; cancelString += "<a href=\"javascript:popWin('/help/noquicktog.htm','sorry',300,300,0,0)\" onClick=\"window.status='Learn more...'; return true;\"> <img align=\"absmiddle\" src=\"/images/quicktoggle.gif\" width=\"96\" height=\"21\" border=\"0\" alt=\"\"></a>\n"; cancelString += "</FORM>\n"; document.writeln(cancelString); } else { //major kluge. document.write("<SPAN ID=\"main_menu\" style=\"visibility:hidden\">"); document.write("<TABLE cellpadding=0 cellspacing=0 border=0>"); document.write("<FORM name=\"cbutton\">"); document.write("<TR class=menurow>"); document.write("<TD><input type=\"button\" name=\"cancelbutton\" class=\"cb\" onClick=\"document.cancel.submit()\"></TD>"); tdocument.write("<TD bgcolor=\"#ffffff\">&nbsp;</TD>"); document.write("<TD class=\"menubuttonmain\" onClick=\"cBombObj['sub_menu'].toggleVis();cBombObj['sub_menu'].manageChecked();window.status='Click to view or hide your Cancel options'; return false;\" onMouseOver=\"window.status='Click to view or hide your Cancel options'; return true;\" onMouseOut=\"window.status=''; return true\">"); document.write("<a href=\"#\" style=\"color:#003366;text-decoration:none\">QuickToggle</a>&nbsp;&nbsp;&nbsp;</TD>"); document.write("<TD class=\"menubutton\" align=center onClick=\"cBombObj['sub_menu'].toggleVis();cBombObj['sub_menu'].manageChecked();window.status='Click to view or hide your Cancel options';return false;\" onMouseOver=\"window.status='Click to view or hide your Cancel options'; return true;\" onMouseOut=\window.status=''; return true\">"); document.write("<a href=\"#\" class=\"menubuttonlink\">&plusmn;</a></TD>"); document.write("</TR>"); document.write("</FORM>"); document.write("<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD align=right colspan=2><SPAN id=\"sub_menu\" style=\"position:relative;visibility:hidden;\">&nbsp;</SPAN></TD></TR>"); document.write("</TABLE>"); document.write("</SPAN>"); } //--> the 'kluge' and 'major kluge' comments are pretty telling, and also I see that the cancel button is being monkey'd with here. My guess is that we have an evangelism issue here. Brian, what do you think? (sorry about the formatting of that script - it was a real mess in the content dump and I did my best to make it readable, but then pasting it into bugzilla messed it up further. I'll attach it as a text file.)
Attached file suspicious script...
In particular, notice this snippet: //major kluge. document.write("<SPAN ID=\"main_menu\" style=\"visibility:hidden\">"); This sets the span that contains the table that contains the cancel button to hidden. ack. Not sure if we are hitting that else block though, some more reverse-engineering of their script may be necessary unless we can open a dialog with their developer(s).
Whiteboard: [ETA 10/5/2001] → [ETA 10/5/2001] [PDT]
Component: Compositor → Layout
Priority: -- → P1
Target Milestone: --- → mozilla0.9.6
It is quite possible that we are ending up in that else block. In some of the html that I pulled down (and posted to my publish folder) I believe was the js which sets these variables. It appeared to me that the is_nav5up variable would be set if running Mozilla/Netscape6. I'll see if I can remember how to use the spoof stuff and see if I can convince it that I'm running I.E.
I was unable to get the button to appear by changing my user agent string. I used the following: pref("general.useragent.override", "MSIE/5.0 (Macintosh)"); Of course, I couldn't convince netscape.com that I wasn't using "Communicator 5.0" either. So I may just not know what I'm doing here...
From Marc's comment about the suspicious script which hides the cancel button, this bug really looks like an evangelism issue. Reassigning to Evangelism.
Assignee: attinasi → bclary
Status: ASSIGNED → NEW
Component: Layout → English: US
Product: Browser → Tech Evangelism
QA Contact: petersen → zach
Version: other → unspecified
if this is an evangelism issue, and is not a client fix, can we remove the nsbranch+?
removing keywords nsbranch+, topembed. I recommend that all queries related to releases depending on keywords etc, exclude the Tech Evangelism product since the Tech Evangelism product has nothing to do with what is actually going into the product Browser.
Keywords: nsbranch+, topembed
removing [PDT] as this is an evangelism issue.
Whiteboard: [ETA 10/5/2001] [PDT] → [ETA 10/5/2001]
site not available although www.datek.com is...
Summary: Cancel button doesn't appear on page → datek.com - Cancel button doesn't appear on page
Target Milestone: Nov → Dec
https://investment.datek.com/ is the investment site. You have to be logged in (and therefore a customer) to get there. You log in via http://www.datek.com/investcenter/login.html
Brian, since you are already a customer and I am not, I am assigning this bug to you. Write them a note telling them about the problem, then mark this bug assigned and set the milestone to the next calendar month for followup. If they refuse to fix the problem, then mark it wont fix.
Assignee: bclary → bnesse
Brian, I have contacted datek about this and bug 110085. I will keep you informed.
Datek has apparently finally fixed their source. This now works correctly.
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Verified 2002040303/WinXP
Status: RESOLVED → VERIFIED
Product: Tech Evangelism → Tech Evangelism Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: