<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[BuddyPress][13975] trunk: Administration: improve & document Extended profile screen</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { white-space: pre-line; overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta" style="font-size: 105%">
<dt style="float: left; width: 6em; font-weight: bold">Revision</dt> <dd><a style="font-weight: bold" href="http://buddypress.trac.wordpress.org/changeset/13975">13975</a><script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","description":"Review this Commit","action":{"@type":"ViewAction","url":"http://buddypress.trac.wordpress.org/changeset/13975","name":"Review Commit"}}</script></dd>
<dt style="float: left; width: 6em; font-weight: bold">Author</dt> <dd>imath</dd>
<dt style="float: left; width: 6em; font-weight: bold">Date</dt> <dd>2024-07-25 12:24:55 +0000 (Thu, 25 Jul 2024)</dd>
</dl>

<pre style='padding-left: 1em; margin: 2em 0; border-left: 2px solid #ccc; line-height: 1.25; font-size: 105%; font-family: sans-serif'>Administration: improve & document Extended profile screen

- Make sure the top screen button is using the same text than the WordPress Profile screen.
- Avoid code duplication introducing the `get_top_screen_button()` method. It outputs the above top screen button for the Pending Users & Extended Profile screens.
- Add a Dashicon to inform clicking on the "View Profile" link will load the page into a new browser's tab.
- Document this screen into the User handbook.

See <a href="http://buddypress.trac.wordpress.org/ticket/9217">#9217</a>
Closes https://github.com/buddypress/buddypress/pull/348</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdocsuseradministrationusersREADMEmd">trunk/docs/user/administration/users/README.md</a></li>
<li><a href="#trunkdocsusermanifestjson">trunk/docs/user/manifest.json</a></li>
<li><a href="#trunksrcbpmembersadmincssadminrtlcss">trunk/src/bp-members/admin/css/admin-rtl.css</a></li>
<li><a href="#trunksrcbpmembersadmincssadmincss">trunk/src/bp-members/admin/css/admin.css</a></li>
<li><a href="#trunksrcbpmembersclassesclassbpmembersadminphp">trunk/src/bp-members/classes/class-bp-members-admin.php</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkdocsuseradministrationusersprofilemd">trunk/docs/user/administration/users/profile.md</a></li>
<li><a href="#trunkdocsuserassetsadministrationextendedprofile01png">trunk/docs/user/assets/administration-extended-profile-01.png</a></li>
<li><a href="#trunkdocsuserassetsadministrationextendedprofile02png">trunk/docs/user/assets/administration-extended-profile-02.png</a></li>
<li><a href="#trunkdocsuserassetsadministrationextendedprofile03png">trunk/docs/user/assets/administration-extended-profile-03.png</a></li>
<li><a href="#trunkdocsuserassetsadministrationextendedprofile04png">trunk/docs/user/assets/administration-extended-profile-04.png</a></li>
<li><a href="#trunkdocsuserassetsadministrationextendedprofile05png">trunk/docs/user/assets/administration-extended-profile-05.png</a></li>
<li><a href="#trunkdocsuserassetsadministrationextendedprofile06png">trunk/docs/user/assets/administration-extended-profile-06.png</a></li>
<li><a href="#trunkdocsuserassetsadministrationextendedprofile07png">trunk/docs/user/assets/administration-extended-profile-07.png</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdocsuseradministrationusersREADMEmd"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/docs/user/administration/users/README.md</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/docs/user/administration/users/README.md    2024-07-24 08:36:35 UTC (rev 13974)
+++ trunk/docs/user/administration/users/README.md      2024-07-25 12:24:55 UTC (rev 13975)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -4,7 +4,7 @@
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px"> ![Users submenus](../../assets/bp-admin-users-submenus.png)
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-- Extended Profile
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+- [Extended Profile](./profile.md)
</ins><span class="cx" style="display: block; padding: 0 10px"> - [Manage Sign-ups](./signups.md)
</span><span class="cx" style="display: block; padding: 0 10px"> - [Profile Fields](./xprofile.md)
</span><span class="cx" style="display: block; padding: 0 10px"> - [Member Types](./member-types.md)
</span></span></pre></div>
<a id="trunkdocsuseradministrationusersprofilemd"></a>
<div class="addfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: trunk/docs/user/administration/users/profile.md</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/docs/user/administration/users/profile.md                           (rev 0)
+++ trunk/docs/user/administration/users/profile.md     2024-07-25 12:24:55 UTC (rev 13975)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -0,0 +1,57 @@
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+# BuddyPress Extended Profile
+
+BuddyPress extends the WordPress Dashboard's profile page adding a navigation to switch between this WordPress profile screen and the BuddyPress Extended profile one. The primary goal of this BuddyPress Admin screen is to let Site Administrator(s) (on regular WordPress configs) or Network Administrator(s) (on Multisite configs) manage/moderate a specific member.
+
+![BP User Nav](../../assets/administration-extended-profile-01.png)
+
+When viewing a WordPress user's profile, the Extended Profile screen can be reached by clicking on the corresponding tab of the navigation showed in the above screen capture.
+
+![WP Users list](../../assets/administration-extended-profile-02.png)
+
+It can also be reached from the the WordPress Users Administration screen by hovering one of the Usernames listed to reveal the action links and click on the "Extended" one.
+
+## Moderating a user
+
+### Moderating the user status & their profile photo
+
+When the Extended Profiles component is **not** active and there are no available [member types](./member-types.md), moderating a user status (1) or editing/deleting a user’s profile photo (2) are the 2 actions an Administrator can perform.
+
+![BP Default moderating actions](../../assets/administration-extended-profile-03.png)
+
+1. Marking a user as a spammer can be achieved by checking the corresponding radio button before clicking on the "Update Profile" blue button.
+2. Editing a profile photo that doesn't match your community rules is a 2 steps operation: first click on the "Edit Profile Photo" link, then using the modal window that will be displayed, you can use this modal's Upload or Delete tab to change or remove the profile photo.
+
+![Delete profile photo tab](../../assets/administration-extended-profile-04.png)
+
+> [!NOTE]
+> Marking a user as a spammer will mark all their activities as spam as well as remove their Extended Profile/blogs/friends & groups information.
+
+### Moderating the user extended profile information
+
+When the Extended Profiles component is active, Administrators can also edit the profile fields value and/or their community visibility.
+
+![Moderate fields](../../assets/administration-extended-profile-05.png)
+
+1. Extended profile fields group, unlike what's happening on front-end, are all listed into this screen and inside a specific metabox containing all the fields for the group.
+2. To edit field visibilities, you need to click on the "Change" button next to the field visibility mention so that visibility options will show under this mention.
+3. Once you're satisfied with your edits: you need to click on the "Update Profile" blue button to save these.
+
+### Assigning one or more member types to the user
+
+When some [member types](./member-types.md) are available, Administrators can assign one or more of them to the displayed user. A new metabox will be available into the Extended Profile screen to help them do so.
+
+![Assign member types](../../assets/administration-extended-profile-06.png)
+
+1. From this metabox, click on the Member type checkbox(es) of your choice and validate this choice by clicking on the "Update Profile" blue button.
+2. All metaboxes can be reorganized & minimized using the buttons at the right of their title. You can also use "drag & drop" to move them from the left column to the main one & vice versa.
+
+## Editing user's own extended profile
+
+All members can edit their profile photo or profile fields (when the Extended Profiles component is active) as well as check their personal information from the Extended profile tab of their Dashboard's profile page.
+
+![Edit own profile](../../assets/administration-extended-profile-07.png)
+
+> [!NOTE]
+> They cannot assign themselves to a member type. Using the "View profile" button, they can reach their front-end profile page in a new browser's tab.
+
+
</ins></span></pre></div>
<a id="trunkdocsuserassetsadministrationextendedprofile01png"></a>
<div class="binary"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: trunk/docs/user/assets/administration-extended-profile-01.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx" style="display: block; padding: 0 10px">Index: trunk/docs/user/assets/administration-extended-profile-01.png
</span><span class="cx" style="display: block; padding: 0 10px">===================================================================
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">--- trunk/docs/user/assets/administration-extended-profile-01.png        2024-07-24 08:36:35 UTC (rev 13974)
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+++ trunk/docs/user/assets/administration-extended-profile-01.png 2024-07-25 12:24:55 UTC (rev 13975)
</ins><span class="cx" style="display: block; padding: 0 10px">Property changes on: trunk/docs/user/assets/administration-extended-profile-01.png
</span><span class="cx" style="display: block; padding: 0 10px">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: svn:mime-type</h4></div>
<ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+image/png
</ins><span class="cx" style="display: block; padding: 0 10px">\ No newline at end of property
</span><a id="trunkdocsuserassetsadministrationextendedprofile02png"></a>
<div class="binary"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: trunk/docs/user/assets/administration-extended-profile-02.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx" style="display: block; padding: 0 10px">Index: trunk/docs/user/assets/administration-extended-profile-02.png
</span><span class="cx" style="display: block; padding: 0 10px">===================================================================
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">--- trunk/docs/user/assets/administration-extended-profile-02.png        2024-07-24 08:36:35 UTC (rev 13974)
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+++ trunk/docs/user/assets/administration-extended-profile-02.png 2024-07-25 12:24:55 UTC (rev 13975)
</ins><span class="cx" style="display: block; padding: 0 10px">Property changes on: trunk/docs/user/assets/administration-extended-profile-02.png
</span><span class="cx" style="display: block; padding: 0 10px">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: svn:mime-type</h4></div>
<ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+image/png
</ins><span class="cx" style="display: block; padding: 0 10px">\ No newline at end of property
</span><a id="trunkdocsuserassetsadministrationextendedprofile03png"></a>
<div class="binary"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: trunk/docs/user/assets/administration-extended-profile-03.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx" style="display: block; padding: 0 10px">Index: trunk/docs/user/assets/administration-extended-profile-03.png
</span><span class="cx" style="display: block; padding: 0 10px">===================================================================
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">--- trunk/docs/user/assets/administration-extended-profile-03.png        2024-07-24 08:36:35 UTC (rev 13974)
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+++ trunk/docs/user/assets/administration-extended-profile-03.png 2024-07-25 12:24:55 UTC (rev 13975)
</ins><span class="cx" style="display: block; padding: 0 10px">Property changes on: trunk/docs/user/assets/administration-extended-profile-03.png
</span><span class="cx" style="display: block; padding: 0 10px">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: svn:mime-type</h4></div>
<ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+image/png
</ins><span class="cx" style="display: block; padding: 0 10px">\ No newline at end of property
</span><a id="trunkdocsuserassetsadministrationextendedprofile04png"></a>
<div class="binary"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: trunk/docs/user/assets/administration-extended-profile-04.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx" style="display: block; padding: 0 10px">Index: trunk/docs/user/assets/administration-extended-profile-04.png
</span><span class="cx" style="display: block; padding: 0 10px">===================================================================
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">--- trunk/docs/user/assets/administration-extended-profile-04.png        2024-07-24 08:36:35 UTC (rev 13974)
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+++ trunk/docs/user/assets/administration-extended-profile-04.png 2024-07-25 12:24:55 UTC (rev 13975)
</ins><span class="cx" style="display: block; padding: 0 10px">Property changes on: trunk/docs/user/assets/administration-extended-profile-04.png
</span><span class="cx" style="display: block; padding: 0 10px">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: svn:mime-type</h4></div>
<ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+image/png
</ins><span class="cx" style="display: block; padding: 0 10px">\ No newline at end of property
</span><a id="trunkdocsuserassetsadministrationextendedprofile05png"></a>
<div class="binary"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: trunk/docs/user/assets/administration-extended-profile-05.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx" style="display: block; padding: 0 10px">Index: trunk/docs/user/assets/administration-extended-profile-05.png
</span><span class="cx" style="display: block; padding: 0 10px">===================================================================
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">--- trunk/docs/user/assets/administration-extended-profile-05.png        2024-07-24 08:36:35 UTC (rev 13974)
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+++ trunk/docs/user/assets/administration-extended-profile-05.png 2024-07-25 12:24:55 UTC (rev 13975)
</ins><span class="cx" style="display: block; padding: 0 10px">Property changes on: trunk/docs/user/assets/administration-extended-profile-05.png
</span><span class="cx" style="display: block; padding: 0 10px">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: svn:mime-type</h4></div>
<ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+image/png
</ins><span class="cx" style="display: block; padding: 0 10px">\ No newline at end of property
</span><a id="trunkdocsuserassetsadministrationextendedprofile06png"></a>
<div class="binary"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: trunk/docs/user/assets/administration-extended-profile-06.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx" style="display: block; padding: 0 10px">Index: trunk/docs/user/assets/administration-extended-profile-06.png
</span><span class="cx" style="display: block; padding: 0 10px">===================================================================
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">--- trunk/docs/user/assets/administration-extended-profile-06.png        2024-07-24 08:36:35 UTC (rev 13974)
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+++ trunk/docs/user/assets/administration-extended-profile-06.png 2024-07-25 12:24:55 UTC (rev 13975)
</ins><span class="cx" style="display: block; padding: 0 10px">Property changes on: trunk/docs/user/assets/administration-extended-profile-06.png
</span><span class="cx" style="display: block; padding: 0 10px">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: svn:mime-type</h4></div>
<ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+image/png
</ins><span class="cx" style="display: block; padding: 0 10px">\ No newline at end of property
</span><a id="trunkdocsuserassetsadministrationextendedprofile07png"></a>
<div class="binary"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: trunk/docs/user/assets/administration-extended-profile-07.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx" style="display: block; padding: 0 10px">Index: trunk/docs/user/assets/administration-extended-profile-07.png
</span><span class="cx" style="display: block; padding: 0 10px">===================================================================
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">--- trunk/docs/user/assets/administration-extended-profile-07.png        2024-07-24 08:36:35 UTC (rev 13974)
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+++ trunk/docs/user/assets/administration-extended-profile-07.png 2024-07-25 12:24:55 UTC (rev 13975)
</ins><span class="cx" style="display: block; padding: 0 10px">Property changes on: trunk/docs/user/assets/administration-extended-profile-07.png
</span><span class="cx" style="display: block; padding: 0 10px">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Added: svn:mime-type</h4></div>
<ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+image/png
</ins><span class="cx" style="display: block; padding: 0 10px">\ No newline at end of property
</span><a id="trunkdocsusermanifestjson"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/docs/user/manifest.json</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/docs/user/manifest.json     2024-07-24 08:36:35 UTC (rev 13974)
+++ trunk/docs/user/manifest.json       2024-07-25 12:24:55 UTC (rev 13975)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -108,6 +108,12 @@
</span><span class="cx" style="display: block; padding: 0 10px">                "parent": null
</span><span class="cx" style="display: block; padding: 0 10px">        },
</span><span class="cx" style="display: block; padding: 0 10px">        {
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                "title": "BuddyPress Extended Profile",
+               "slug": "administration-user-profile",
+               "markdown_source": "../user/administration/users/profile.md",
+               "parent": null
+       },
+       {
</ins><span class="cx" style="display: block; padding: 0 10px">                 "title": "BuddyPress Emails",
</span><span class="cx" style="display: block; padding: 0 10px">                "slug": "administration-emails",
</span><span class="cx" style="display: block; padding: 0 10px">                "markdown_source": "../user/administration/emails/README.md",
</span></span></pre></div>
<a id="trunksrcbpmembersadmincssadminrtlcss"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/bp-members/admin/css/admin-rtl.css</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/bp-members/admin/css/admin-rtl.css      2024-07-24 08:36:35 UTC (rev 13974)
+++ trunk/src/bp-members/admin/css/admin-rtl.css        2024-07-25 12:24:55 UTC (rev 13975)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -98,6 +98,10 @@
</span><span class="cx" style="display: block; padding: 0 10px">        float: right;
</span><span class="cx" style="display: block; padding: 0 10px"> }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+.bp-view-profile .dashicons {
+       vertical-align: sub;
+}
+
</ins><span class="cx" style="display: block; padding: 0 10px"> .alt {
</span><span class="cx" style="display: block; padding: 0 10px">        background: none;
</span><span class="cx" style="display: block; padding: 0 10px"> }
</span></span></pre></div>
<a id="trunksrcbpmembersadmincssadmincss"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/bp-members/admin/css/admin.css</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/bp-members/admin/css/admin.css  2024-07-24 08:36:35 UTC (rev 13974)
+++ trunk/src/bp-members/admin/css/admin.css    2024-07-25 12:24:55 UTC (rev 13975)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -98,6 +98,10 @@
</span><span class="cx" style="display: block; padding: 0 10px">        float: left;
</span><span class="cx" style="display: block; padding: 0 10px"> }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+.bp-view-profile .dashicons {
+       vertical-align: sub;
+}
+
</ins><span class="cx" style="display: block; padding: 0 10px"> .alt {
</span><span class="cx" style="display: block; padding: 0 10px">        background: none;
</span><span class="cx" style="display: block; padding: 0 10px"> }
</span></span></pre></div>
<a id="trunksrcbpmembersclassesclassbpmembersadminphp"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/bp-members/classes/class-bp-members-admin.php</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/bp-members/classes/class-bp-members-admin.php   2024-07-24 08:36:35 UTC (rev 13974)
+++ trunk/src/bp-members/classes/class-bp-members-admin.php     2024-07-25 12:24:55 UTC (rev 13975)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1228,16 +1228,8 @@
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                        <?php if ( empty( $this->is_self_profile ) ) : ?>
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                <?php if ( current_user_can( 'create_users' ) ) : ?>
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                         <?php $this->get_top_screen_button(); ?>
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                        <a href="user-new.php" class="page-title-action"><?php echo esc_html_x( 'Add New', 'user', 'buddypress' ); ?></a>
-
-                               <?php elseif ( is_multisite() && current_user_can( 'promote_users' ) ) : ?>
-
-                                       <a href="user-new.php" class="page-title-action"><?php echo esc_html_x( 'Add Existing', 'user', 'buddypress' ); ?></a>
-
-                               <?php endif; ?>
-
</del><span class="cx" style="display: block; padding: 0 10px">                         <?php endif; ?>
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                        <hr class="wp-header-end">
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1376,7 +1368,11 @@
</span><span class="cx" style="display: block; padding: 0 10px">                        <div id="major-publishing-actions">
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                <div id="publishing-action">
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                        <a class="button bp-view-profile" href="<?php echo esc_url( bp_members_get_user_url( $user->ID ) ); ?>" target="_blank"><?php esc_html_e( 'View Profile', 'buddypress' ); ?></a>
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                 <a class="button bp-view-profile" href="<?php echo esc_url( bp_members_get_user_url( $user->ID ) ); ?>" target="_blank">
+                                               <?php esc_html_e( 'View Profile', 'buddypress' ); ?>
+                                               <span class="dashicons dashicons-external" aria-hidden="true"></span>
+                                               <span class="screen-reader-text"><?php esc_html_e( '(opens in a new tab)', 'buddypress' ); ?>
+                                       </a>
</ins><span class="cx" style="display: block; padding: 0 10px">                                         <?php $disable_primary_action ? '' : submit_button( esc_html__( 'Update Profile', 'buddypress' ), 'primary', 'save', false ); ?>
</span><span class="cx" style="display: block; padding: 0 10px">                                </div>
</span><span class="cx" style="display: block; padding: 0 10px">                                <div class="clear"></div>
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -2361,16 +2357,9 @@
</span><span class="cx" style="display: block; padding: 0 10px">                <div class="wrap">
</span><span class="cx" style="display: block; padding: 0 10px">                        <h1 class="wp-heading-inline"><?php esc_html_e( 'Users', 'buddypress' ); ?></h1>
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        <?php if ( current_user_can( 'create_users' ) ) : ?>
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 <?php
+                       $this->get_top_screen_button();
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                <a href="user-new.php" class="page-title-action"><?php echo esc_html_x( 'Add New', 'user', 'buddypress' ); ?></a>
-
-                       <?php elseif ( is_multisite() && current_user_can( 'promote_users' ) ) : ?>
-
-                               <a href="user-new.php" class="page-title-action"><?php echo esc_html_x( 'Add Existing', 'user', 'buddypress' ); ?></a>
-
-                       <?php endif;
-
</del><span class="cx" style="display: block; padding: 0 10px">                         if ( $usersearch ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                printf( '<span class="subtitle">' . esc_html__( 'Search results for &#8220;%s&#8221;', 'buddypress' ) . '</span>', esc_html( $usersearch ) );
</span><span class="cx" style="display: block; padding: 0 10px">                        }
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -3439,5 +3428,24 @@
</span><span class="cx" style="display: block; padding: 0 10px">                <?php
</span><span class="cx" style="display: block; padding: 0 10px">        }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+        /**
+        * Outputs the Top Screen Action button for Users & Profile screens.
+        *
+        * @since 15.0.0
+        */
+       public function get_top_screen_button() {
+               if ( current_user_can( 'create_users' ) ) :
+               ?>
+
+                       <a href="user-new.php" class="page-title-action"><?php echo esc_html_x( 'Add New User', 'user', 'buddypress' ); ?></a>
+
+               <?php elseif ( is_multisite() && current_user_can( 'promote_users' ) ) : ?>
+
+                       <a href="user-new.php" class="page-title-action"><?php echo esc_html_x( 'Add Existing User', 'user', 'buddypress' ); ?></a>
+
+               <?php
+               endif;
+       }
+
</ins><span class="cx" style="display: block; padding: 0 10px"> }
</span><span class="cx" style="display: block; padding: 0 10px"> endif; // End class_exists check.
</span></span></pre>
</div>
</div>

</body>
</html>