Skip to content

Commit 35ecc53

Browse files
committed
Remove permissions for avatar file extensions
The permission exists for historical reasons, but serves no real purpose. There are no meaningful file extensions that the administrator could add. Incorrect input also causes the upload process to stop working. ref https://www.woltlab.com/community/thread/315897-fehler-bei-avatar-bearbeiten/
1 parent 4607a7a commit 35ecc53

4 files changed

Lines changed: 10 additions & 16 deletions

File tree

com.woltlab.wcf/userGroupOption.xml

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -802,20 +802,9 @@ bmp</defaultvalue>
802802
<categoryname>user.profile.avatar</categoryname>
803803
<optiontype>boolean</optiontype>
804804
<defaultvalue>0</defaultvalue>
805-
<enableoptions>user.profile.avatar.allowedFileExtensions</enableoptions>
806805
<usersonly>1</usersonly>
807806
<userdefaultvalue>1</userdefaultvalue>
808807
</option>
809-
<option name="user.profile.avatar.allowedFileExtensions">
810-
<categoryname>user.profile.avatar</categoryname>
811-
<optiontype>lineBreakSeparatedText</optiontype>
812-
<defaultvalue>gif
813-
jpg
814-
jpeg
815-
png
816-
webp</defaultvalue>
817-
<usersonly>1</usersonly>
818-
</option>
819808
<option name="user.profile.coverPhoto.canSeeCoverPhotos">
820809
<categoryname>user.profile.coverPhoto</categoryname>
821810
<optiontype>boolean</optiontype>
@@ -1075,5 +1064,6 @@ webp</defaultvalue>
10751064
<delete>
10761065
<option name="user.profile.avatar.maxSize"/>
10771066
<option name="admin.configuration.package.canUninstallPackage"/>
1067+
<option name="user.profile.avatar.allowedFileExtensions"/>
10781068
</delete>
10791069
</data>

wcfsetup/install/files/lib/system/file/processor/UserAvatarFileProcessor.class.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,13 @@ public function getObjectTypeName(): string
3838
#[\Override]
3939
public function getAllowedFileExtensions(array $context): array
4040
{
41-
return \explode("\n", WCF::getSession()->getPermission('user.profile.avatar.allowedFileExtensions'));
41+
return [
42+
"png",
43+
"jpg",
44+
"jpeg",
45+
"gif",
46+
"webp",
47+
];
4248
}
4349

4450
#[\Override]

