jenkins-bot has submitted this change and it was merged. Change subject: Allow wikifarms to have global avatars ......................................................................
Allow wikifarms to have global avatars The new $wgAvatarKey can now be used to set a static avatar path between wikis, allowing global avatars Bug: T85070 Change-Id: I232e54b389b9c44f208a779dd0c96e46859fedb2 --- M SocialProfile.php M UserProfile/AvatarClass.php M UserProfile/SpecialRemoveAvatar.php M UserProfile/SpecialUploadAvatar.php 4 files changed, 45 insertions(+), 40 deletions(-) Approvals: Jack Phoenix: Looks good to me, approved jenkins-bot: Verified diff --git a/SocialProfile.php b/SocialProfile.php index 2a29658..afec7d9 100644 --- a/SocialProfile.php +++ b/SocialProfile.php @@ -98,6 +98,11 @@ // Whether to enable friending or not -- this doesn't do very much actually, so don't rely on it $wgFriendingEnabled = true; +// Prefix SocialProfile will use to store avatars +// for global avatars on a wikifarm or groups of wikis, +// set this to something static. +$wgAvatarKey = $wgDBname; + // Extension credits that show up on Special:Version $wgExtensionCredits['other'][] = array( 'path' => __FILE__, diff --git a/UserProfile/AvatarClass.php b/UserProfile/AvatarClass.php index 0e8b7ed..ac79e4d 100644 --- a/UserProfile/AvatarClass.php +++ b/UserProfile/AvatarClass.php @@ -34,7 +34,7 @@ * image size (s, m, ml or l) */ function getAvatarImage() { - global $wgDBname, $wgUploadDirectory, $wgMemc; + global $wgAvatarKey, $wgUploadDirectory, $wgMemc; $key = wfMemcKey( 'user', 'profile', 'avatar', $this->user_id, $this->avatar_size ); $data = $wgMemc->get( $key ); @@ -43,7 +43,7 @@ if ( $data ) { $avatar_filename = $data; } else { - $files = glob( $wgUploadDirectory . '/avatars/' . $wgDBname . '_' . $this->user_id . '_' . $this->avatar_size . "*" ); + $files = glob( $wgUploadDirectory . '/avatars/' . $wgAvatarKey . '_' . $this->user_id . '_' . $this->avatar_size . "*" ); if ( !isset( $files[0] ) || !$files[0] ) { $avatar_filename = 'default_' . $this->avatar_size . '.gif'; } else { diff --git a/UserProfile/SpecialRemoveAvatar.php b/UserProfile/SpecialRemoveAvatar.php index 4b02648..d7eac29 100644 --- a/UserProfile/SpecialRemoveAvatar.php +++ b/UserProfile/SpecialRemoveAvatar.php @@ -149,10 +149,10 @@ * Doesn't really matter since we're just going to blast 'em all. */ private function deleteImage( $id, $size ) { - global $wgUploadDirectory, $wgDBname, $wgMemc; + global $wgUploadDirectory, $wgAvatarKey, $wgMemc; $avatar = new wAvatar( $id, $size ); - $files = glob( $wgUploadDirectory . '/avatars/' . $wgDBname . '_' . $id . '_' . $size . "*" ); + $files = glob( $wgUploadDirectory . '/avatars/' . $wgAvatarKey . '_' . $id . '_' . $size . "*" ); wfSuppressWarnings(); $img = basename( $files[0] ); wfRestoreWarnings(); diff --git a/UserProfile/SpecialUploadAvatar.php b/UserProfile/SpecialUploadAvatar.php index c428f19..d2404ab 100644 --- a/UserProfile/SpecialUploadAvatar.php +++ b/UserProfile/SpecialUploadAvatar.php @@ -67,7 +67,7 @@ * @param $ext String: file extension (gif, jpg or png) */ private function showSuccess( $ext ) { - global $wgDBname, $wgUploadPath, $wgUploadAvatarInRecentChanges; + global $wgAvatarKey, $wgUploadPath, $wgUploadAvatarInRecentChanges; $user = $this->getUser(); $log = new LogPage( 'avatar' ); @@ -95,7 +95,7 @@ $this->msg( 'user-profile-picture-large' )->plain() . '</td> <td style="padding-bottom:20px;"> - <img src="' . $wgUploadPath . '/avatars/' . $wgDBname . '_' . $uid . '_l.' . $ext . '?ts=' . rand() . '" alt="" border="0" /> + <img src="' . $wgUploadPath . '/avatars/' . $wgAvatarKey . '_' . $uid . '_l.' . $ext . '?ts=' . rand() . '" alt="" border="0" /> </td> </tr>'; $output .= '<tr> @@ -103,7 +103,7 @@ $this->msg( 'user-profile-picture-medlarge' )->plain() . '</td> <td style="padding-bottom:20px;"> - <img src="' . $wgUploadPath . '/avatars/' . $wgDBname . '_' . $uid . '_ml.' . $ext . '?ts=' . rand() . '" alt="" border="0" /> + <img src="' . $wgUploadPath . '/avatars/' . $wgAvatarKey . '_' . $uid . '_ml.' . $ext . '?ts=' . rand() . '" alt="" border="0" /> </td> </tr>'; $output .= '<tr> @@ -111,7 +111,7 @@ $this->msg( 'user-profile-picture-medium' )->plain() . '</td> <td style="padding-bottom:20px;"> - <img src="' . $wgUploadPath . '/avatars/' . $wgDBname . '_' . $uid . '_m.' . $ext . '?ts=' . rand() . '" alt="" border="0" /> + <img src="' . $wgUploadPath . '/avatars/' . $wgAvatarKey . '_' . $uid . '_m.' . $ext . '?ts=' . rand() . '" alt="" border="0" /> </td> </tr>'; $output .= '<tr> @@ -119,7 +119,7 @@ $this->msg( 'user-profile-picture-small' )->plain() . '</td> <td style="padding-bottom:20px;"> - <img src="' . $wgUploadPath . '/avatars/' . $wgDBname . '_' . $uid . '_s.' . $ext . '?ts=' . rand() . '" alt="" border="0" /> + <img src="' . $wgUploadPath . '/avatars/' . $wgAvatarKey . '_' . $uid . '_s.' . $ext . '?ts=' . rand() . '" alt="" border="0" /> </td> </tr>'; $output .= '<tr> @@ -229,9 +229,9 @@ * @return String: full img HTML tag */ function getAvatar( $size ) { - global $wgDBname, $wgUploadDirectory, $wgUploadPath; + global $wgAvatarKey, $wgUploadDirectory, $wgUploadPath; $files = glob( - $wgUploadDirectory . '/avatars/' . $wgDBname . '_' . + $wgUploadDirectory . '/avatars/' . $wgAvatarKey . '_' . $this->getUser()->getID() . '_' . $size . '*' ); if ( isset( $files[0] ) && $files[0] ) { @@ -346,7 +346,7 @@ * Create the thumbnails and delete old files */ public function performUpload( $comment, $pageText, $watch, $user ) { - global $wgUploadDirectory, $wgDBname, $wgMemc; + global $wgUploadDirectory, $wgAvatarKey, $wgMemc; $this->avatarUploadDirectory = $wgUploadDirectory . '/avatars'; @@ -377,51 +377,51 @@ $stats->incStatField( 'user_image' ); } - $this->createThumbnail( $this->mTempPath, $imageInfo, $wgDBname . '_' . $uid . '_l', 75 ); - $this->createThumbnail( $this->mTempPath, $imageInfo, $wgDBname . '_' . $uid . '_ml', 50 ); - $this->createThumbnail( $this->mTempPath, $imageInfo, $wgDBname . '_' . $uid . '_m', 30 ); - $this->createThumbnail( $this->mTempPath, $imageInfo, $wgDBname . '_' . $uid . '_s', 16 ); + $this->createThumbnail( $this->mTempPath, $imageInfo, $wgAvatarKey . '_' . $uid . '_l', 75 ); + $this->createThumbnail( $this->mTempPath, $imageInfo, $wgAvatarKey . '_' . $uid . '_ml', 50 ); + $this->createThumbnail( $this->mTempPath, $imageInfo, $wgAvatarKey . '_' . $uid . '_m', 30 ); + $this->createThumbnail( $this->mTempPath, $imageInfo, $wgAvatarKey . '_' . $uid . '_s', 16 ); if ( $ext != 'jpg' ) { - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_s.jpg' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_s.jpg' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_s.jpg' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_s.jpg' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_m.jpg' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_m.jpg' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_m.jpg' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_m.jpg' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_l.jpg' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_l.jpg' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_l.jpg' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_l.jpg' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_ml.jpg' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_ml.jpg' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_ml.jpg' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_ml.jpg' ); } } if ( $ext != 'gif' ) { - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_s.gif' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_s.gif' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_s.gif' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_s.gif' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_m.gif' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_m.gif' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_m.gif' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_m.gif' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_l.gif' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_l.gif' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_l.gif' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_l.gif' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_ml.gif' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_ml.gif' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_ml.gif' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_ml.gif' ); } } if ( $ext != 'png' ) { - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_s.png' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_s.png' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_s.png' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_s.png' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_m.png' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_m.png' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_m.png' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_m.png' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_l.png' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_l.png' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_l.png' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_l.png' ); } - if ( is_file( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_ml.png' ) ) { - unlink( $this->avatarUploadDirectory . '/' . $wgDBname . '_' . $uid . '_ml.png' ); + if ( is_file( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_ml.png' ) ) { + unlink( $this->avatarUploadDirectory . '/' . $wgAvatarKey . '_' . $uid . '_ml.png' ); } } -- To view, visit https://gerrit.wikimedia.org/r/182357 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I232e54b389b9c44f208a779dd0c96e46859fedb2 Gerrit-PatchSet: 6 Gerrit-Project: mediawiki/extensions/SocialProfile Gerrit-Branch: master Gerrit-Owner: UltrasonicNXT <adamr_car...@btinternet.com> Gerrit-Reviewer: Jack Phoenix <j...@countervandalism.net> Gerrit-Reviewer: Lewis Cawte <le...@lewiscawte.me> Gerrit-Reviewer: UltrasonicNXT <adamr_car...@btinternet.com> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits