Are you sick and tired of having to run Internet Explorer just to
enter your timesheet, because the remarks page
seems to freeze in Firefox? Well, I think I’ve figured out how
to make that page work right in Firefox, thanks in large part to a
great new book called
FireFox Hacks
(which you can probably get at almost any bookstore, or online at
Amazon
or Barnes & Noble).
How do you fix it? Just add these three lines to your user.js
file (using Notepad or any other text editor):
user_pref(“capability.policy.policynames”, “planviewremarks”);
user_pref(“capability.policy.planviewremarks.sites”, “http://planview.infotechfl.com”);
user_pref(“capability.policy.planviewremarks.Location.reload”, “noAccess”);
This creates a new security policy called planviewremarks,
makes that policy apply to our Planview site, and turns off the ability
to access the Location.reload method, which is
what’s being used to force a page reload. This might break other
things in Planview, and there might be a more specifically focused way to
fix this problem, but so far this is working for me.
By the way, to find your user.js file, open your C: drive,
change to “Documents and Settings”, then your user name, then
“Application Data”, then Mozilla, Firefox, Profiles, then select
what is probably the only subdirectory (which will have a weird
name). user.js goes in this folder, and you can edit it
(or create it if it’s not there yet) using any text editor, such
as Notepad.
What’s Causing the Problem?
A bug in the Javascript code on the Planview remarks web page.
I know that some people think that Planview just isn’t supposed to
work under Firefox, but it really should. The vendor even told
us so. There are a few functions used by project and resource managers
that use ActiveX, which requires Internet Explorer, but everything
most of us use should work on any recent browser. The remarks
bug is just that: a bug in Planview.
The remarks page includes some code that runs automatically when
the page is loaded in your browser. I can’t understand what the
purpose of the code on the page is, but I know what it’s doing:
examining cookies, and reloading the page if it doesn’t like what
it finds.
But the script doesn’t seem to change anything about the cookies,
so when the page reloads, the automatic code runs again, and does
the exact same thing, forcing the page to reload. Again. And
again. And again, and again, and again. Forever, so quickly that
you don’t have time in between reloads to do anything with the
browser.
Restricting access to the Location object’s
reload method stops any reloads from
happening, so you can go ahead and just use the page normally.