gitea/modules/setting
wxiaoguang 82224c54e0
Improve avatar uploading / resizing / compressing, remove Fomantic card module (#24653)
Fixes: #8972
Fixes: #24263

And I think it also (partially) fix #24263 (no need to convert) ,
because users could upload any supported image format if it isn't larger
than AVATAR_MAX_ORIGIN_SIZE


The main idea: 

* if the uploaded file size is not larger than AVATAR_MAX_ORIGIN_SIZE,
use the origin
* if the resized size is larger than the origin, use the origin

Screenshots:

JPG:

<details>


![image](https://github.com/go-gitea/gitea/assets/2114189/70e98bb0-ecb9-4c4e-a89f-4a37d4e37f8e)

</details>

APNG:

<details>


![image](https://github.com/go-gitea/gitea/assets/2114189/9055135b-5e2d-4152-bd72-596fcb7c6671)


![image](https://github.com/go-gitea/gitea/assets/2114189/50364caf-f7f6-4241-a289-e485fe4cd582)

</details>

WebP (animated)

<details>


![image](https://github.com/go-gitea/gitea/assets/2114189/f642eb85-498a-49a5-86bf-0a7b04089ae0)

</details>

The only exception: if a WebP image is larger than MaxOriginSize and it
is animated, then current `webp` package can't decode it, so only in
this case it isn't supported. IMO no need to support such case: why a
user would upload a 1MB animated webp as avatar? crazy .....

---------

Co-authored-by: silverwind <me@silverwind.io>
2023-05-13 20:59:11 +02:00
..
actions.go
admin.go
api.go
asset_dynamic.go Use a general approach to access custom/static/builtin assets (#24022) 2023-04-12 18:16:45 +08:00
asset_static.go Use a general approach to access custom/static/builtin assets (#24022) 2023-04-12 18:16:45 +08:00
attachment.go
cache.go
camo.go
config_provider.go Remove unnecessary code (#24610) 2023-05-10 04:57:06 +00:00
cors.go Fix incorrect CORS default values (#24206) 2023-04-19 15:30:10 -04:00
cron.go
cron_test.go Rewrite queue (#24505) 2023-05-08 19:49:59 +08:00
database.go
database_sqlite.go
database_test.go
federation.go
git.go
highlight.go
i18n.go
incoming_email.go
indexer.go Rewrite queue (#24505) 2023-05-08 19:49:59 +08:00
indexer_test.go
lfs.go Increase default LFS auth timeout from 20m to 24h (#24628) 2023-05-10 22:23:47 +08:00
log.go Refactor config provider (#24245) 2023-04-25 23:06:39 +08:00
mailer.go
mailer_test.go Remove unnecessary code (#24610) 2023-05-10 04:57:06 +00:00
markup.go Add .livemd as a markdown extension (#22730) 2023-04-26 11:22:54 -04:00
metrics.go
migrations.go
mime_type_map.go
mirror.go
oauth2.go Refactor config provider (#24245) 2023-04-25 23:06:39 +08:00
other.go Refactor `setting.Other` and remove unused `SHOW_FOOTER_BRANDING` (#24270) 2023-04-22 19:38:25 -04:00
packages.go Add Alpine package registry (#23714) 2023-05-12 17:27:50 +00:00
packages_test.go Remove unnecessary code (#24610) 2023-05-10 04:57:06 +00:00
picture.go Improve avatar uploading / resizing / compressing, remove Fomantic card module (#24653) 2023-05-13 20:59:11 +02:00
project.go
proxy.go
queue.go Rewrite queue (#24505) 2023-05-08 19:49:59 +08:00
repository.go Support SSH for go get (#24664) 2023-05-12 09:44:37 +00:00
security.go Refactor config provider (#24245) 2023-04-25 23:06:39 +08:00
server.go
service.go
session.go Refactor cookie (#24107) 2023-04-13 15:45:33 -04:00
setting.go Merge setting.InitXXX into one function with options (#24389) 2023-05-04 11:55:35 +08:00
setting_test.go
ssh.go
storage.go Refactor config provider (#24245) 2023-04-25 23:06:39 +08:00
storage_test.go Rewrite queue (#24505) 2023-05-08 19:49:59 +08:00
task.go
time.go Remove unused setting `time.FORMAT` (#24430) 2023-04-29 22:51:43 +02:00
ui.go Don't set meta `theme-color` by default (#24340) 2023-04-26 00:56:42 -04:00
webhook.go