On Thu, Nov 17, 2011 at 1:11 PM, Ashtar Communications
<ashtarcommunicati...@gmail.com> wrote:
> Marius,
>
> Thank you for the syntax fixes. Your changes work perfectly - I forgot
> that each item would have the same HTML id if displayed twice.
>
> The only problem I am now having is that the TOC macro still seems to
> not pick up the wiki headings contained in the objects property when
> using $doc.display. If I add an object with a TextArea property
> containing wiki syntax, like:
> =Heading1=
> ==Heading2==
> ===Heading3===
>
> Then:
>
> {{velocity}}
>
> $doc.display('textarea', $doc.getObject('Sandbox.TestClass', 0))
>
> {{toc /}}
>
> {{/velocity}}
>
>
> The wiki syntax displays just fine, but the TOC macro doesn't display
> anything. Is this expected behavior, or am I missing a way to have the
> TOC macro pick up these headings?

Problem is that $doc.display produce html macro which is a black box
for toc macro.

>
> Thank you,
>
> aaron
>
> On Wed, Nov 16, 2011 at 12:51 AM, Marius Dumitru Florea
> <mariusdumitru.flo...@xwiki.com> wrote:
>> Hi Aaron,
>>
>> See my comments below,
>>
>> On Sat, Nov 12, 2011 at 7:58 PM, Ashtar Communications
>> <ashtarcommunicati...@gmail.com> wrote:
>>> Marius,
>>>
>>> I successfully reproduced the steps you followed on XEM 3.1 -
>>> $context.getEditorWysiwyg() is being correctly evaluated while in
>>> inline mode. However, when the textbox is displayed as part of the
>>> non-html table, it still does not render as WYSIWYG.
>>>
>>
>>> When I follow your steps here, viewing the page as normal just prints
>>> the text $context.getEditorWysiwyg() on the page. However, when I
>>> switch to inline mode, this changes to:
>>> Sandbox.TestClass_0_description
>>
>> This is the expected behavior.
>>
>>>
>>> On the test Sandbox page, the text box then displays correctly as WYSIWYG.
>>>
>>> However, when I try this same thing on the page with the table, it
>>> doesn't work. When in Inline mode, $context.getEditorWysiwyg() still
>>> displays:
>>
>>> Sandbox.TestClass_0_description,Sandbox.TestClass_1_description,Sandbox.TestClass_2_description
>>
>> So you added multiple objects of type Sandbox.TestClass to your page.
>>
>>> etc...
>>>
>>> However, the box being displayed in the table still appears as plain
>>> text. Try the following code on the same Sandbox page with the
>>> TestClass.
>>>
>>> {{velocity}}
>>> $xwiki.jsfx.use("js/xwiki/table/tablefilterNsort.js")
>>> $xwiki.ssfx.use("js/xwiki/table/table.css")
>>>
>>> {{html}}
>>> <table id="Table1" class="grid sortable doOddEven">
>>>  <tr class="sortHeader"><th>Header</th></tr>
>>>  <tr><td>$doc.display('description')</td></tr>
>>> {{/html}}
>>
>> You forgot the closing </table> tag which makes the HTML invalid. By
>> default HTML macro cleans its content and if the content is not valid
>> then the result is sometimes unexpected. Also, the $doc.display call
>> outputs wiki syntax (an HTML macro) so you have to add wiki="true" to
>> the outer HTML macro in order for it to be rendered properly.
>>
>>>
>>> (% class="grid sortable doOddEven" id="Table2" %)(% class="sortHeader"
>>> %)|=Header|$doc.display('description')
>>> {{toc /}}
>>
>> This needs to be formated properly. ToC macro can't be displayed inline.
>>
>>> $context.getEditorWysiwyg(){{/velocity}}
>>>
>>>
>>> For me, this produces two tables. The top table displays a WYSIWG box
>>> (two, actually, which is strange). The bottom table displays a
>>> PlainText box.
>>
>> The reason is simple: you display the same property of the same object
>> twice, which means you'll have two text areas with the same ID in your
>> page which (1) makes your page HTML-invalid and (2) makes the WYSIWYG
>> editor enhance twice the first text area.
>>
>> I changed your code to:
>>
>> ----------8<----------
>> {{velocity}}
>> $xwiki.jsfx.use("js/xwiki/table/tablefilterNsort.js")
>> $xwiki.ssfx.use("js/xwiki/table/table.css")
>>
>> {{html wiki="true"}}
>> <table id="Table1" class="grid sortable doOddEven">
>>  <tr class="sortHeader"><th>Header</th></tr>
>>  <tr><td>$doc.display('description',
>> $doc.getObject('Sandbox.TestClass', 0))</td></tr>
>> </table>
>> {{/html}}
>>
>> (% class="grid sortable doOddEven" id="Table2" %)(% class="sortHeader"%)
>> |=Header
>> |$doc.display('description', $doc.getObject('Sandbox.TestClass', 1))
>>
>> {{toc /}}
>>
>> $context.getEditorWysiwyg()
>> {{/velocity}}
>> ---------->8----------
>>
>> and the WYSIWYG editor is loaded for both text areas.
>>
>>>
>>
>>> Additionally, when there's wiki syntax in the content of the TextBox,
>>> it is not being picked up by the TOC macro.
>>
>> I don't think the ToC macro looks for headings inside tables. I think
>> it picks only the headings that are direct children of the
>> xwikicontent DIV (in view mode).
>>
>> Hope this helps,
>> Marius
>>
>>>
>>> So, it appears that this is somehow related to the table?
>>>
>>> aaron
>>>
>>> On Thu, Nov 10, 2011 at 11:39 PM, Marius Dumitru Florea
>>> <mariusdumitru.flo...@xwiki.com> wrote:
>>>> Hi Aaron,
>>>>
>>>> I did the following test with XWiki Enterprise 3.2 and it worked:
>>>>
>>>> 1. I created a class Sandbox.TestClass with just one field of type
>>>> TextArea, setting the "Editor" property to "Wysiwyg" (from class edit
>>>> mode).
>>>> 2. I added an object of type Sandbox.TestClass to the same page and
>>>> put some text in the text area (from object edit mode).
>>>> 3. I set the content of the Sandbox.TestClass page to (from wiki edit mode)
>>>>
>>>> ----------8<----------
>>>> {{velocity}}
>>>> $doc.display('description')
>>>>
>>>> $context.getEditorWysiwyg()
>>>> {{/velocity}}
>>>> ---------->8----------
>>>>
>>>> 4. I edited Sandbox.TestClass in "Inline form" edit mode
>>>> (/xwiki/bin/edit/Sandbox/TestClass?editor=inline). The WYSIWYG editor
>>>> was loaded and below it I could see "Sandbox.TestClass_0_description".
>>>>
>>>> As you can see I didn't use the HTML macro, just the Velocity one. I
>>>> don't understand why it works in your case with the HTML macro and not
>>>> without it. Are you sure you're using the "Inline form" edit mode?
>>>>
>>>> Note that $doc.display method call outputs the same thing, a plain
>>>> HTML text area, no matter what editor you set in the class field
>>>> definition or in your user preferences. The difference comes from the
>>>> fact that when the editor is set to "Wysiwyg" the field identifier
>>>> (e.g. "Sandbox.TestClass_0_description") is added (by $doc.display) to
>>>> a list that can be retrieved with $context.getEditorWysiwyg(). The
>>>> code that actually loads the WYSIWYG editor is in textarea_wysiwyg.vm
>>>> template (included in editinline.vm template used by "Inline form"
>>>> edit mode), which iterates the list returned by
>>>> $context.getEditorWysiwyg() and replaces the specified fields with the
>>>> WYSIWYG editor.
>>>>
>>>> If in your case $context.getEditorWysiwyg() is not evaluated (you put
>>>> it inside the Velocity macro right? and after all $doc.display calls)
>>>> then it's not surprising that no WYSIWYG editor is loaded.
>>>>
>>>> Hope this helps,
>>>> Marius
>>>>
>>>> On Tue, Nov 8, 2011 at 2:26 PM, Ashtar Communications
>>>> <ashtarcommunicati...@gmail.com> wrote:
>>>>> Thomas,
>>>>>
>>>>> Putting the line:
>>>>> $context.getEditorWysiwyg()
>>>>> in my sheet just results in that text being displayed on the page. Do
>>>>> I need to do something else to have that picked up by velocity? I'm
>>>>> sure I'm missing some obvious syntax ...it's late...:)
>>>>>
>>>>> The WYSIWYGText property has the default editor set to WYSIWYG, the
>>>>> PlainText property has it set to the plain text editor (obviously).
>>>>> Using the HTML macro, the WYSIWYG editor appears for that property -
>>>>> using wiki syntax, both show up as the Plain Text editor.
>>>>>
>>>>> The code I am using is below:
>>>>>
>>>>> {{velocity}}
>>>>> ##Includes for 
>>>>> mktree$xwiki.jsfx.use('js/mktree/mktree.js')$xwiki.ssfx.use('js/mktree/mktree.css',
>>>>> true)
>>>>> ##Includes for table
>>>>> sort$xwiki.jsfx.use("js/xwiki/table/tablefilterNsort.js")$xwiki.ssfx.use("js/xwiki/table/table.css")
>>>>> ##Include for Entry Class CSS$xwiki.ssfx.use('css/entryclass.css', true)
>>>>>
>>>>> #set($objs = $doc.getObjects('Admin.EntryClass'))
>>>>> #set($action = $xcontext.getAction())
>>>>>
>>>>> (% class="grid sortable doOddEven" id="Entry Table" %)
>>>>> (% class="sortHeader" %)|=#|=Entry|=Entry Date
>>>>> #foreach($entry in $objs)
>>>>> |$doc.display("SortOrder", $entry)|(((
>>>>> (% class="mktree" name="tree" %)
>>>>> * (((
>>>>> (% class="title" %)
>>>>> =$doc.display("Title", $entry)=
>>>>> )))
>>>>> ** (((
>>>>>  #if($action != "view")
>>>>>    WYSIWYG:
>>>>>  #end
>>>>>
>>>>>  $doc.display("WYSIWYGText", $entry)
>>>>> )))
>>>>> ** (((
>>>>>  #if($action != "view")
>>>>>    Plain Text:
>>>>>  #end
>>>>>
>>>>>  $doc.display("PlainText", $entry)
>>>>> )))
>>>>> )))|$doc.display("EntryDate", $entry)
>>>>> #end
>>>>>
>>>>> {{toc /}}
>>>>>
>>>>> {{/velocity}}
>>>>>
>>>>> thanks,
>>>>>
>>>>> aaron
>>>>>
>>>>> On Tue, Nov 8, 2011 at 2:37 AM, Marius Dumitru Florea
>>>>> <mariusdumitru.flo...@xwiki.com> wrote:
>>>>>> Hi Aaron,
>>>>>>
>>>>>> On Tue, Nov 8, 2011 at 12:08 PM, Ashtar Communications
>>>>>> <ashtarcommunicati...@gmail.com> wrote:
>>>>>>> Thomas,
>>>>>>>
>>>>>>> Thank for very much for your suggestion. The group syntax was exactly
>>>>>>> what I needed.
>>>>>>>
>>>>>>> However, I am still having some trouble with getting the TOC macro to
>>>>>>> correctly pick up wiki syntax rendered with $doc.display() that is
>>>>>>> contained in an object's property.
>>>>>>>
>>>>>>> I have also noticed that using wiki syntax instead of html,
>>>>>>> $doc.display seems to behave differently and overrides the default
>>>>>>> editor setting.
>>>>>>>
>>>>>>> Here is my example - I am using wiki syntax similar to the following
>>>>>>> (simplified for example's sake):
>>>>>>>
>>>>>>> ************START CODE****************
>>>>>>> (% class="grid sortable doOddEven" id="Table" %)
>>>>>>> (% class="sortHeader" %)|=Field 1|=Field 2
>>>>>>> |Data 1|(((
>>>>>>> (% class="mktree" name="tree" %)
>>>>>>> * (((
>>>>>>> =$doc.display("String", $object)=
>>>>>>> )))
>>>>>>> ** (((
>>>>>>> $doc.display("TextArea", $object)
>>>>>>> )))
>>>>>>> )))
>>>>>>>
>>>>>>> {{toc /}}
>>>>>>> ************END CODE****************
>>>>>>>
>>>>>>> The TextArea property contains a large quantity of text formatted in
>>>>>>> xwiki syntax. The display works just fine - the contents of the
>>>>>>> property render correctly and display in the table.
>>>>>>>
>>>>>>> Two problems:
>>>>>>>
>>>>>>> 1) The TOC macro only recognizes the String property that I manually
>>>>>>> enclose in "=" Heading 1 syntax. It doesn't seem to be picking up the
>>>>>>> wiki syntax contained in the object properties. So if I had 3 objects
>>>>>>> on the page, I get:
>>>>>>>
>>>>>>> *String 1
>>>>>>> *String 2
>>>>>>> *String 3
>>>>>>>
>>>>>>> Instead of:
>>>>>>>
>>>>>>> *String 1
>>>>>>>  **Heading 2 from TextArea**
>>>>>>>  **Heading 2 from TextArea**
>>>>>>> *String 2
>>>>>>> Etc....
>>>>>>>
>>>>>>> I'm afraid I don't know very much about the order of macro rendering
>>>>>>> or whether it is even possible to accomplish what I am describing...
>>>>>>>
>>>>>>> 2) When I use the Inline editing mode, another TextArea property of
>>>>>>> the object (not shown in the code above) does not show up with the
>>>>>>> WYSIWYG editor, even though it is set as the default editor. When
>>>>>>> using the {{html}} macro and code like this:
>>>>>>>
>>>>>>> <li>$doc.display("TextAreaWYSIWYG", $object)</li>
>>>>>>>
>>>>>>> The property correctly displays in Inline mode with the WYSIWYG
>>>>>>> editor. Now that I am using only wiki syntax to display the table, all
>>>>>>> TextArea properties show up in the Plain Text editor, regardless of
>>>>>>> their default setting. Am I doing something wrong?
>>>>>>
>>>>>> Can you paste the code that doesn't work? (i.e. without using the HTML
>>>>>> macro). Also, can you print this:
>>>>>>
>>>>>> $context.getEditorWysiwyg()
>>>>>>
>>>>>> at the end of your sheet. It will display a comma-separated list of
>>>>>> field IDs that require WYSIWYG editing. Are your fields listed there
>>>>>> when editing in Inline mode?
>>>>>>
>>>>>> Hope this helps,
>>>>>> Marius
>>>>>>
>>>>>>>
>>>>>>> Many thanks for all of the help, I have made very significant progress
>>>>>>> on my project thanks to this list...
>>>>>>>
>>>>>>> aaron
>>>>>>>
>>>>>>> On Sun, Oct 23, 2011 at 1:50 AM, Thomas Mortagne
>>>>>>> <thomas.morta...@xwiki.com> wrote:
>>>>>>>> On Sun, Oct 23, 2011 at 12:27 AM, Ashtar Communications
>>>>>>>> <ashtarcommunicati...@gmail.com> wrote:
>>>>>>>>> Thank you for the feedback - I have been playing with passing custom
>>>>>>>>> parameters, and have a few additional clarification questions.
>>>>>>>>>
>>>>>>>>> It seems that I need to use pure wiki syntax if I want the TOC macro
>>>>>>>>> to work right. I am currently relying on the {{html}} macro for two
>>>>>>>>> things which I can't figure out how to replace with custom parameters:
>>>>>>>>>
>>>>>>>>> 1) Nested <ul>'s - I can only get the custom parameter to apply to one
>>>>>>>>> line, and can't figure out how to nest another <ul>.
>>>>>>>>>
>>>>>>>>> Something like this:
>>>>>>>>> (% class="mktree" name="tree" %)
>>>>>>>>> * $doc.display("Title", $obj)
>>>>>>>>>  <velocity code, including an {{html}} block to create an <input> 
>>>>>>>>> element>
>>>>>>>>> **Additional parts of tree
>>>>>>>>> ***Additional parts of tree
>>>>>>>>>
>>>>>>>>> Just returns two different <ul>'s, only the first one of which has the
>>>>>>>>> custom parameter. Is this because the additional lines of code before
>>>>>>>>> continuing the tree forces the rendering engine to close the first
>>>>>>>>> <ul>? Any way to override that?
>>>>>>>>
>>>>>>>> Here is an example of wiki syntax with custom parameters on each ul:
>>>>>>>>
>>>>>>>> (% param=value %)
>>>>>>>> * toto
>>>>>>>> (% param2=value2 %)
>>>>>>>> ** titi
>>>>>>>>
>>>>>>>> but custom parameters on li is not supported yet.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2) Table Sorter - Unfortunately, the whole set of object display code
>>>>>>>>> is wrapped in an {{html}} macro because I am using the old Table
>>>>>>>>> Sorter extension code. This is because I want to display multiple
>>>>>>>>> properties from each object in a single table cell. Looking at the
>>>>>>>>> Live Table macro, it seems that it only supports binding a table to a
>>>>>>>>> class and then setting a column to display a single property - where I
>>>>>>>>> need a single cell to include multiple properties displayed using
>>>>>>>>> custom code.
>>>>>>>>>
>>>>>>>>> Accomplishing this using the html syntax is simple - I can include an
>>>>>>>>> arbitrary amount of code in each <td> tag.
>>>>>>>>>
>>>>>>>>> To use wiki syntax for a sortable table, the XWiki Syntax document
>>>>>>>>> says I should use this:
>>>>>>>>>
>>>>>>>>> (% class="grid sortable filterable doOddEven" id="tableid" %)
>>>>>>>>> (% class="sortHeader" %)|=Title 1|=Title 2
>>>>>>>>> |Cell 11|Cell 12
>>>>>>>>> |Cell 21|Cell 22
>>>>>>>>>
>>>>>>>>> This creates the table fine - but I can't figure out how to include
>>>>>>>>> additional multi-line code in a single cell. As soon as I put in a new
>>>>>>>>> line, etc...it closes the table. Is there any way to accomplish this
>>>>>>>>> using wiki syntax? Should I be trying to use LiveTable instead
>>>>>>>>> somehow?
>>>>>>>>
>>>>>>>> You can put as many lines you want without closing the table but it's
>>>>>>>> closed by an empty line. If you need to have several paragraphs you
>>>>>>>> can use "group"  syntax
>>>>>>>> (http://platform.xwiki.org/xwiki/bin/view/Main/XWikiSyntax#HGroups) as
>>>>>>>> in
>>>>>>>>
>>>>>>>> (% class="grid sortable filterable doOddEven" id="tableid" %)
>>>>>>>> (% class="sortHeader" %)|=Title 1|=Title 2
>>>>>>>> |Cell 11|(((
>>>>>>>> Cell 12
>>>>>>>>
>>>>>>>> with
>>>>>>>>
>>>>>>>> several
>>>>>>>>
>>>>>>>> paragraphs
>>>>>>>> )))|Cell 21|Cell 22
>>>>>>>>
>>>>>>>>>
>>>>>>>>> If the above is confusing, here's what I'm really asking:
>>>>>>>>>
>>>>>>>>> I want to use a sortable table to display multiple objects of the same
>>>>>>>>> class on the same page. I would like that table to display multiple
>>>>>>>>> properties of each object in certain cells in the row. Some of those
>>>>>>>>> properties will contain wiki syntax - which I would like to be
>>>>>>>>> readable by the TOC macro after the table has been rendered. Is there
>>>>>>>>> a way to accomplish this?
>>>>>>>>>
>>>>>>>>> Thank you,
>>>>>>>>>
>>>>>>>>> Aaron
>>>>>>>>>
>>>>>>>>> On Thu, Oct 20, 2011 at 1:18 PM, Ashtar Communications
>>>>>>>>> <ashtarcommunicati...@gmail.com> wrote:
>>>>>>>>>> Interesting - I had missed the ability to pass custom parameters 
>>>>>>>>>> using
>>>>>>>>>> wiki syntax. I will play with that and see if I can get it to output
>>>>>>>>>> the same html I need.
>>>>>>>>>>
>>>>>>>>>> I am in fact using a series of nested <ul> within each <div>, that
>>>>>>>>>> forms a collapsible javascript tree. The js is touchy about the exact
>>>>>>>>>> formatting of the UL - if I can't get the tags to nest correctly 
>>>>>>>>>> using
>>>>>>>>>> wiki syntax then I may be back with additional questions.
>>>>>>>>>>
>>>>>>>>>> A more accurate but simplified version of each object's display code 
>>>>>>>>>> is:
>>>>>>>>>>
>>>>>>>>>> <ul class="tree">
>>>>>>>>>>  <li>
>>>>>>>>>>  <h2>some content</h2>
>>>>>>>>>>  <input />
>>>>>>>>>>  <input />
>>>>>>>>>>  </li>
>>>>>>>>>>  <ul>
>>>>>>>>>>      <li>Some velocity code, returns wiki syntax with headings</li>
>>>>>>>>>>      <li>Some velocity code, returns wiki syntax with headings</li>
>>>>>>>>>>      <li>Some velocity code, returns wiki syntax with headings</li>
>>>>>>>>>>  </ul>
>>>>>>>>>> </ul>
>>>>>>>>>>
>>>>>>>>>> Thanks much,
>>>>>>>>>>
>>>>>>>>>> aaron
>>>>>>>>>>
>>>>>>>>>> On Thu, Oct 20, 2011 at 12:52 PM, Thomas Mortagne
>>>>>>>>>> <thomas.morta...@xwiki.com> wrote:
>>>>>>>>>>> On Thu, Oct 20, 2011 at 7:10 PM, Ashtar Communications
>>>>>>>>>>> <ashtarcommunicati...@gmail.com> wrote:
>>>>>>>>>>>> That makes sense, thank you for the clarification. Unfortunately, 
>>>>>>>>>>>> I am
>>>>>>>>>>>> using the HTML macro to generate the final output - this is 
>>>>>>>>>>>> because I
>>>>>>>>>>>> need to use <ul>'s with a javascript to make the div's into
>>>>>>>>>>>> collapsible trees.
>>>>>>>>>>>>
>>>>>>>>>>>> Does that mean I'm out of luck?
>>>>>>>>>>>
>>>>>>>>>>> <ul> ? I don't see much lists in your example, did you mean div ?
>>>>>>>>>>>
>>>>>>>>>>> You can get div with custom parameters in pure wiki syntax the 
>>>>>>>>>>> following way:
>>>>>>>>>>>
>>>>>>>>>>> (% class="somecssclass" %)
>>>>>>>>>>> (((
>>>>>>>>>>> div content
>>>>>>>>>>> )))
>>>>>>>>>>>
>>>>>>>>>>> which produces
>>>>>>>>>>>
>>>>>>>>>>> <div class="somecssclass">div content</div>
>>>>>>>>>>>
>>>>>>>>>>> And if you really mean list, list most of the wiki elements list
>>>>>>>>>>> support custom parameters too:
>>>>>>>>>>>
>>>>>>>>>>> (% class="somecssclass" %)
>>>>>>>>>>> * mylist element 1
>>>>>>>>>>> * mylist element 2
>>>>>>>>>>>
>>>>>>>>>>> which produces
>>>>>>>>>>>
>>>>>>>>>>> <ul class="somecssclass">
>>>>>>>>>>> <li>mylist element 1</li>
>>>>>>>>>>> <li>mylist element 2</li>
>>>>>>>>>>> </ul
>>>>>>>>>>>
>>>>>>>>>>> You can put anything you want in custom parameters and html renderer
>>>>>>>>>>> will print them as you provided them depending of the element.
>>>>>>>>>>>
>>>>>>>>>>> Using the html macro should always be the last resort, usually when
>>>>>>>>>>> you get some html you don't really have control on that you need to
>>>>>>>>>>> display or when you need to display elements not supported by the 
>>>>>>>>>>> wiki
>>>>>>>>>>> syntax (yet) like <form> related stuff.
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Oct 20, 2011 at 12:45 AM, Thomas Mortagne
>>>>>>>>>>>> <thomas.morta...@xwiki.com> wrote:
>>>>>>>>>>>>> On Thu, Oct 20, 2011 at 8:02 AM, Ashtar Communications
>>>>>>>>>>>>> <ashtarcommunicati...@gmail.com> wrote:
>>>>>>>>>>>>>> One more tonight...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> It seems that I am unable to use the built-in TOC macro for wiki
>>>>>>>>>>>>>> content which is generated dynamically from a Class Sheet 
>>>>>>>>>>>>>> {{include}}.
>>>>>>>>>>>>>> I assume this is because the TOC macro is rendered before (or
>>>>>>>>>>>>>> simultaneously with) the include macro which actually displays 
>>>>>>>>>>>>>> the
>>>>>>>>>>>>>> objects on the page, so as far as the TOC macro knows, there are 
>>>>>>>>>>>>>> no
>>>>>>>>>>>>>> wiki headings on the page (yet) to create an outline from.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Actually no, there is a concept of priority in macros and TOC 
>>>>>>>>>>>>> macro
>>>>>>>>>>>>> priority is very low specifically to support use case like that. 
>>>>>>>>>>>>> But
>>>>>>>>>>>>> TOC only support (generated or not) real wiki content which mean 
>>>>>>>>>>>>> if
>>>>>>>>>>>>> you have anything in a html macro it will not support it because 
>>>>>>>>>>>>> html
>>>>>>>>>>>>> macro produce a RawBlock which is a black box containing html 
>>>>>>>>>>>>> syntax
>>>>>>>>>>>>> for other macros.
>>>>>>>>>>>>>
>>>>>>>>>>>>> So if you use case is just what you described it should work well.
>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Does anyone have any suggestions on how to parse through the 
>>>>>>>>>>>>>> final
>>>>>>>>>>>>>> rendered output of the wiki page to generate a table of contents 
>>>>>>>>>>>>>> for
>>>>>>>>>>>>>> dynamically generated wiki content? If I'm missing something 
>>>>>>>>>>>>>> with the
>>>>>>>>>>>>>> existing macro, that would be great...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> What I am looking to do is write some code (preferably in a 
>>>>>>>>>>>>>> panel, I
>>>>>>>>>>>>>> think), which creates a TOC-style index of all the wiki-syntax
>>>>>>>>>>>>>> headings contained on the fully rendered page, after the content 
>>>>>>>>>>>>>> has
>>>>>>>>>>>>>> been generated from TextArea properties of a set of attached 
>>>>>>>>>>>>>> objects
>>>>>>>>>>>>>> to the page.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I have written custom display code that loops through every 
>>>>>>>>>>>>>> object of
>>>>>>>>>>>>>> a custom class attached to a page and then displays some of that
>>>>>>>>>>>>>> objects properties in a series of collapsible div's. Each object
>>>>>>>>>>>>>> contains two TextArea properties - one for WYSIWYG data, and one 
>>>>>>>>>>>>>> for
>>>>>>>>>>>>>> plain text, which would be formatted in wiki syntax. The result 
>>>>>>>>>>>>>> is a
>>>>>>>>>>>>>> list of each objects name with an expandable <div> full of the
>>>>>>>>>>>>>> wiki-rendered content contained in the TextArea properties. I 
>>>>>>>>>>>>>> would
>>>>>>>>>>>>>> like to generate a TOC which "reads through" that content and 
>>>>>>>>>>>>>> comes up
>>>>>>>>>>>>>> with a list of only the relevant headings under each displayed
>>>>>>>>>>>>>> "object"
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> For example, on a page with 3 objects, the custom display code 
>>>>>>>>>>>>>> in the
>>>>>>>>>>>>>> Class Sheet results in this (the wiki syntax appears fully 
>>>>>>>>>>>>>> rendered,
>>>>>>>>>>>>>> obviously):
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Object 1 Name - Click to expand
>>>>>>>>>>>>>>    ******Hidden until clicked********
>>>>>>>>>>>>>>    ==Heading 2==
>>>>>>>>>>>>>>    ===Heading 3===
>>>>>>>>>>>>>>    Normal text, etc...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Object 2 Name - Click to expand
>>>>>>>>>>>>>>    ******Hidden until clicked********
>>>>>>>>>>>>>>    ==Heading 2==
>>>>>>>>>>>>>>    ===Heading 3===
>>>>>>>>>>>>>>    Normal text, etc...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Object 3 Name - Click to expand
>>>>>>>>>>>>>>    ******Hidden until clicked********
>>>>>>>>>>>>>>    ==Heading 2==
>>>>>>>>>>>>>>    ===Heading 3===
>>>>>>>>>>>>>>    Normal text, etc...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I would like the TOC to return:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Object 1
>>>>>>>>>>>>>>  Heading 2
>>>>>>>>>>>>>>  Heading 3
>>>>>>>>>>>>>> Object 2
>>>>>>>>>>>>>>  Heading 2
>>>>>>>>>>>>>>  Heading 3
>>>>>>>>>>>>>> Object 3
>>>>>>>>>>>>>>  Heading 2
>>>>>>>>>>>>>>  Heading 3
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Even when all the div's are initially collapsed/hidden. It would 
>>>>>>>>>>>>>> be
>>>>>>>>>>>>>> ideal if the TOC was clickable and went to the relevant anchor...
>>>>>>>>>>>>>
>>>>>>>>>>>>> Are the divs done using html macro or using wiki syntax ?
>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I can obviously use getValue() with each TextArea property to 
>>>>>>>>>>>>>> return a
>>>>>>>>>>>>>> string with that objects wiki syntax - but I don't have an easy 
>>>>>>>>>>>>>> way to
>>>>>>>>>>>>>> parse that string to only return the heading levels...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Any guidance would be appreciated.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thanks,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> aaron
>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>> users mailing list
>>>>>>>>>>>>>> users@xwiki.org
>>>>>>>>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Thomas Mortagne
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> users mailing list
>>>>>>>>>>>>> users@xwiki.org
>>>>>>>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>>>>>>>
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> users mailing list
>>>>>>>>>>>> users@xwiki.org
>>>>>>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Thomas Mortagne
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> users mailing list
>>>>>>>>>>> users@xwiki.org
>>>>>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> users mailing list
>>>>>>>>> users@xwiki.org
>>>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thomas Mortagne
>>>>>>>> _______________________________________________
>>>>>>>> users mailing list
>>>>>>>> users@xwiki.org
>>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> users mailing list
>>>>>>> users@xwiki.org
>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>
>>>>>> _______________________________________________
>>>>>> users mailing list
>>>>>> users@xwiki.org
>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> users@xwiki.org
>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>
>>>> _______________________________________________
>>>> users mailing list
>>>> users@xwiki.org
>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>
>>> _______________________________________________
>>> users mailing list
>>> users@xwiki.org
>>> http://lists.xwiki.org/mailman/listinfo/users
>>>
>> _______________________________________________
>> users mailing list
>> users@xwiki.org
>> http://lists.xwiki.org/mailman/listinfo/users
>>
> _______________________________________________
> users mailing list
> users@xwiki.org
> http://lists.xwiki.org/mailman/listinfo/users
>



-- 
Thomas Mortagne
_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to