Releases: prinsss/blessing-skin-server
v3.5.0 Cinderella makes her exit.
中文版更新日志看这里:CHANGELOG
Still remember this release note? Great. There's no doubt that our Cinderella did a good job in the past two years. Now, it's time for her to make a beautiful exit. May we meet again, at a new stage.
- [New] Official plugin marketplace!
- [New] A brand-new manage page for pluigns
- [New] Built-in user email verification system
- [New] Sending emails via Mailgun, Amazon SES and sendmail
- [New] Auto steve/alex model detection when uploading skins
- [New] Drag and drop to upload files
- [New] Cloud storage support for textures (see
texture-qcloud-cos
plugin etc.) - [New] More player name validation rules
- [New] Support custom validation rule for texture name by regular expressions
- [New] Show texture's "likes" count on skinlib page
- [New] Add quick-apply button to skinlib.show page
- [New] Support changing texture model from skinlib
- [New] Option for requiring player name when register
- [New] Option for denying directly downloading textures
- [New] L10n support for announcement and copyright text, site name and description
- [New] Allow customizing homepage by overriding translation strings
- [New] Plugins:
single-player-limit
,get-score-by-sharing
,invitation-codes
- [Improved] Remove dependency on php extension fileinfo
- [Improved] A much more stable data integration system (see plugins)
- [Improved] Performance of static routes
- [Improved] Security of login attempts limit and password resetting
- [Improved] Restrict
admin/plugins
,admin/udapte
access to super admin only - [Improved] Return 204 instead of 200 for CDN cache
- [Improved] Generate random salt and app key by default on setup wizard
- [Improved] Update
.htaccess
andweb.config
- [Improved] Update all translations in program
- [Improved] Set model preference to slim when applying slim skin to new players
- [Improved] Add more detailed introduction for "model preference" on player page
- [Improved] Update
report-textures
plugin - [Improved] Update
batch-import
plugin for a better performance - [Improved] Update
yggdrasil-api
plugin - [Improved] Support connecting to Redis with unix socket
- [Improved] Remove hash algorithm
CrazyCrypt1
- [Improved] Specify update source by
.env
variable - [Improved] Use
MAIL_DRIVER
but notMAIL_HOST
to determine if email service available - [Improved] Remove
Expires
header from png responses - [Improved] Better error notice on users and players manage page
- [Improved] Use swal to show error message on some pages
- [Improved] Show FAQ link on fatal error modal
- [Improved] Log the exceptions thrown by email service in detail
- [Improved] Add read permission check for
.env
- [Improved] A new style for console message
- [Fixed] Texture preview of alex skins
- [Fixed] CSRF verification and XSS prevention on some pages
- [Fixed]
414 Request-URI Too Large
on plugin manage page under CDN - [Fixed] Wrong timezone of
Last-Modified
header - [Fixed] Patch for
Undefined property: stdClass::$column_name
- [Fixed] Maximum password length sometimes changes
- [Fixed] Wrong error message for empty CAPTCHA
- [Plugin Dev][New] Dependency definition for plugins
- [Plugin Dev][New] Support composer autoload in plugins
- [Plugin Dev][New] Load plugins from
PLUGINS_DIR
andPLUGINS_URL
- [Plugin Dev][New] Global dependency
guzzlehttp/guzzle
- [Plugin Dev][Improved] Deprecate
App\Services\Utils
, use helper functions instead - [Plugin Dev][Fixed] Big menu offset for
Hook::addMenuItem
v3.4.0 with a brand-new 3D skin preview!
中文版更新日志看这里:CHANGELOG
- [New] 3D skin preview now supports double-layer skin and alex model (thx to skinview3d)!
- [New] Support SQLite databases (theoretically support PostgreSQL too)
- [New] Button to clear selected textures in closet
- [New] Support PHP 7.2 (with patch installed)
- [Improved] Adjust allowed maximum password length to 32
- [Improved] Add plugin configs to sidebar menu and flatten multi-level menu
- [Improved] Do some checks before updating player profile
- [Improved] Update score after removing textures
- [Improved] Optimize SQL queries on view admin.index
- [Improved] Adjust the style of overview chart on admin.index
- [Improved] Check existing tables before running database migrations
- [Improved] Check for escapeshellarg function before installation
- [Improved] Return 403 instead when accessing private textures #111
- [Fixed] 2D skin preview for alex model
- [Fixed] Broken i18n detection on Edge & IE
- [Fixed] Using JavaScript protocol in a.href doesn't work in Firefox #105
- [Fixed] Set UTF-8 encoding for error messages
v3.3.2 emmm, okay, just some minor bug fixes
中文版更新日志看这里:CHANGELOG
- [Fixed] Add score check before setting privacy
- [Fixed] Fix adding texture to closet
- [Fixed] Fix missing texture type after renaming item in closet
- [Fixed] Add security check before resetting password
- [Improved] Update .htaccess
- [Improved] Add license exceptions for plugins #98
- [Improved] Responsive design for closet #89
- [Improved] Add a option for adding a player after registered
- [Improved] Try to avoid using site url which ends with index.php #101
v3.3.1 yes, I mean, it's the final version
中文版更新日志看这里:CHANGELOG
- [Fixed] Signing out after changing password
- [Fixed] Adding event listener on newer version of jQuery
- [Fixed] Error when operating admin himself
- [Fixed] Error when removing items from closet
- [Fixed] Translation of getting textures
- [Fixed] Minor bug about error log
- [Improved] Enhance detection of mobile browser scrolling #80
- [Improved] Adjust frequency of sending feedbacks
- [Improved] Use default background image when option leaved empty
- [Improved] Show precision time when sign remaining time is less than 1 hour
- [Improved] Skip copying vendor if error occurred when upgrading
- [Improved] Add Chinese translation for dependency check
- [Improved] Add option destroyOnClose for showModal
- [Improved] Enhance clearing compiled views
v3.3 may be the final version
中文更新内容请看这里:CHANGELOG
Note: Please delete all cached files in /storage/framework/views
after upgrading, clean your browser cache and CDN cache to ensure the new style works well.
- [New] Ajax pagiantion, filter and instant search for skinlib and closet page
- [New] Option of "Clear Filters" at skinlib
- [New] Select which type to be cleared when clearing player's texture
- [New] Modify player name at admin page
- [New] Show the total count of players owned by the user at admin page
- [New] Navigate between users and players manage page
- [New] Add link to admin page on the user menu (expaned when clicking the avatar)
- [New] Add option of customizing which method to used for detecting user's IP address
- [New] Check for write permission of
storage
,resources
,plugins
directory - [New] Chinese translation of exception when using low version of PHP or dependencies uninstalled
- [New] Throw exception when two plugins use the same name difinition
- [New] Add test for JavaScript files (Great thanks to @g-plane)
- [New] The plugin "Config Generator" now supports CustomSkinLoader's ExtraList
- [New] Add new plugins: "Profile File Cache", "Texture Report", "Yggdrasil API" etc.
- [Improved] Update input value automatically after new file are selected when uploading textures
- [Improved] Delete invalid textures (deleted or set as private) from closets automatically
- [Improved] Clicking the gear icon of one closet item will not update the preview now
- [Improved] The input will lose focus automatically after setting new score at admin page
- [Improved] The performance of users, players and plugins list at admin page
- [Improved] The notice of modifying player name is more particular now
- [Improved] Use pretty
sweetalert2
instead of native alerts - [Improved] Display the corresponding nickname instantly when transfering the player via UID
- [Improved] The original name will be filled automatically when changing texture name
- [Improved] The noticing text about returning scores depends on the option now
- [Improved] Admin can not operate players of other admins or super admins now
- [Improved] Redirect to the last url that tried to access after logged in
- [Improved] The year in copyright on the page foot will be automatically generated
- [Improved] Add place holder for homepage background image
- [Improved] Add detection for HD skins
- [Improved] The stability of "Data Integration" plugin
- [Improved] Adjust the style of login page
- [Improved] User experience of skinlib page
- [Improved] Combine "User Center" and "Players" to one page when data integration is on
- [Improved] Deprecate Bower & Laravel Elixir, use Yarn instead, add ESLint syntax check
- [Improved] Refactor and modulize JavaScript files using ES6
- [Improved] Update AdminLTE, jQuery and other dependencies to the latest version
- [Fixed] XSS when searching skinlib
- [Fixed] Typo in language files
- [Fixed] Not redirecting after updating profiles
- [Fixed] The original filters won't be cleared after changing language now
- [Fixed] Not checking new email to be occupied when changing email
- [Fixed] 3D preview still displays cape after clicking a player whose cape is empty
- [Fixed] The wrong link of texture preview on "Player Manage" page
- [Fixed] The own private textures of the user don't exist in skinlib
- [Fixed] The minimal password length requirement change to 6 except when changing password
- [Fixed] The minimal password lenght of super admin change to 8 when installing
- [Fixed] Password encryption when integrating to CrazyLogin
- [Fixed] Problem occurred when user's score is less then score rate
v3.2.1 with security updates & bug fixes
- [New] option for generating random APP_KEY & SALT when setup
- [New] support hashing passwords with password_hash()
- [New] useful functions for plugins e.g.
plugin()
&plugin_assets()
- [New] language-chooser fon error pages
- [New] JavaScript helper function url()
- [New] option for sending usage statistics
- [New] support for callback of enabling/disabling/deleting plugins
- [New] url field for plugins' package.json
- [Improved] remove default breadcrumb
- [Improved] directory structure of assets
- [Improved] load default favicon when option value is empty
- [Improved] now maximum password length is extended to 64
- [Improved] use hash_equals() to compare password hash
- [Improved] encrypt token cookie
- [Improved] update custom error pages
- [Improved] clear compiled view cache when updating
- [Improved] update error messages for stupids
- [Improved] print a brand on every pages' console
- [Improved] show current role at user/admin panel
- [Fixed] horizonal scroll of datatables
- [Fixed] searching closet
- [Fixed] font-weight of sweet alerts
- [Fixed] determining request protocol behind load balancer & proxies
- [Fixed] ciphers unavailable
- [Fixed] division by zero when option value is set to 0
v3.2 with awesome plugins & stability improvements!
- [New] awesome plugin system!
- [New] completely internationalized
- [New] option for customizing favicon
- [New] option for score consumption of adding to closet
- [New] option for returning score when deleting textures
- [New] option for auto detecting asset url
- [New] Markdown support for site announcement
- [New] accurate runtime environment check
- [New] many styles for copyright text (modifying copyright text is not permitted now)
- [New] support for memcache
- [New] add some application information for javascript (access by variable
blessing
) - [New] ability of selecting multi textures at closet
- [New] log for password resetting
- [New] add last-modified header for json profiles
- [New] graph of user registration & texture upload
- [Improved] brand-new landing page
- [Improved] now we have an awesome progress bar when download updates
- [Improved] use jQuery DataTable for showing user/player/plugin management
- [Improved] show custom error page when APP_DEBUG is false
- [Improved] add RewriteBase to .htaccess
- [Improved] cache, config generator etc. are now available as plugins
- [Improved] flexible update sources for updating
- [Fixed] IIS location path starts with dot
- [Fixed] installing failed when already installed incompletely
- [Fixed] showing empty file when UploadFile::error !== UPLOAD_ERR_OK
- [Fixed] not checking chinese player names
- [Fixed] remove temp file if uploaded file duplicated
- [Fixed] logging out at homepage when installed to a subdir
- [Fixed] bug when showing texture whose uploader was deleted
- [Fixed] removing items from closet
v3.1.2 with some performance optimization
- [New] chart of overview at admin panel
- [New] menu item for importing data from v2
- [New] option of max size of uploaded file
- [New] search for closet
- [Improved] optimize performance
- [Improved] allow to re-upload textures which were setted to private
- [Fixed] comparing with undefined
- [Fixed] cache-control header when return_200_when_notfound is on
- [Fixed] PrettyPageException at setup pages
- [Fixed] typos in language files
- [Fixed] cache control of json profile
v3.1.1 with plenty of bug fixes
[Fixed] version control of update urls
[Fixed] cache control of json profile
[Fixed] view of skinlib search
[Fixed] invisible language select on mobile
[Fixed] compatibility of String.prototype.endsWith
[Fixed] bug when getting type of real-time preview
[Fixed] url()
function when using CDN
[Fixed] minus page numbers
[Fixed] checking in after zero
[Fixed] getting environment variables
[Fixed] translation of noticing wrong password
[Fixed] showing flash message
[Fixed] i18n when http exception occurs
[Fixed] getting database prefix
[Improved] invalid length of default APP_KEY
[Improved] update phpdotenv to v2.4.0
[Improved] translations of error pages
[Improved] regenerate session id after logging out
[Improved] add notice for adblock
v3.1 with brand-new framework
Laravel is so awesome! |∀゚
Notice
You need to download both
blessing-skin-server-v3.1.zip
andvendor.zip
, and put them into one folder since I separated vendors from main package.
[New] Brand-new project framework
[New] You can rename closet items now
[New] Options of caching things
[New] File cache for skin previews & avatars, etc
[New] Awesome internationalization!
[Improved] Stop rotating when pause
[Improved] Set display_errors to on
[Improved] Load envs to config to prevent cache problems
[Improved] Notice when submitted too many wrong passwords
[Improved] Show nickname of user instead of uid
[Fix] Preview of double layer skins
[Fix] Relative assets urls
[Fix] Support for sub directory
[Fix] 3d preview when select type at upload page
[Fix] Bug of transferring player
[Fix] Search of users' players on admin page