Small R8 bug (enhancement?) with Rendering HTML
A couple of disclaimers… 1) We’re in the middle of upgrading to R8. Some of our mail servers have been upgraded but none of our production application servers have the new version yet. 2) This is an old (2001) application that was written for the web. I had no part of the initial development.
I discovered a small bug in the rendering of HTML in R8. It was discovered when a user was opening forms sent to a shared mailbox on an R8 server.
The Problem
Lotus Notes R8 was overlapping fields when rendering a table in the browser.
Here is what the user saw on an R8 server:

Here is what it looks like in R6:

The Cause
Spanned table cells/rows. In R8 (or possibly R7) Lotus decided it would help us out by rendering empty table rows (TR tags) with a style of “display:none.” Unfortunately, this affects rows that are being used by the ROWSPAN tag.
Here are the merged cells in the Notes Designer:

Here are the split cells:

In the browser (both versions) Notes tries to render the tables with a series of COLSPAN and ROWSPAN tags to render the table exactly the way it is displayed in the designer.
Here is the HTML from the R6 version:
<tr valign="top"><td width="50%" rowspan="4" colspan="2">2.<font color="#FF0000"> Company #: (3 digits)</font> <font color="#0000ff">
<input name="CompanyNumber" value="" size=5></font></td><td width="50%" rowspan="4" colspan="2"><font color="#FF0000">Cost Center #: (7 digits)</font><font color="#0000ff">
<input name="CenterNumber" value="" size=10></font></td></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr valign="top"><td width="25%"><img src="/icons/ecblank.gif" border="0" height="1" width="1" alt=""></td><td width="75%" colspan="3"><div align="right"><font color="#FF0000">Phone Number:</font>(<font color="#0000ff">
<input name="PhoneArea" value="" size=3 maxlength=3></font> ) <font color="#0000ff">
<input name="PhonePrefix" value="" size=3 maxlength=3></font> -<font color="#0000ff">
<input name="PhoneSuffix" value="" size=4 maxlength=4></font></div></td></tr>
<tr valign="top"><td width="25%"><img src="/icons/ecblank.gif" border="0" height="1" width="1" alt=""></td><td width="75%" colspan="3"><div align="right"><font color="#FF0000">Fax Number:</font>(<font color="#0000ff">
<input name="FaxArea" value="" size=3 maxlength=3></font> ) <font color="#0000ff">
<input name="FaxPrefix" value="" size=3 maxlength=3></font> -<font color="#0000ff">
<input name="FaxSuffix" value="" size=4 maxlength=4></font></div></td></tr>
Here is the HTML from the R8 version:
<tr valign="top"><td width="50%" rowspan="4" colspan="2">2.<font color="#FF0000"> Company #: (3 digits)</font> <font color="#0000ff">
<input name="CompanyNumber" value="" size=5></font></td><td width="50%" rowspan="4" colspan="2"><font color="#FF0000">Cost Center #: (7 digits)</font><font color="#0000ff">
<input name="CenterNumber" value="" size=10></font></td></tr>
<tr style="display: none"></tr>
<tr style="display: none"></tr>
<tr style="display: none"></tr>
<tr valign="top"><td width="25%"><img width="1" height="1" src="/icons/ecblank.gif" border="0" alt=""></td><td width="75%" colspan="3"><div align="right"><font color="#FF0000">Phone Number:</font>(<font color="#0000ff">
<input name="PhoneArea" value="" size=3 maxlength=3></font> ) <font color="#0000ff">
<input name="PhonePrefix" value="" size=3 maxlength=3></font> -<font color="#0000ff">
<input name="PhoneSuffix" value="" size=4 maxlength=4></font></div></td></tr>
<tr valign="top"><td width="25%"><img width="1" height="1" src="/icons/ecblank.gif" border="0" alt=""></td><td width="75%" colspan="3"><div align="right"><font color="#FF0000">Fax Number:</font>(<font color="#0000ff">
<input name="FaxArea" value="" size=3 maxlength=3></font> ) <font color="#0000ff">
<input name="FaxPrefix" value="" size=3 maxlength=3></font> -<font color="#0000ff">
<input name="FaxSuffix" value="" size=4 maxlength=4></font></div></td></tr>
Notice the <tr style="display: none"></tr> tags? I am no HTML expert but it seems to cause issues with the ROWSPAN for cost center.
The Solution
We’re screwed. Seriously. Only testing will discover these strange renderings. I fixed the problem above by deleting the three unnecessarily merged rows. Hopefully, this was a freak occurance but be aware of how R8 is rendering your HTML.
You know your blog is going downhill when…
You link to the Euphemism Generator.
Ferris Bueller’s Day Off
I don’t get sucked into YouTube very often but when I saw a link for a Re-cut trailer for Ferris Bueller’s Day Off using music from Requiem for a Dream I had to watch. It’s amazing. (via Jason Kottke)
Lotus Notes and the iPhone
I hope that a good night’s rest has allowed most of you to think a bit more clearly about the issue of IBM and the iPhone.
I am not a consultant. I work for a corporation (a rather large financial institution). I have worked for at most (if not all) of the large Lotus Notes shops in my area (all of which are financial/insurance institutions).
Most of the Lotus Notes shops I know of are large. They are typically insurance companies, banks, health institutions, etc. Do you really want the guardians of your private data connecting their toy iPhone to the corporate network? They lock PC’s down to the point where you cannot connect a palm pilot, use a thumbdrive, or even write to a CD/DVD. They are not going to allow iTunes and 32gb ipod/iphones. You (as the consumer) should be relieved that we take your data and privacy seriously.
Our people get Blackberries. Blackberries without a camera. These Blackberries are so locked down it is not even fun to have one. It checks mail and calendar and it’s a phone too. The CEO with an iPhone probably carries his or her blackberry as their glorified pager. I’m guessing the two will never meet and the CEO is smart enough to know why.
Should IBM invest resources into writing cool apps for the iPhone? I have offered 100 times to write applications for our corporate Blackberries. I offer up applications as simple as the corporate directory to as complex as a pipeline application. Nobody wants it.
I’m sorry you consultants can’t happily sync your Lotus Notes calendar to your iPhone. But I am not sorry enough to take resources away from anything else that Lotus is doing to try and gain marketshare by making their software better, faster, and cheaper than the competition.
Links 6-3-2008
- Study: .gov web sites should focus on RSS, XML—not redesigns
- Age of Conan’s incredible shrinking breasts - No… not Arnold’s…man-b00bs.
- This job posting doesn’t bode well for Lotus Notes. Ideally you will have Lotus Notes and SharePoint experience and have been involved in the development or migration of Lotus notes databases
- Adobe Buzzword - Adobe’s answer to the web office
Links 6-2-2008
- Yahoo! Design Stencil Kit - Great set of stencils for UI prototyping and design. (via Mike Gunderloy)
- 50 Mostly Immature and Hurtful Ways to Leave Your Lover - 31. Two words: text message.
- Penelope Trunk: to be a good manager: Be generous - Great blog about managing others. (PT is from Madison too… I think)
- Best Buy Tests Free Electronics Recycling Program in 117 Stores
