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

Reply via email to