Changes for page Message Sender Macro
Last modified by Thomas Mistelbauer on 2021/12/13 06:26
<
>
edited by Thomas Mistelbauer
on 2019/05/10 05:58
on 2019/05/10 05:58
edited by Thomas Mistelbauer
on 2020/04/27 11:02
on 2020/04/27 11:02
Change comment:
Install extension [org.xwiki.platform:xwiki-platform-messagestream-ui/12.2.1]
Summary
-
Objects (2 modified, 0 added, 0 removed)
Details
- XWiki.StyleSheetExtension[0]
-
- Code
-
... ... @@ -1,3 +1,5 @@ 1 +#template('colorThemeInit.vm') 2 + 1 1 .messagestream-tools { 2 2 display: flex; 3 3 position: relative; ... ... @@ -10,3 +10,37 @@ 10 10 flex-grow: 1; 11 11 margin-left: .3em; 12 12 } 15 + 16 +.messagestream .message-content { 17 + padding: .5em 0 .5em 75px; 18 +} 19 + 20 +.messagestream .activitySnapshot { 21 + height: 30px; 22 + margin: 5px 0 0 -50px; 23 + position: absolute; 24 +} 25 + 26 +.messagestream .activitySnapshot img { 27 + border-radius: 10px 10px 0 10px; 28 + box-shadow: -1px 1px 1px rgba(128,128,128,0.6); 29 +} 30 + 31 +/* User's avatar */ 32 +.messagestream .activitySnapshot .avatar { 33 + border-radius: 4px; 34 + box-shadow: 0 0 2px 1px rgba(128,128,128,0.6); 35 +} 36 + 37 +.messagestream .activitySnapshot .activityActionAvatar { 38 + background: $theme.pageContentBackgroundColor; 39 + border-color: $theme.pageContentBackgroundColor; 40 + border-style: solid; 41 + border-width: 4px 1px 1px 3px; 42 + box-sizing: content-box; 43 + bottom: -5px; 44 + height: 16px; 45 + position: absolute; 46 + right: -10px; 47 + width: 16px; 48 +} - Parse content
-
... ... @@ -1,1 +1,1 @@ 1 - No1 +Yes
- XWiki.WikiMacroClass[0]
-
- Macro code
-
... ... @@ -7,8 +7,6 @@ 7 7 #set ($configClass = $xwiki.getDocument($config).getxWikiClass()) 8 8 #set ($isMessageStreamActive = $services.messageStream.isActive()) 9 9 10 -#set ($currentUser = $services.model.serialize($xcontext.userReference, 'default')) 11 - 12 12 #set ($activityActionsMap = { 13 13 'publicMessage': 'icons/silk/user_comment.png', 14 14 'personalMessage': 'icons/silk/user_comment.png', ... ... @@ -34,7 +34,6 @@ 34 34 ## 35 35 ## Skin Extensions 36 36 ##-------------------------------------------------------------- 37 -#set ($discard = $xwiki.ssx.use('Main.Activity')) 38 38 #set ($discard = $xwiki.ssx.use('Main.MessageSenderMacro')) 39 39 #set ($discard = $xwiki.jsx.use('Main.MessageSenderMacro')) 40 40 {{/velocity}} ... ... @@ -113,11 +113,11 @@ 113 113 #set ($actionQueryString = "xredirect=$escapetool.url($xredirect)") 114 114 {{html}} 115 115 ## Wrap the form in a div so that the layout is preserved in inline mode (where the form is stripped by the rendering). 116 - <div class='messagestream activityUserxform'>113 + <div class='messagestream xform'> 117 117 #if (!$inEditMode) 118 118 <form action="${xwiki.getURL('Main.MessageSenderMacro', 'view', $!{actionQueryString})}" method='post'> 119 119 #end 120 - <div class='ac tivityContent'>117 + <div class='message-content'> 121 121 #if(!$inEditMode) 122 122 ## CSRF prevention 123 123 <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" /> ... ... @@ -139,13 +139,13 @@ 139 139 #if (!$defaultTarget) 140 140 #if ($doc.getObject('XWiki.XWikiGroups')) 141 141 #set ($defaultTarget = 'group') 142 - #set ($targetName = $doc. prefixedFullName)139 + #set ($targetName = $doc.fullName) 143 143 #elseif ($doc.getObject('XWiki.XWikiUsers')) 144 - #if ($doc. prefixedFullName == $currentUser)141 + #if ($doc.documentReference == $xcontext.userReference) 145 145 #set ($defaultTarget = 'followers') 146 146 #else 147 147 #set ($defaultTarget = 'user') 148 - #set ($targetName = $doc. prefixedFullName)145 + #set ($targetName = $doc.fullName) 149 149 #end 150 150 #else 151 151 #set ($defaultTarget = 'everyone') ... ... @@ -158,25 +158,28 @@ 158 158 #end 159 159 </select> 160 160 </label> 161 - #set ($ userPickerParams = {158 + #set ($suggestPickerParams = { 162 162 'name': 'targetName', 163 - 'value': $targetName, 164 164 'title': $services.localization.render('xe.activity.messages.visibility.targetName.tip') 165 165 }) 166 - #if ($possibleTargets.contains('user')) 167 - <div class="message-target message-target-user#if ($defaultTarget != 'user') hidden#end"> 168 - #set ($discard = $userPickerParams.put('class', 'targetName')) 169 - #set ($userPickerParams.disabled = $inEditMode || $defaultTarget != 'user') 170 - #userPicker(true, $userPickerParams) 171 - </div> 162 + #foreach ($target in ['user', 'group']) 163 + #if ($possibleTargets.contains($target)) 164 + #set ($notDefaultTarget = $target != $defaultTarget) 165 + <div class="message-target message-target-$target#if ($notDefaultTarget) hidden#end"> 166 + #set ($discard = $suggestPickerParams.put('class', 'targetName')) 167 + #set ($suggestPickerParams.disabled = $inEditMode || $notDefaultTarget) 168 + #set ($suggestPickerParams.value = $targetName) 169 + #if ($notDefaultTarget) 170 + #set ($suggestPickerParams.value = '') 171 + #end 172 + #if ($target == 'user') 173 + #userPicker(false, $suggestPickerParams) 174 + #else 175 + #groupPicker(false, $suggestPickerParams) 176 + #end 177 + </div> 178 + #end 172 172 #end 173 - #if ($possibleTargets.contains('group')) 174 - <div class="message-target message-target-group#if ($defaultTarget != 'group') hidden#end"> 175 - #set ($discard = $userPickerParams.put('class', 'targetName')) 176 - #set ($userPickerParams.disabled = $inEditMode || $defaultTarget != 'group') 177 - #groupPicker(true, $userPickerParams) 178 - </div> 179 - #end 180 180 <div class="message-target message-target-default"> 181 181 <input type="hidden" name="targetName" value="$!escapetool.xml($targetName)" class="targetName" /> 182 182 </div>