uPortal IRC Logs-2013-05-14
[11:26:31 CDT(-0500)] <jgribonvald> hi
[11:26:53 CDT(-0500)] <EricDalquist> hi
[11:27:07 CDT(-0500)] <jgribonvald> is there someone who is aware about dlm and layouts
[11:27:10 CDT(-0500)] <jgribonvald> ?
[11:27:23 CDT(-0500)] <EricDalquist> somewhat
[11:27:28 CDT(-0500)] <EricDalquist> we can try to answer
[11:27:58 CDT(-0500)] <jgribonvald> thx Eric, so I'm trying to make a feature about a customized sidebare from dlm
[11:28:19 CDT(-0500)] <jgribonvald> to explain we use flyout nav + a custom sidebar
[11:29:30 CDT(-0500)] <jgribonvald> but the quicklinks feature isn't suitable for us as it doesn't lake "group" of listed channels
[11:29:43 CDT(-0500)] <jgribonvald> lake * make
[11:30:34 CDT(-0500)] <jgribonvald> so i make some modifications to publish special channels from dlm with folder names as groups
[11:31:18 CDT(-0500)] <jgribonvald> it's easy for me like that because we can publish easily new channels link to a targeted population
[11:31:49 CDT(-0500)] <EricDalquist> ok, I think I follow
[11:31:54 CDT(-0500)] <jgribonvald> for that I added a folder type named "sidebar"
[11:32:45 CDT(-0500)] <jgribonvald> in UserLayoutFolderDescription.java and IUserLayoutFolderDescription.java
[11:34:23 CDT(-0500)] <jgribonvald> after i modified the file columns.xsl to add a new xml structure for that and i modified a bit theme universality to suits
[11:34:49 CDT(-0500)] <jgribonvald> and finaly I published my dlm with folder's type as sidebar and it's working
[11:35:14 CDT(-0500)] <jgribonvald> but now I would like to doesn't show channels that users shouldn't see
[11:35:25 CDT(-0500)] <jgribonvald> and I'm looking for that
[11:35:27 CDT(-0500)] <jgribonvald>
[11:35:57 CDT(-0500)] <jgribonvald> is it in uportal-war/src/main/java/org/jasig/portal/layout/dlm/DistributedLayoutManager.java ?
[11:36:05 CDT(-0500)] <EricDalquist> I don't think I follow that last statement
[11:36:16 CDT(-0500)] <EricDalquist> also I need to know what version of uPortal you are working with
[11:36:25 CDT(-0500)] <jgribonvald> 4.0.12
[11:36:37 CDT(-0500)] <jgribonvald> snapshot
[11:37:25 CDT(-0500)] <EricDalquist> ok
[11:37:41 CDT(-0500)] <EricDalquist> so I don't follow what you mean when you say "but now I would like to doesn't show channels that users shouldn't see"
[11:39:09 CDT(-0500)] <jgribonvald> ok i would like to have in the xml layout structure only channels of type sidebar that the user can see, like it's done with other type like header, footer
[11:39:19 CDT(-0500)] <jgribonvald> but maybe I'm wrong
[11:40:05 CDT(-0500)] <EricDalquist> ah
[11:40:12 CDT(-0500)] <jgribonvald> i've seen in uportal-war/src/main/java/org/jasig/portal/layout/dlm/DistributedLayoutManager.java line 243 some things done for header and footer
[11:40:15 CDT(-0500)] <EricDalquist> so you want the DLM code to filter the contents of the folder?
[11:40:21 CDT(-0500)] <EricDalquist> that has your new type?
[11:40:26 CDT(-0500)] <jgribonvald> yes
[11:40:30 CDT(-0500)] <EricDalquist> hrm
[11:40:43 CDT(-0500)] <EricDalquist> I don't know DLM well enough to tell you exactly where that happe4ns
[11:41:00 CDT(-0500)] <EricDalquist> I'm assuming it probably happens during the generation of the ILF
[11:41:24 CDT(-0500)] <EricDalquist> let me open up my uPortal code
[11:41:24 CDT(-0500)] <jgribonvald> ok so I will test
[11:41:26 CDT(-0500)] <EricDalquist> and look for a minute
[11:41:55 CDT(-0500)] <jgribonvald> else is a such feature is interesting you ?
[11:42:05 CDT(-0500)] <EricDalquist> it is
[11:42:06 CDT(-0500)] <jgribonvald> to make a PR
[11:42:25 CDT(-0500)] <jgribonvald> but i don't know if it will work in master branch
[11:42:54 CDT(-0500)] <EricDalquist> master and 4.0 patches are the same for layouts right now
[11:43:05 CDT(-0500)] <EricDalquist> we haven't started on the layout manager refactoring coding yet
[11:43:18 CDT(-0500)] <jgribonvald> ok good so
[11:43:36 CDT(-0500)] <EricDalquist> so I'm opening up the project
[11:43:47 CDT(-0500)] <EricDalquist> and what I'm going to look for is where in DLM it calls into the permissions API
[11:43:53 CDT(-0500)] <EricDalquist> to determine if a user can render a portlet
[11:44:00 CDT(-0500)] <EricDalquist> that should point us to where that check is done
[11:44:44 CDT(-0500)] <jgribonvald> i think it's on the class that I pointed and around line 239
[11:45:18 CDT(-0500)] <jgribonvald> but I don't know if there is other things that are done after
[11:46:02 CDT(-0500)] <EricDalquist> another possibility is uportal-war/src/main/java/org/jasig/portal/layout/dlm/ILFBuilder.java:180
[11:46:22 CDT(-0500)] <EricDalquist> yeah
[11:46:25 CDT(-0500)] <EricDalquist> I'm guessing that is it
[11:46:43 CDT(-0500)] <EricDalquist> the ILF is the pristine DLM managed layout for a user
[11:47:02 CDT(-0500)] <EricDalquist> DLM takes all of the fragments the user can see
[11:47:05 CDT(-0500)] <EricDalquist> then merges them into the ILF
[11:47:08 CDT(-0500)] <EricDalquist> and does the filtering
[11:48:25 CDT(-0500)] <jgribonvald> thx I will watch on so and i will try to make a PR for a such FEATURE
[11:48:32 CDT(-0500)] <EricDalquist> sounds good
[11:50:02 CDT(-0500)] <jgribonvald> on an other hand I pushed some PR, so if you want some explanations don't hesitate to ask / comment
[11:50:15 CDT(-0500)] <EricDalquist> will do
[11:50:23 CDT(-0500)] <EricDalquist> I should be circling around to uPortal updates this week
[11:50:32 CDT(-0500)] <jgribonvald> https://github.com/Jasig/uPortal/pulls/jgribonvald
[11:50:55 CDT(-0500)] <jgribonvald> and there is one about virtual hosting
[11:51:03 CDT(-0500)] <EricDalquist> ok
[11:51:05 CDT(-0500)] <jgribonvald> that we use in our context
[11:51:08 CDT(-0500)] <EricDalquist> yeah
[11:51:11 CDT(-0500)] <EricDalquist> we actually do that too
[11:51:45 CDT(-0500)] <jgribonvald> yes but this PR is to be able to define a dlm per domain name for guest user
[11:51:53 CDT(-0500)] <EricDalquist> oh neat
[11:52:24 CDT(-0500)] <jgribonvald> after I don't know if it's the best way to do
[11:54:28 CDT(-0500)] <jgribonvald> as we added a profile based on serverName
[11:54:39 CDT(-0500)] <EricDalquist> O
[11:54:43 CDT(-0500)] <EricDalquist> I'll take a look at it
[11:55:06 CDT(-0500)] <jgribonvald> this were needed due to layout cache
[11:55:11 CDT(-0500)] <EricDalquist> yeah
[11:55:14 CDT(-0500)] <EricDalquist> that is the annoying part
[11:55:22 CDT(-0500)] <EricDalquist> the handling of caching for the guest user
[11:56:28 CDT(-0500)] <jgribonvald> yes, or the other way would be to define a guest user per domain, but we loose some feature for portlet who can detect only one guest user
[11:56:40 CDT(-0500)] <EricDalquist> yeah
[11:56:46 CDT(-0500)] <EricDalquist> part of the layout refactoring will be fixing that
[11:57:05 CDT(-0500)] <EricDalquist> with the new jpa/hibernate stuff and better caching frameworks there is no need to have such special handling for the guest user
[11:57:15 CDT(-0500)] <jgribonvald> ok nice so, but I think it's not for now
[11:57:18 CDT(-0500)] <EricDalquist> yeah
[11:57:21 CDT(-0500)] <EricDalquist> thats a long ways away
[11:57:29 CDT(-0500)] <jgribonvald> ok
[11:58:48 CDT(-0500)] <jgribonvald> on an other hand i have a question for you
[11:58:54 CDT(-0500)] <jgribonvald> about a feature
[11:59:54 CDT(-0500)] <jgribonvald> i've made a mail on the uportal-dev list initilized by drew from some talk
[12:00:10 CDT(-0500)] <jgribonvald> about delegating some portlet configuration
[12:02:47 CDT(-0500)] <jgribonvald> one of our need would be to give the permission to some users to customize preferences of some portlets in a fragment and to push there preference to audited users, without that these users have rights to modify portlet definition from portlet-admin portlet
[12:02:56 CDT(-0500)] <jgribonvald> do you think that would be possible ?
[12:03:12 CDT(-0500)] <jgribonvald> maybe I'm not clear
[12:04:30 CDT(-0500)] <EricDalquist> yeah
[12:04:32 CDT(-0500)] <EricDalquist> sorry
[12:04:36 CDT(-0500)] <EricDalquist> on a conference call now
[12:04:43 CDT(-0500)] <EricDalquist> so the infrastructure is there for that
[12:04:54 CDT(-0500)] <EricDalquist> but it would require a bit of new development
[12:05:03 CDT(-0500)] <EricDalquist> you'd have to create a new permission for this
[12:05:15 CDT(-0500)] <EricDalquist> and then update the portlet manager to be aware of that permission
[12:07:15 CDT(-0500)] <jgribonvald> ok but i can't see where to save "dlm preferences of the portlet"
[12:07:24 CDT(-0500)] <jgribonvald> in the layout structure ?
[12:07:32 CDT(-0500)] <EricDalquist> oh not portlet preferences?
[12:07:36 CDT(-0500)] <EricDalquist> you're talking about layout attributes?
[12:07:56 CDT(-0500)] <jgribonvald> our need would be for exemple with the CMS portlet
[12:08:26 CDT(-0500)] <jgribonvald> we would like to avoid to publish a new portlet definition to change only the text
[12:08:30 CDT(-0500)] <EricDalquist> ok
[12:08:36 CDT(-0500)] <EricDalquist> so that would be a portlet preference
[12:08:40 CDT(-0500)] <EricDalquist> on the portlet definition object
[12:08:42 CDT(-0500)] <jgribonvald> yes
[12:08:55 CDT(-0500)] <jgribonvald> but linked to fragment-layout
[12:09:08 CDT(-0500)] <EricDalquist> that is not possible
[12:09:14 CDT(-0500)] <EricDalquist> portlet definitions are global
[12:09:29 CDT(-0500)] <EricDalquist> portlet entities link a portlet definition to an instance of a portlet in a user's layout
[12:09:35 CDT(-0500)] <jgribonvald> ok so it can't be overriden ?
[12:09:41 CDT(-0500)] <EricDalquist> but there is nothing that ties a portlet to a fragment
[12:09:52 CDT(-0500)] <EricDalquist> not at that level
[12:09:59 CDT(-0500)] <jgribonvald> ok
[12:09:59 CDT(-0500)] <EricDalquist> you'd have to just publish difference instances of the portlet
[12:10:07 CDT(-0500)] <EricDalquist> and use the different instances in different fragments
[12:11:05 CDT(-0500)] <jgribonvald> ok so my plan B would be to define a portlet def as template with some attributes which could be defined by some users in creating a new portlet def
[12:13:08 CDT(-0500)] <EricDalquist> yeah so I see the value
[12:13:11 CDT(-0500)] <EricDalquist> hrm
[12:13:18 CDT(-0500)] <EricDalquist> give me ~ 20 mintues
[12:13:26 CDT(-0500)] <EricDalquist> and I might have some additional ideas
[12:14:14 CDT(-0500)] <jgribonvald> If you can i prefer to see that tomorrow it's a bit late in france now
[12:14:20 CDT(-0500)] <EricDalquist> ah right
[12:14:20 CDT(-0500)] <EricDalquist> yeah
[12:14:24 CDT(-0500)] <EricDalquist> stop by tomorrow
[12:14:26 CDT(-0500)] <EricDalquist> and we can chat about it
[12:14:42 CDT(-0500)] <jgribonvald> yes thanks a lot for your help
[12:14:46 CDT(-0500)] <EricDalquist> no problem
[12:15:01 CDT(-0500)] <jgribonvald> see you tomorrow so