Another route to go would be to use a single theme, and then have XSL logic
that changes the behavior of item-view, depending on that metadata value.
In my theme I've been changing the display behavior depending on the
mimetype of the bitstreams (audio, video, document), as well as metadata
values, ex ds.firstpage.side=left [2] alters the bookreader to have a the
first page of a scanned book display on the left side of a bookreader spine.

[1]
https://github.com/LongsightGroup/DSpace/blob/0f246b859df06cdd539f87896cca1635fffcafd2/dspace-xmlui/src/main/webapp/themes/mirage2/xsl/aspect/artifactbrowser/item-view.xsl#L908
[2]
https://github.com/LongsightGroup/DSpace/blob/longsight-4_x/dspace-xmlui/src/main/webapp/themes/mirage2/xsl/aspect/artifactbrowser/item-view.xsl#L879

I'm longing to add a Collection Configuration page, where you could add
some configuration values to a collection, and then have the theme change
actions based on that. i.e. collection.map.show = true

________________
Peter Dietz
Longsight
www.longsight.com
pe...@longsight.com
p: 740-599-5005 x809

On Mon, Apr 13, 2015 at 1:51 PM, Mark Diggory <mdigg...@atmire.com> wrote:

> John,
>
> Seems sensible, what would be ideal is if we could arrive at some sort of
> language for the field that would allow for matching on other criteria.
>
> Some days I wonder why this isn't just in the cocoon sitemap, xmlui.xconf
> is very limiting and unwieldy. Alternatively, making the matcher into
> Service and giving it a spring based configuration with matching rules
> would also be extremely extensible without needing special "xmlui.xconf
> parsing code" that you'd need to extend/alter to create your own config
> attributes.
>
> Mark
>
>
>
>
> On Mon, Apr 13, 2015 at 10:27 AM John Preston <byhisde...@gmail.com>
> wrote:
>
>> So if I add some rule patterns to the xmlui.xconf (regex=? section) that
>> dont break the existing ones, and add code to ThemeMatcher (lines 105 to
>> 120+) that use the uri to instantiate the dspace object and find some
>> metadata and match to the rule pattern (similar to the checking handles
>> code) then I should be good to go.
>>
>>
>> John
>>
>> On Mon, 13 Apr 2015 at 11:18 Mark Diggory <mdigg...@atmire.com> wrote:
>>
>>> John,
>>>
>>> You could add a theme match on Item handle. We have overridden
>>> ThemeMatcher in other projects and extended it with additional support for
>>> features such as requested domain name. I can see it feasible to extend it
>>> to support checking for specific metadata fields in the 5.x DSpaceObject
>>> metadata.
>>>
>>>
>>> https://github.com/DSpace/DSpace/blob/master/dspace-xmlui/src/main/java/org/dspace/app/xmlui/cocoon/ThemeMatcher.java
>>>
>>> Cheers,
>>> Mark
>>>
>>>
>>> On Mon, Apr 13, 2015 at 9:12 AM John Preston <byhisde...@gmail.com>
>>> wrote:
>>>
>>>> Hi All, Can anyone say if it is possible within DSpace 5.x codebase to
>>>> install a different xmlui theme based on a dc.type similar to what is done
>>>> to install a theme per collection or community, or if not then how easy it
>>>> would be for me to add a hack or code to implement such a beast.
>>>>
>>>> John
>>>>
>>>
>>>> ------------------------------------------------------------------------------
>>>> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
>>>> Develop your own process in accordance with the BPMN 2 standard
>>>> Learn Process modeling best practices with Bonita BPM through live
>>>> exercises
>>>> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual-
>>>> event?utm_
>>>>
>>>> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF_______________________________________________
>>>> Dspace-devel mailing list
>>>> Dspace-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/dspace-devel
>>>>
>>>
>
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live
> exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual-
> event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> _______________________________________________
> Dspace-devel mailing list
> Dspace-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/dspace-devel
>
>
------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
Dspace-devel mailing list
Dspace-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-devel

Reply via email to