Hi Joao,
Joao Henrique Silva Santos wrote:
Finally, even a panel which uses the standard
panelheader does not
behave properly.
Does anybody have a possible explanation / common problems?
I am not able to reproduce what you are describing. The macro works fine
for me. I've modified it a bit. Perhaps it is clearer now. See this...
#set($initialState= "collapsed")
#set($alternativeState="expanded")
#macro(panelheaderc $title)
#set($cookieName = "${context.user}_${panel}")
#set($expanded = $initialState)
#set($expanded = $xwiki.getUserPreferenceFromCookie($cookieName))
## Note: We pass the Panel name as an HTML class attribute so that it's
possible to style
## the Panels selectively using CSS.
#set ($specialClassAttribute = "")
#if ($paneldoc && $paneldoc != "")
#set ($specialClassAttribute =
$util.convertToAlphaNumeric($paneldoc.name))
#end
<div class="panel $expanded $specialClassAttribute">
<h5 class="xwikipaneltitle" onclick="if(eltHasClass(this.parentNode,
'$initialState')) createCookie('$cookieName','$alternativeState',
'');
else eraseCookie('$cookieName');
togglePanelVisibility(this.parentNode);">$title</h5>
<div class="xwikipanelcontents">
#end
Initial state can be easily moved to each panel content. Alternative
state can be easily set with a if-else-end structure. I am falling while
evaluating the value of $initialState, but this is only a matter of
looking for the right syntax.
If you are using a modified macros.vm including the customized macros, I
am not able to figure out any problem other than a malfunction at your
browser level. Have you tried with several browsers from the same box?
Could you try this version I am proposing? It works fine here.
But if you are using a #includemacros("macrosFile") statement, it could
be a matter of where you use it. I don't know how to put it this macro's
call to affect the whole site without modifying macro.vm. I don't know
if this is possible or we must include it in all and any documents
needing the macros included there. I will do some more research prior to
posting a question about this. Any input will be welcome!!!! Thanks.
Best,
Ricardo
--
Ricardo RodrÃguez
Your EPEC Network ICT Team