掲示板

Directory portlet improvements

thumbnail
14年前 に Janne Hietala によって更新されました。

Directory portlet improvements

Junior Member 投稿: 97 参加年月日: 09/06/16 最新の投稿
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
thumbnail
14年前 に Jorge Ferrer によって更新されました。

RE: Directory portlet improvements

Liferay Legend 投稿: 2871 参加年月日: 06/08/31 最新の投稿
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.
13年前 に James McGovern によって更新されました。

RE: Directory portlet improvements

Junior Member 投稿: 68 参加年月日: 10/06/13 最新の投稿
I like the notion of being able to "hide" certain users from search. This should be reflected in the user model.
thumbnail
13年前 に Marko Ruohoranta によって更新されました。

RE: Directory portlet improvements

New Member 投稿: 2 参加年月日: 10/08/24 最新の投稿
Have you released it yet?
thumbnail
13年前 に Janne Hietala によって更新されました。

RE: Directory portlet improvements

Junior Member 投稿: 97 参加年月日: 09/06/16 最新の投稿
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.
12年前 に Bharath Kumar Reddy Gadikota によって更新されました。

RE: Directory portlet improvements

New Member 投稿: 1 参加年月日: 11/04/19 最新の投稿
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.
12年前 に Scott Steven によって更新されました。

RE: Directory portlet improvements

New Member 投稿: 4 参加年月日: 11/03/14 最新の投稿
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.
thumbnail
12年前 に Jorge Ferrer によって更新されました。

RE: Directory portlet improvements

Liferay Legend 投稿: 2871 参加年月日: 06/08/31 最新の投稿
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.
thumbnail
12年前 に Hitoshi Ozawa によって更新されました。

RE: Directory portlet improvements

Liferay Legend 投稿: 7942 参加年月日: 10/03/24 最新の投稿
Right, in most of our installation, I'm disabling users' private pages.
thumbnail
12年前 に Stian Sigvartsen によって更新されました。

RE: Directory portlet improvements

Regular Member 投稿: 103 参加年月日: 10/08/27 最新の投稿
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
  • 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.
  • 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