Combination View Flat View Tree View
Threads [ Previous | Next ]
toggle
Janne Hietala
Directory portlet improvements
March 26, 2010 4:34 AM
Answer

Janne Hietala

Rank: Junior Member

Posts: 86

Join Date: June 16, 2009

Recent Posts

Hi all,

We've started to develope Liferay features as addition to our own customer project development. One of our projects has been to implement requested improvements to Directory portlet. This proposal can be found at Liferay wiki under Directory portlet proposals.

This functionality is addition to current core liferay directory portlet. Usually when we make customization to the portlet we dont want to use ext-environment, but we would like to separate core portlet as deployable independent portlet. This is easier said than done. We've managed to do an way where you can have core portlet as deployable war / webapp, but it still depends on Liferay core libraries. This we can have both versions of the portlet available without ext-environment.

We've currently implemented following features / proposals:
-Portlet scope - you can create custom filters which directory searching and listing applies to (organisations, groups etc)
-Basic sorting by columns - you can choose default sorting options from preferences
-Configure user information - you can configure what user information is shown in search columns
-Make portlet public - you can set directory to be searchable from guest pages
-Search options - you can select what user attributes are available in advanced search
-Set some users invisible - you can choose users which are not shown in search

This portlet is ongoing some testing and refactoring code to Liferay guidelines. We will be releasing this contribution as open source for free use.

I will keep this thread updated of our development progress and releases. If someone at Liferay is intrested of this contribution, please feel free to contact me. Also any suggestions and feedback is highly appreciated!

Best regards,
Janne Hietala
Consultant, partner
Arcusys Oy
+358 (0) 40 831 42 45
janne.hietala(at)arcusys.fi
Jorge Ferrer
RE: Directory portlet improvements
March 26, 2010 8:33 AM
Answer

Jorge Ferrer

LIFERAY STAFF

Rank: Liferay Legend

Posts: 2756

Join Date: August 31, 2006

Recent Posts

Hey Janne,

That sounds very interesting, I've been wanting to do several of those changes for a long time.

If you want to contribute it back to Liferay please follow the instructions outlined here: http://www.liferay.com/web/guest/community/wiki/-/wiki/Main/How+to+contribute+to+Liferay

In fact the most important recommendation would be to break down the improvements in small pieces. Start with one of the items you list and send a patch that only includes that part. That way you'll get used to the process of contributing and the code review rules.
James McGovern
RE: Directory portlet improvements
June 23, 2010 6:30 AM
Answer

James McGovern

Rank: Junior Member

Posts: 69

Join Date: June 13, 2010

Recent Posts

I like the notion of being able to "hide" certain users from search. This should be reflected in the user model.
Marko Ruohoranta
RE: Directory portlet improvements
August 24, 2010 5:44 AM
Answer

Marko Ruohoranta

Rank: New Member

Posts: 2

Join Date: August 24, 2010

Recent Posts

Have you released it yet?
Janne Hietala
RE: Directory portlet improvements
August 26, 2010 3:58 AM
Answer

Janne Hietala

Rank: Junior Member

Posts: 86

Join Date: June 16, 2009

Recent Posts

Marko Ruohoranta:
Have you released it yet?


There is current version on our github. We will be releasing source code there as well shortly. http://github.com/arcusys/arcusys-directory

If you have any implementation specific questions or want to customize it to your needs please feel free to contact me janne.hietala(at)arcusys.fi. We're located in Helsinki and Joensuu.
Bharath Kumar Reddy Gadikota
RE: Directory portlet improvements
July 12, 2011 7:56 PM
Answer

Bharath Kumar Reddy Gadikota

Rank: New Member

Posts: 1

Join Date: April 19, 2011

Recent Posts

Hi,

This portlet is not getting deployed in Liferay version 6.0.6, can you help me to fix this problem.

It is working fine for liferay version 5.2.3.

Thanks in Advance.
Scott Steven
RE: Directory portlet improvements
January 4, 2012 4:24 AM
Answer

Scott Steven

Rank: New Member

Posts: 4

Join Date: March 13, 2011

Recent Posts

The most basic need is to have the the listing have a link to a users public page. Right now the portlet is useless to me and causes more trouble by users asking why it can't do this simple thing.
Jorge Ferrer
RE: Directory portlet improvements
January 9, 2012 4:46 AM
Answer

Jorge Ferrer

LIFERAY STAFF

Rank: Liferay Legend

Posts: 2756

Join Date: August 31, 2006

Recent Posts

The reason is that since the portlet is part of the portal framework it cannot assume that the user has public pages. The extended directory that comes with Social Office for example does have such a link because Social Office does force each user to have a personal page.

It is one of the challenges of being as generic as possible while still being usable out of the box.
Hitoshi Ozawa
RE: Directory portlet improvements
April 22, 2012 5:07 AM
Answer

Hitoshi Ozawa

Rank: Liferay Legend

Posts: 7990

Join Date: March 23, 2010

Recent Posts

Right, in most of our installation, I'm disabling users' private pages.
Stian Sigvartsen
RE: Directory portlet improvements
April 22, 2012 8:38 AM
Answer

Stian Sigvartsen

Rank: Junior Member

Posts: 97

Join Date: August 27, 2010

Recent Posts

This is a really interesting point. I completely agree that you should not make any assumptions when developing portlets about what functionality is available to the user on the portal it is deployed to. In this case the public pages feature. If you can't make a portlet generic then you might as well just develop standard web apps that tend to have functionality more tightly coupled and that's ok. I would challenge statements that portlets are "generic" if they are using the Liferay API without a broker service in the middle though. After all, these portlets would not function on another portal anyway.

I think that if IPC eventing were to be introduced into Liferay's standard portlets then meeting Scott's "basic" requirement of linking to a user's public page could be met in a loosely coupled, generic fashion by
  1. The standard Directory portlet publishing an event to say a user has been selected and providing identity information. For example, the eventing payload might be XML with an "UserID" element in a "http://liferay.com" namespace. This then is extendable to cover identity information relevant to other applications through use of different namespaces.
  2. A custom Liferay portlet processing the event, utilising the Liferay API to discover if the selected user has a public page. If so, it would render a "click here to go to public page" or similar link.

The approach above compartmentalises the "public pages" requirement into a separate portlet, hence leaving the Directory portlet more generic and without making any assumptions. It would also possible to extend the approach to display user information from other applications. And long term there could even be an IPC hook type releases to enable you to extend/modify the payload of events with auxiliary information to make it easier to communicate with other non-Liferay portlets.

Jorge, it would be great to hear your thoughts on this idea.

-Stian