Extension:SocialProfile

MediaWiki extensions manual
Social Profile
Release status: stable
Implementation Special page , Database , Ajax
Description Incorporates multiple social features into MediaWiki for communities
Author(s)
Latest version 1.14 (Continuous updates (see MediaWiki compatibility))
MediaWiki 1.39+
Database changes Yes
License GNU General Public License 2.0 or later
Download Template:WikimediaDownload/gerritonly
Example Brickipedia, the LEGO Wiki
  • $wgUserPageChoice
  • $wgUpdateProfileInRecentChanges
  • $wgUploadAvatarInRecentChanges
  • $wgUserProfileDisplay
  • $wgUserProfileThresholds
  • $wgUserLevels
  • $wgNamespacesForEditPoints
  • $wgUserStatsPointValues
  • avatarremove
  • awardsmanage
  • editothersprofiles
  • giftadmin
  • updatepoints
  • userboard-delete
Quarterly downloads 76 (Ranked 64th)
Translate the SocialProfile extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

The SocialProfile extension incorporates a social profile, user board, and basic profile info into MediaWiki, specifically avatars, befriending, foeing, user board, board blast, user levels rank system, awards and gifts. The package also notifies users via email when other users request them as a friend or foe and/or sends them a message.

Install

  • If you use the ExtensionDistributor to download SocialProfile, make sure that you select "master (latest development version)"; older versions are guaranteed to have lots of bugs and they are unmaintained, while master is always up-to-date and contains the newest features and bugfixes! See social tools' MediaWiki compatibility policy for more info.
  • You can also use git, like so:
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/SocialProfile


  • Download the master branch and place the file(s) in a directory called SocialProfile in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php file:
    require_once "$IP/extensions/SocialProfile/SocialProfile.php";
    
  • Run the update script which will automatically create the necessary database tables that this extension needs.
  • The following directories should exist under the wiki's $wgUploadDirectory :
    • avatars/ — The directory where all user-uploaded avatar images are stored
    • awards/ — System gift (award) and normal gift images will be stored here
    • Move the directory awards/ from extensions/SocialProfile into the images directory that is used in your MediaWiki installation. This directory should be writable. The images included in this folder by default can be used for awards if you upload them through Special:SystemGiftManagerLogo, but they won't show up as "defaults" the same way avatar default images do show up.
    • Move the directory avatars from extensions/SocialProfile into the images directory used in your MediaWiki installation. This directory should be writable.
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Parser functions

  • {{#avatar:Username}} - retrieves the avatar picture for the specified user.
  • {{#randomuserswithavatars}}
  • {{#newusers}}

User Options

  • echo-subscriptions-web-social-rel (requires Echo extension installed)
  • echo-subscriptions-email-social-rel (requires Echo extension installed)

Configuration variables

$wgUserProfileDisplay['board'] = true;
$wgUserProfileDisplay['foes'] = true;
$wgUserProfileDisplay['friends'] = true;
$wgUserProfileDisplay['avatar'] = true; // If set to false, disables both avatar display and upload
$wgUserBoard = true;
$wgFriendingEnabled = true;
$wgAvatarKey = $wgDBname;
$wgUserPageChoice = true;
$wgUserProfileAvatarsInDiffs = true;

There are some further configuration variables introduced in a later update for wikis that are using an external storage solution for their images (such as Amazon S3 or Swift). SocialProfile needs to be told explicitly to use this external storage for avatars etc., or it will upload them to the local server anyway.

For example, when using S3, you need to explicitly set the backend to S3, the privacy of the file to public, and the file path for avatars:

$wgSocialProfileFileBackend = 'AmazonS3';
$wgAWSRepoZones['avatars'] = [
 'container' => 'avatars',
 'path' => "/avatars",
 'isPublic' => true
];

Notes

  • Upgrading - If you are upgrading from SocialProfile version 1.2 or older, you'll need to create four new database tables manually: gift, system_gift, user_gift, user_system_gift. If you're upgrading from 1.3, you'll need to create user_system_messages database table.
  • Since r93317, SocialProfile's namespaces are automagically registered, so you do not need to add them to $wgExtraNamespaces .
  • SocialProfile uses either ImageMagick or PHP's built-in GD library (since r93067), depending on which one is available, for creating the resized avatar, award and gift image files.
  • Newer version of the Vector skin ("Vector-2022", informally also "new Vector") and some other inconsistent skins "no longer" support the visualClear CSS class, thus causing the social user profile pages to render incorrectly. Fixing it locally should be as simple as adding this to your wiki's MediaWiki:Vector.css or equivalent MediaWiki:<skinname>.css page:
    /*  visualClear CSS class definition for [[mw:Extension:SocialProfile]]
        because Vector does not include the definition anymore; see
        https://phabricator.wikimedia.org/T328235 and 
        https://phabricator.wikimedia.org/T287962 */
    .visualClear {
    	clear: both;
    }
    

Reporting bugs

Screenshots