Portal Logout Feature

 10 Replies
 0 Subscribed to this topic
 13 Subscribed to this forum
Sort:
Author
Messages
Carlotta McCormick
Basic Member
Posts: 7
Basic Member
    We took advantage of Lawson's undocumented logout feature for the portal by uncommenting the 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
    New Member
      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
      Basic Member
        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
        Basic Member
          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
          Basic Member
            If you figure that one out, please share it with the Group!
            Phillip Feller
            Basic Member
            Posts: 12
            Basic Member
              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
              Basic Member
                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
                Basic Member
                  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
                  Posts: 3353
                    No, it only works for IE.
                    Thanks for using the LawsonGuru.com forums!
                    John
                    Phillip Feller
                    Basic Member
                    Posts: 12
                    Basic Member
                      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
                      Basic Member
                        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.