wcfsetup/install/lang/de.xml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -811,7 +811,6 @@ Sie erreichen das Fehlerprotokoll unter: {link controller='ExceptionLogView' isE
811811
<item name="wcf.acp.group.option.category.user.profile.avatar"><![CDATA[Avatare]]></item>
812812
<item name="wcf.acp.group.option.category.admin.user.rank"><![CDATA[Benutzerränge]]></item>
813813
<item name="wcf.acp.group.option.category.user.signature"><![CDATA[Signaturen]]></item>
814-
<item name="wcf.acp.group.option.user.profile.avatar.allowedFileExtensions"><![CDATA[Erlaubte Dateiendungen]]></item>
815814
<item name="wcf.acp.group.option.user.profile.avatar.canSeeAvatars"><![CDATA[Kann Avatare anderer Benutzer sehen]]></item>
816815
<item name="wcf.acp.group.option.user.profile.avatar.canUploadAvatar"><![CDATA[Kann eigenen Avatar hochladen]]></item>
817816
<item name="wcf.acp.group.option.user.profile.canChangeEmail"><![CDATA[Kann E-Mail-Adresse ändern]]></item>
@@ -5260,7 +5259,7 @@ Sobald {if LANGUAGE_USE_INFORMAL_VARIANT}dein{else}Ihr{/if} Benutzerkonto freige
52605259
<item name="wcf.user.avatar"><![CDATA[Avatar]]></item>
52615260
<item name="wcf.user.avatar.edit"><![CDATA[Avatar bearbeiten]]></item>
52625261
<item name="wcf.user.avatar.error.disabled"><![CDATA[Der Administrator hat{if $__wcf->user->avatarID} {if LANGUAGE_USE_INFORMAL_VARIANT}deinen{else}Ihren{/if} derzeitigen Avatar gesperrt und{/if} {if LANGUAGE_USE_INFORMAL_VARIANT}dir{else}Ihnen{/if} die weitere Nutzungsberechtigung der Avatar-Funktion {if !$__wcf->user->disableAvatarReason}entzogen.{else} aus folgenden Gründen entzogen: {$__wcf->user->disableAvatarReason}{/if}]]></item>
5263-
<item name="wcf.user.avatar.type.custom.description"><![CDATA[Eigene Avatare dürfen die Dateiendungen {"\n"|str_replace:', ':$__wcf->session->getPermission('user.profile.avatar.allowedFileExtensions')} besitzen.<br>Die Mindestgröße für Avatare liegt bei 128 × 128 Pixel.]]></item>
5262+
<item name="wcf.user.avatar.type.custom.description"><![CDATA[Eigene Avatare dürfen die Dateiendungen gif, jpg, jpeg, png, webp besitzen.<br>Die Mindestgröße für Avatare liegt bei 128 × 128 Pixel.]]></item>
52645263
</category>
52655264
<category name="wcf.user.condition">
52665265
<item name="wcf.user.condition.activityPoints"><![CDATA[Punkte]]></item>

wcfsetup/install/lang/en.xml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -787,7 +787,6 @@ You can access the error log at: {link controller='ExceptionLogView' isEmail=tru
787787
<item name="wcf.acp.group.option.category.user.profile.avatar"><![CDATA[Avatars]]></item>
788788
<item name="wcf.acp.group.option.category.admin.user.rank"><![CDATA[User Ranks]]></item>
789789
<item name="wcf.acp.group.option.category.user.signature"><![CDATA[Signatures]]></item>
790-
<item name="wcf.acp.group.option.user.profile.avatar.allowedFileExtensions"><![CDATA[Allowed Image Extensions]]></item>
791790
<item name="wcf.acp.group.option.user.profile.avatar.canSeeAvatars"><![CDATA[Can view users’ avatars]]></item>
792791
<item name="wcf.acp.group.option.user.profile.avatar.canUploadAvatar"><![CDATA[Can upload their avatar]]></item>
793792
<item name="wcf.acp.group.option.user.profile.canChangeEmail"><![CDATA[Can change their email address]]></item>
@@ -5259,7 +5258,7 @@ You also received a list of backup codes to use when your second factor becomes
52595258
<item name="wcf.user.avatar"><![CDATA[Avatar]]></item>
52605259
<item name="wcf.user.avatar.edit"><![CDATA[Edit Avatar]]></item>
52615260
<item name="wcf.user.avatar.error.disabled"><![CDATA[The administrators {if $__wcf->user->avatarID}have blocked your avatar and {/if}disallowed you from using an avatar{if $__wcf->user->disableAvatarReason}: {$__wcf->user->disableAvatarReason}{/if}.]]></item>
5262-
<item name="wcf.user.avatar.type.custom.description"><![CDATA[You may use the following file extensions “{"\n"|str_replace:', ':$__wcf->session->getPermission('user.profile.avatar.allowedFileExtensions')}” for your avatar.<br>The minimum dimensions are 128 × 128 pixels.]]></item>
5261+
<item name="wcf.user.avatar.type.custom.description"><![CDATA[You may use the following file extensions “gif, jpg, jpeg, png, webp” for your avatar.<br>The minimum dimensions are 128 × 128 pixels.]]></item>
52635262
</category>
52645263
<category name="wcf.user.condition">
52655264
<item name="wcf.user.condition.activityPoints"><![CDATA[Points]]></item>

0 commit comments

Comments
 (0)