Changes for page Profile of XWikiUserSheet

Last modified by Ludovic Dubost on 2024/07/22 15:51

From version 4.1
edited by Ludovic Dubost
on 2015/09/01 11:46
Change comment: Install extension [org.xwiki.platform:xwiki-platform-user-profile-ui-7.1]
To version 6.1
edited by Ludovic Dubost
on 2018/07/01 11:40
Change comment: Install extension [org.xwiki.platform:xwiki-platform-user-profile-ui/10.5]

Summary

Details

Page properties
Content
... ... @@ -15,10 +15,17 @@
15 15  #end
16 16  ## TODO: add APIs to be able to display users watchlists to admins
17 17  #if($isMyProfile && $hasWatch)
18 - #set($discard = $categories.add({'id':'watchlist', 'sheet':'XWiki.XWikiUserWatchListSheet', 'glyphicon': 'eye-open'}))
18 + #set($discard = $categories.add({'id':'watchlist', 'sheet':'XWiki.XWikiUserWatchListSheet', 'glyphicon': 'eye'}))
19 19  #end
20 20  #if($isMyProfile)
21 - #set($discard = $categories.add({'id':'network', 'sheet':'XWiki.XWikiUserNetworkSheet', 'glyphicon': 'globe'}))
21 + #if ("$!services.notification.watch" != '' || $hasWatch)
22 + #set($discard = $categories.add({'id':'network', 'sheet':'XWiki.XWikiUserNetworkSheet', 'glyphicon': 'world'}))
23 + #end
24 + ## TODO: add an enhancement system instead
25 + #set($notificationsSheet = $services.model.createDocumentReference('', ['XWiki', 'Notifications', 'Code'], 'XWikiUserNotificationsSheet'))
26 + #if ($xwiki.exists($notificationsSheet))
27 + #set($discard = $categories.add({'id':'notifications', 'sheet':'XWiki.Notifications.Code.XWikiUserNotificationsSheet', 'glyphicon': 'bell'}))
28 + #end
22 22  #end
23 23  #set($userWikiSheet = 'WikiManager.UserWikiSheet')
24 24  #if($xcontext.isMainWiki() && $xwiki.exists($userWikiSheet))
... ... @@ -68,10 +68,13 @@
68 68   (((
69 69   #if($request.xpage == 'edituser')
70 70   {{html clean="false"}}
71 - #resizedUserAvatar($doc.fullName 170)
78 + #resizedUserAvatar($doc.fullName 180)
72 72   {{/html}}
73 73   #else
74 - {{attachmentSelector classname="XWiki.XWikiUsers" object="$obj.number" property="avatar" #if ($isMyProfile) savemode="direct" #end defaultValue="XWiki.XWikiUserSheet@noavatar.png" width="120" alternateText="$xwiki.getUserName($doc.fullName, false)" buttontext="$services.localization.render('platform.core.profile.changePhoto')" displayImage="true" filter="png,jpg,gif"/}}
81 + ## By specifying the image width we enable server side resizing. The width value we use is greater than the
82 + ## available space because we don't want to loose too much of the image quality (we rely on the browser to fit the
83 + ## image in the available space).
84 + {{attachmentSelector classname="XWiki.XWikiUsers" object="$obj.number" property="avatar" #if ($isMyProfile) savemode="direct" #end defaultValue="XWiki.XWikiUserSheet@noavatar.png" width="180" alternateText="$xwiki.getUserName($doc.fullName, false)" buttontext="$services.localization.render('platform.core.profile.changePhoto')" displayImage="true" filter="png,jpg,jpeg,gif"/}}
75 75   #end
76 76   )))
77 77   ##########
XWiki.JavaScriptExtension[0]
Code
... ... @@ -17,6 +17,7 @@
17 17   this.tabsContainer.select('.category-tab.current').each(function (activeTab) {
18 18   this.updateCategoryFields(activeTab.id);
19 19   document.fire('xwiki:profile:switchedCategory', {'category' : activeTab.id});
20 + document.fire('xwiki:dom:refresh');
20 20   }.bind(this));
21 21   this.handleCancelAction();
22 22  
... ... @@ -47,6 +47,7 @@
47 47   this.updateURL(tabName);
48 48   }
49 49   document.fire('xwiki:profile:switchedCategory', {'category' : tab});
51 + document.fire('xwiki:dom:refresh');
50 50   },
51 51  
52 52   updateCategoryFields : function (category) {