Forums
Lawson Portal
Portal Logout Feature
Author
Messages
Carlotta McCormick
Basic Member
Posts: 7
6/2/2005 2:33 PM
We took advantage of Lawson's undocumented logout feature for the portal by uncommenting the <LOGOUT> button for portal in the portalrole script (a copied version of the default.xml). When Microsoft fixed issues with user authentication in IE 6.0 SP1, this logout feature no longer worked, and refused to clear the user cache.
Our company uses web-based clinical gateways, and it is imperative that we provide a logout feature that actually clears the user cache for the Lawson portal. Once they "logout", obviously the next person that clicks on the link is taken directly to the first logged-in user's personal information. Lawson's stance is that Microsoft broke our use of this undocumented feature and they will not provide any logout capabilities--it's our problem.
Do you or any of your users know of a way to fix this? We are a Lawson-hosted facility, so whatever it is has to be done on the client side or a script that we can modify every time there's an update.
Appreciate any help you or other users can give!
Aqua_frog
New Member
Posts: 2
6/3/2005 2:43 PM
It maybe the wrong answer, but it is the only 1 I know ... so far {i am a Lawson newbie }
try an IOS cache refresh? Try it OnExit from the program and that should clear ALL the cache.
My gut sez this maybe a nuclear bomb to your small bug, but as I mentioned before, it is the only 1 I know.
syntax:: http://[servername]/servlet/IOSCacheRefresh
Your Milage May Vary...but let me know.
Brian Boyd
Basic Member
Posts: 4
7/14/2005 9:45 PM
Take a look at this and see if it helps:
http://www.schronce.net/l...on/portal_logout.txt
Carlotta McCormick
Basic Member
Posts: 7
7/15/2005 5:39 PM
Thanks for replying. I did see the portal logout fix in the latest version of the guru newsletter. It works slow, but great! Now if I could just get the window to close after logout instead of going back to the login page.....
Brian Boyd
Basic Member
Posts: 4
7/25/2005 3:35 PM
If you figure that one out, please share it with the Group!
Phillip Feller
Basic Member
Posts: 12
1/17/2006 2:12 PM
There is a way to close the window after logout, but it requires a minor trick. You must redirect to a page that immediately closes itself.
You redirect to a new page by replacing the parent.location.reload() call with location.replace("closewindow.html"). (Assuming that you have commented out the 401 status conditional, because the httpRequest no longer returns a 401.)
Create a new page named closewindow.html that closes itself through its onLoad function:
Phillip Feller
Basic Member
Posts: 12
1/17/2006 2:16 PM
My attempt to include HTML in the previous post obviously didn't work. I'll try again without the angle barckets around the HTML tags (remember to put them back when creating the page):
html
body onLoad="this.focus();self.opener=this;self.close();"
/body
/html
tchang
Basic Member
Posts: 5
3/27/2006 5:01 PM
Hi, Can you make the logout feature work under Netscape? Under IE, it works fine. However, the LOGOUT button does not even show up under Netscape.
Thanks,
Tony
John Henley
Senior Member
Posts: 3348
3/28/2006 1:40 AM
No, it only works for IE.
Phillip Feller
Basic Member
Posts: 12
3/28/2006 5:24 PM
In theory you could make it work for Netscape, but it would require modifications to /lawson/portal/v3.js. Removing the "if(logout.length>0 && lawsonPortal.browser.isIE)" conditional ought to make logout button appear. You would then need to experiment with ways to perform the logout: Lawson's kludgy method of passing invalid authentication credentials? the appropriate Netscape API for clearing credentials (nsIHttpAuthManager?)? closing the browser window?
tchang
Basic Member
Posts: 5
3/31/2006 5:39 PM
Thanks for the clues. Your suggestion led me to the following findings:
Under Netscape, in order to modify users' browser settings, I have to kind of opening up the security door to allow my scripts to work. There are two ways to achieve that:
A: Using Codebase support
1. Modify the pref.js file - which I do not have success to see it takes effect, after I change it. e.g, user_pref("signed.applets.codebase_principal_support", true);
2. Modify the configuration and set signed.applets.codebase_principal_support to true. This does work for me. This is important. It allow my script to work otherwise exception will be thrown.
B: Signed Script
This is involving using NSS Signing tool to associating your script and Jar file containing your certificate, by specifying
tag in your script
After implemented either of the above method, the API such as
netscape.security.PrivilegeManager.enablePrivilege("UniversalPreferencesRead");
to manipulating the history object, for example. or
user_pref("capability.principal.myapp.granted","UniversalXPConnect");
to clear browser cache, for example.
Now I know why Lawson excludes the Logout button for Nescape!
Hope above info helps someone in my shoe to solve his/her problems.
Thanks and regards.