I need to know if a page is watching... I did something like this to get the favourites pages and generate a list... But I hasn't any object to get isWatching or something....
I know that exists this objects:
$action
$pageManager
etc... :S
I found this code in the decorators.vmd
#set ($pageNotifications = $helper.action.pageNotificationsForUser)
#if ($pageNotifications)
<table class="tableview condensed">
<tr>
<th colspan="2" class="colHeaderLink">$action.getText('page.watches')</th>
</tr>
#foreach ($notification in $pageNotifications)
<tr #alternateRowColors()>
<td class="tableview-action-text">
#contentLink($notification.page)
<!--<a href="$req.contextPath$notification.page.urlPath">$notification.page.title</a>-->
</td>
<td class="tableview-action-icon">
<a href="${req.contextPath}/users/removepagenotification.action?pageId=$notification.page.id"><img src="$staticResourceUrlPrefix/images/icons/watch_cancel_16.gif" height="16" width="16" title="$action.getText('stop.watching.page')"></a>
</td>
</tr>
#end
</table>
#end
can I use something like this in the User macro Environment?????
please help....
Take this little usermacro as a starter for your further implementation
## @noparams #set($containerManagerClass=$action.class.forName('com.atlassian.spring.container.ContainerManager')) #set($getInstanceMethod=$containerManagerClass.getDeclaredMethod('getInstance',null)) #set($containerManager=$getInstanceMethod.invoke(null,null)) #set($containerContext=$containerManager.containerContext) #set($notificationmanager = $containerContext.getComponent('notificationManager')) #set ( $userWatchingSpace = $notificationmanager.isUserWatchingPageOrSpace($action.remoteUser, $space, null)) #set ( $userWatchingPage = $notificationmanager.isUserWatchingPageOrSpace($action.remoteUser, null, $content)) User is #if(!$userWatchingSpace) not #end watching space. <br> User is #if(!$userWatchingPage ) not #end watching page.
The Usermacro available variables can be found here
https://developer.atlassian.com/display/CONFDEV/Confluence+Objects+Accessible+From+Velocity
Hi, I can answer the general part of your question :
the usermacros are writtenin Velocity as well, so go searching for "Objects, available in velocity" or "objects available for templates".
Check the "shared usermacros" sourcecodes for further inspiration as well.
So it should be there as well.
Josh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.