On Jun 13, 2012, at 2:39 PM, Anca Luca wrote:

> On 06/13/2012 01:52 PM, Raluca Stavro wrote:
>> Hi,
>> 
>> On Wed, Jun 13, 2012 at 2:15 PM, Vincent Massol<vinc...@massol.net>  wrote:
>> 
>>> On Jun 13, 2012, at 12:44 PM, Raluca Stavro wrote:
>>> 
>>>> I'm resending this mail by using the right subject pattern.
>>>> 
>>>> Hello,
>>>> 
>>>> I am trying to upgrade an old XEM to 3.5.1.
>>>> In this XEM there are some custom panels which have been converted to 2.0
>>>> syntax and contain code like this:
>>>> 
>>>> {{velocity}}
>>>>  {{html}}
>>>>    #panelheader("...")
>>>>    ...
>>>>    #panelfooter()
>>>>  {{/html}}
>>>> {{/velocity}}
>>>> 
>>>> Because since 2.7.2 panel macros were converted to 2.0 syntax, because
>>>> panel macros from inside macros.vm were modified by calling {{html}} wiki
>>>> macro and because we can't use nested {{html}} macros without wiki="true"
>>>> parameter, I don't know how to fix this issue besides modifying panel
>>> code.
>>>> This XEM has more than 70 wikis and this I can't just modify all custom
>>>> (converted to 2.0 syntax) panels manually.
>>>> Is there a nice solution to this problem ?
>>> Idea 1:
>>> ======
>>> 
>>> Add a new #panelheaderold macro in macros.vm and replace all calls of
>>> #panelheader to #panelheaderold in your panels (easy to do with a XWQL
>>> query and 3 lines of scripts).
>>> 
>>> Slowy migrate panels to new syntax.
>>> 
>>> Note:
>>> =====
>>> 
>>> Actually in the future we need to add a new {{panel}} macro, something
>>> like:
>>> 
>>> {{panel style=".." title="…"}}
>>> … content here …
>>> {{/panel}}
>>> 
>>> Idea 2:
>>> ======
>>> 
>>> Create a custom Panel wiki macro (give it a name other than "panel"!),
>>> search for:
>>> {{velocity}}{{html}}#panelheader….#panelfooter{{/html}}{{/velocity}} (use
>>> a regex)
>>> 
>>> Replace with your panel macro.
>>> 
>>>> Should I open an issue on Jira ?
>>> Nope
> 
> So this means that none of the macros in macros.vm are API?
> Which means that there is no API to make a panel header consistent with the 
> panel headers of the default panels?

Good point. Macros in macros.vm are supposed to be APIs and it means we broke 
the backward compatibility at some point in the past (2.7 as suggested by 
Raluca).

We should probably have introduced new macros instead when we introduced the 
conversion to 2.0 syntax.

Now since this is very old we need to decide what we want to do at this point.

Thanks
-Vincent

> Thanks,
> Anca
> 
>>> 
>> So there is no other way to fix this issue but by modifying the code inside
>> panels.
>> Thank you, Vincent.
>> 
>> Raluca.
>> 
>> 
>>> Thanks
>>> -Vincent
_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to