Try $xcontext.userReference.name

Hope this helps,
Marius

On Thu, Jan 23, 2014 at 1:01 AM, Kelly Steinke <[email protected]> wrote:
> I have a Subwiki where I have created a Live Table called Active Tasks and I 
> have been trying to filter the results based on two properties status and 
> assignee. As defined in the TaskManagerClass, status is a database list and 
> assignee is a list of users (local subwiki users). I have defined the live 
> table like so:
>
>
> #set ($columnsProperties = {
> 'number': {"type":"number","size":10},
> 'doc.title': {"type":"text","size":20,"link":"view"},
> 'project': {"type":"list","size":10},
> 'status': {"type":"list","size":10},
> 'severity': {"type":"list","size":10},
> 'reporter': {"type":"text","size":10,"html":true},
> 'assignee': {"type":"text","size":10,"html":true},
> 'duedate': {"type":"text","size":10},
> '_actions': 
> {"sortable":false,"filterable":false,"html":true,"actions":["edit","delete"]}
> })
> #set ($options = {
> 'className': 'TaskManager.TaskManagerClass',
> 'resultPage': 'TaskManagerCode.MyActiveTasksLiveTableResults',
> 'translationPrefix': 'taskmanager.livetable.',
> 'tagCloud': true,
> 'rowCount': 15,
> 'maxPages': 10,
> 'selectedColumn': 'number',
> 'defaultOrder': 'asc'
> })
> #set ($columns = ['number', 'doc.title', 'project', 'status', 'severity', 
> 'reporter', 'assignee', 'duedate', '_actions'])
> #livetable('myActiveTasks' $columns $columnsProperties $options)
>
> In the resultPage I have the following code:
>
>
> {{include document="XWiki.LiveTableResultsMacros" /}}
> {{velocity wiki="false"}}
>
> #gridresultwithfilter("$!request.classname" $request.collist.split(",")", 
> StringProperty as statusprop ", " and obj.id=statusprop.id.id and 
> statusprop.id.name='status' and statusprop.value not in ('Done')" )
>
> {{/velocity}}
>
> This successfully displays the live table and filters it showing all tasks 
> that have a status other than "Done". I cannot however successfully get the 
> results to also filter based on the currently logged in user. In the 
> TaskManagerClass sheet I have set the assignee property automatically using 
> $context.user when a new entry is made. I have tried to filter the table at 
> the definition using the extraparams option like so:
>
> ' extraParams' : '&assignee=$context.User ',
> however when this is added the table does not display any entries. Upon 
> further investigation I found that when I display what is in the 
> $context.user, it shows as " XWiki.test " (test being the name of the user I 
> created for testing). The strange thing is that when I change the extraParams 
> option to be ' extraParams' : '&assignee=test ' then it works. This means 
> that when I set the default property in the List of Users with the same 
> function ($context.user), that it set it as test as opposed to XWiki.test. I 
> also tried using $context.localUser in the extraParams however that also 
> displays as XWiki.test.
>
> Does this have to do with how the "List of Users" control on the class form 
> is storing the value from $context.user? How can I filter this live table on 
> the currently logged in user. I have tried to add another object to my where 
> clause in the gridreslutwithfilter() call, however I was unsuccessful. If 
> anyone can help me out with that query or with using the extraParams I would 
> greatly appreciate it.
>
> Regards,
>
> Kelly
>
>
> _______________________________________________
> users mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/users
_______________________________________________
users mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to