Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-26625

directtool URL does not work correctly in PDA portal

    XMLWordPrintable

    Details

    • 10 status:
      Resolved

      Description

      Links that are made with directtool do not work correctly in the PDA portal. The user is taken to the full portal instead.

      Steps to reproduce

      1. Log in from a mobile device.
      2. Select a site.
      3. Select Message Center Notifications.
      4. Select 'New Messages' link or 'New in Forums' link.

      Expected behaviour
      User is taken to the correct place in the relevant tool, within the PDA portal.

      Actual behaviour
      User is taken to the correct place in the relevant tool, however they are no longer in the PDA portal, they are in the full portal.

      The problem
      The DirectToolHandler handles the URL correctly, however then calls portal.forwardPortal which is implemented as SkinnableCharonPortal.forwardPortal. In this method is the following:

      String portalPath = ServerConfigurationService.getString("portalPath", "/portal");
      String portalPlacementUrl = portalPath + getPortalPageUrl(p);
      res.sendRedirect(portalPlacementUrl);
      

      This means that the URL will always be prefixed by /portal as that is the URL that is configured in sakai.properties. It does not take into account that the specific user might be on the PDA portal.

      Suggested solution
      Add a check in here to see if the user is on the PDA portal and add /pda/ in between, so it would end up looking like:

      String pdaFragment = someLogic; // will be /pda or null
      String portalPlacementUrl = portalPath + pdaFragment + getPortalPageUrl(p);
      

      This is a continuation of SAK-22089.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  steve.swinsburg Steve Swinsburg
                  Reporter:
                  steve.swinsburg Steve Swinsburg
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Git Source Code