Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save svendahlstrand/7339522 to your computer and use it in GitHub Desktop.
Save svendahlstrand/7339522 to your computer and use it in GitHub Desktop.
Anpassade vyer i Social Collaboration-mallar.

Anpassade vyer i Social Collaboration-mallar

Om du använder Social Collaboration i SiteVision och vill visa viss information för besökaren om den tittar på sin egna profil eller är administratör i gruppen hon besöker ska du läsa vidare. Detta kan du enkelt sätta upp med en JavaScript-anpassad vy. Här nedan följer instruktioner - det finns även ett par skärmdumpar som visar hur det ska se ut.

Besökarens egna profil

  1. Gå till profilmallen.
  2. Skapa en anpassad vy - läs hur det går tillväga i SiteVisions dokumentation.
  3. Välj ett lämpligt namn.
  4. Den anpassade vyn ska vara av typen JavaScript.
  5. När du kommer till steg två, klistra in skriptet nedan.
  6. Klart! Nu är det bara att lägga ditt innehåll i den anpassade vyn.

JavaScript som klistras in

var profilePageUtil = (function (request) {
  var utils = request.getAttribute('sitevision.utils');
  var portletContextUtil = utils.getPortletContextUtil();
  var propertyUtil = utils.getPropertyUtil();

  return {
    isProfilePageForCurrentUser: function () {
      var currentUserIdentity = portletContextUtil.getCurrentUserIdentity();
      var currentUserIdentityId = propertyUtil.getString(currentUserIdentity, 'jcr:uuid');
      var identity = request.getParameter('identity');

      return currentUserIdentityId.equals(identity) || !identity;
    }
  };
}(request));

result = profilePageUtil.isProfilePageForCurrentUser();

Besökaren är gruppadministratör

  1. Gå till gruppmallen.
  2. Skapa en anpassad vy - läs hur det går tillväga i SiteVisions dokumentation.
  3. Välj ett lämpligt namn.
  4. Den anpassade vyn ska vara av typen JavaScript.
  5. När du kommer till steg två, klistra in skriptet nedan.
  6. Klart! Nu är det bara att lägga ditt innehåll i den anpassade vyn.

JavaScript som klistras in

result = (function () {
  var utils = request.getAttribute('sitevision.utils');
  var portletContextUtil = utils.getPortletContextUtil();
  var userFactory = utils.getUserFactory();
  
  var currentUserIdentity = portletContextUtil.getCurrentUserIdentity();
  var currentUserIdentityWrapper = userFactory.getUserIdentityWrapper(currentUserIdentity);
  var currentPage = portletContextUtil.getCurrentPage();
  
  return currentUserIdentityWrapper.isAdminOf(currentPage);
}());
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment