diff --git a/Credits.txt b/Credits.txt index be6efcee..1cd5c3ff 100644 --- a/Credits.txt +++ b/Credits.txt @@ -6,7 +6,7 @@ has been used throughout Invision Community to add style, flair and functionalit to our product. NULLING - Last Updated: 18 August 2020 + Last Updated: 09 June 2021 Author: IPBMafia.ru AES implementation in PHP @@ -16,17 +16,24 @@ AES implementation in PHP Website: http://www.movable-type.co.uk/scripts/aes-php.html License: http://creativecommons.org/licenses/by/3.0/ +Brick/math + Description: Arbitrary-precision arithmetic library + Location: system/3rd_party/Brick + Included version: 0.9.2 + Website: https://github.com/brick/math + License: http://opensource.org/licenses/MIT + Clipboard Description: Cross browser copy to clipboard functionality Location: applications/core/interface/clipboard - Included version: 2.0.4 + Included version: 2.0.6 Website: clipboardjs.com License: https://zenorocha.mit-license.org CKEditor Description: Provides the editor functionality for submitting content. Location: In development: applications/core/dev/ckeditor (custom build with additional plugins) - Included version: 4.14.1 + Included version: 4.16 Website: http://ckeditor.com License: http://www.gnu.org/copyleft/lesser.html @@ -40,8 +47,8 @@ Codemirror (with C-like, CSS, HTMLMixed, JavaScript, PHP, SQL and XML modes and Cropper Description: Provides cropping functionality for profile photos Location: applications/core/interface/cropper - Included version: 3.0.0-rc - Website: https://github.com/fengyuanchen/cropper + Included version: 1.5.9 + Website: https://github.com/fengyuanchen/cropperjs License: http://opensource.org/licenses/MIT Devices Icon Pack @@ -204,7 +211,7 @@ jQuery UI TouchPunch JShrink Description: Provides JavaScript minification Location: system/3rd_party/JShrink - Included version: 1.3.1 + Included version: 1.4.0 Website: https://github.com/tedious/JShrink License: https://github.com/tedious/JShrink/blob/master/LICENSE @@ -215,6 +222,13 @@ jsTimezoneDetect Website: https://bitbucket.org/pellepim/jstimezonedetect License: http://www.opensource.org/licenses/mit-license.php +JwtFramework + Description: Provides JWT signing & encryption support + Location: system/3rd_party/JwtFramework + Included version: 2.2.8 + Website: https://github.com/web-token/jwt-framework + License: http://www.opensource.org/licenses/mit-license.php + linkify Description: Provides link detection Location: dev/js/library/linkify @@ -225,7 +239,7 @@ linkify Mustache.js Description: JS templating engine Location: dev/js/library/mustache/ - Included version: 2.3.0 + Included version: 4.2.0 Website: http://github.com/janl/mustache.js License: http://opensource.org/licenses/MIT @@ -236,6 +250,13 @@ Normalize.css Website: http://necolas.github.io/normalize.css/ License: http://opensource.org/licenses/MIT +Parsedown + Description: Converts Markdown to HTML + Location: applications/convert/sources/Tools/Vanilla/Parsedown + Included version: 1.7.4 + Website: https://parsedown.org/ + License: https://github.com/erusev/parsedown/blob/master/LICENSE.txt + parseUri Description: Used to parse URLs in JS Location: dev/js/framework/common/utils/ips.utils.url.js @@ -326,14 +347,21 @@ Twemoji Underscore.js Description: General-purpose functional JS library Location: dev/js/library/underscore/ - Included version: 1.8.3 + Included version: 1.13.1 Website: http://underscorejs.org License: https://github.com/documentcloud/underscore/blob/master/LICENSE +Web Push Library for PHP + Description: Provides support and utility functions for Web Push + Location: system/3rd_party/Minishlink + Included version: 6.0.3 + Website: https://github.com/web-push-libs/web-push-php + License: http://opensource.org/licenses/mit-license.php + Whoops Description: Provides error handling for development mode Location: dev/Whoops - Included Version: 2.5.0 + Included Version: 2.9.1 Website: http://filp.github.io/whoops/ License: https://github.com/filp/whoops/blob/master/LICENSE.md diff --git a/admin/convertutf8/modules/browser/tools.php b/admin/convertutf8/modules/browser/tools.php index 80a8122c..4ac9fbc5 100644 --- a/admin/convertutf8/modules/browser/tools.php +++ b/admin/convertutf8/modules/browser/tools.php @@ -43,6 +43,7 @@ class tools extends \IPSUtf8\Dispatcher\Controller \IPSUtf8\Session::i()->save(); } + \IPSUtf8\Session::i()->updateTableData(); \IPSUtf8\Convert::i()->fixCollation(); $this->manage( "Collation checked and fixed where appropriate" ); diff --git a/admin/convertutf8/system/Db/Db.php b/admin/convertutf8/system/Db/Db.php index 42144ab7..8de000fa 100644 --- a/admin/convertutf8/system/Db/Db.php +++ b/admin/convertutf8/system/Db/Db.php @@ -388,7 +388,7 @@ class Db extends \mysqli * @return \IPSUtf8\Db\Select * */ - public function select( $columns=NULL, $table, $where=NULL, $order=NULL, $limit=NULL, $group=NULL, $having=NULL, $flags=0 ) + public function select( $columns, $table, $where=NULL, $order=NULL, $limit=NULL, $group=NULL, $having=NULL, $flags=0 ) { $binds = array(); $query = 'SELECT '; diff --git a/admin/convertutf8/system/Output/Browser/Template.php b/admin/convertutf8/system/Output/Browser/Template.php index 2c53b195..e27da48f 100644 --- a/admin/convertutf8/system/Output/Browser/Template.php +++ b/admin/convertutf8/system/Output/Browser/Template.php @@ -113,7 +113,7 @@ EOFHTML; /** * Tools page */ - public static function tools( $isUtf8=false, $msg ) + public static function tools( $isUtf8, $msg ) { $html = << @@ -205,7 +205,7 @@ EOFHTML; /** * Welcome page */ - public static function welcome( $isUtf8=false, $status, $percent=false, $controller='browser' ) + public static function welcome( $isUtf8, $status, $percent=false, $controller='browser' ) { $convertClass = ( $controller === 'browser' ) ? '\IPSUtf8\Convert' : '\IPSUtf8\Convert\Archive'; $origUtf8Charset = \IPSUtf8\Db::i('utf8')->getCharset(); diff --git a/admin/index.php b/admin/index.php index 88cf1801..b48f8dba 100644 --- a/admin/index.php +++ b/admin/index.php @@ -8,7 +8,6 @@ * @since 18 Feb 2013 */ -\define('READ_WRITE_SEPARATION', FALSE); \define('REPORT_EXCEPTIONS', TRUE); require_once '../init.php'; \IPS\Dispatcher\Admin::i()->run(); \ No newline at end of file diff --git a/admin/install/eula.txt b/admin/install/eula.txt index be4015d1..bab8ea82 100644 --- a/admin/install/eula.txt +++ b/admin/install/eula.txt @@ -3,7 +3,7 @@ Nulled by IPBMafia.ru Buy license at https://www.invisionpower.com/buy/self-hosted ================================================================ - IPS 4.5.0 (105100) + IPS 4.6.0 (106107) =============================[NOTE]============================= Invision Community End User License Agreement diff --git a/admin/install/html/global/healthcheck.phtml b/admin/install/html/global/healthcheck.phtml index d496b52e..a2c5d8a9 100644 --- a/admin/install/html/global/healthcheck.phtml +++ b/admin/install/html/global/healthcheck.phtml @@ -15,8 +15,10 @@

{lang="recom_info"}

{{endif}} diff --git a/admin/upgrade/extract.php b/admin/upgrade/extract.php index 8c9efc22..97ce2fe2 100644 --- a/admin/upgrade/extract.php +++ b/admin/upgrade/extract.php @@ -2,7 +2,7 @@ Invision Community Update Extractor - + -
+
HTML; @@ -461,7 +461,8 @@ HTML; else { $newI = $i + $extractor::NUMBER_PER_GO; - $percentComplete = round( 100 / $extractor->numberOfFiles() * $newI ); + $percentComplete = round( 100 / $extractor->numberOfFiles() * $newI, 2 ); + $percentComplete = ( $percentComplete > 100 ) ? 100 : $percentComplete; $properties = array( 'file' => $_GET['file'], @@ -473,7 +474,7 @@ HTML; $url = "extract.php?" . http_build_query( $properties, '', '&' ); echo << -
+
diff --git a/admin/upgrade/html/global/deprecated460.phtml b/admin/upgrade/html/global/deprecated460.phtml new file mode 100644 index 00000000..1b9151ab --- /dev/null +++ b/admin/upgrade/html/global/deprecated460.phtml @@ -0,0 +1,4 @@ + +
+

{lang="106000_deprecation"}

+
\ No newline at end of file diff --git a/admin/upgrade/html/global/healthcheck.phtml b/admin/upgrade/html/global/healthcheck.phtml index 92db3319..6d72915e 100644 --- a/admin/upgrade/html/global/healthcheck.phtml +++ b/admin/upgrade/html/global/healthcheck.phtml @@ -50,8 +50,10 @@

{lang="hc_recommendations_info"}

{{endif}} diff --git a/admin/upgrade/html/global/upgradeError.phtml b/admin/upgrade/html/global/upgradeError.phtml index 57a158cd..531f8168 100644 --- a/admin/upgrade/html/global/upgradeError.phtml +++ b/admin/upgrade/html/global/upgradeError.phtml @@ -5,9 +5,9 @@
{{if $exception instanceof \IPS\Db\Exception}} {{$trace = $exception->getTrace();}} - {{if $trace[3]['function'] == 'installDatabaseUpdates'}} + {{if $trace[2]['function'] == 'installDatabaseUpdates'}} - {expression="\IPS\ROOT_PATH"}/applications/{$trace[4]['args'][0][1]}/setup/upg_{$trace[3]['args'][0]}/queries.json{{if isset($_SESSION['lastJsonIndex'])}} - query #{$_SESSION['lastJsonIndex']}{{endif}}
+ {expression="\IPS\ROOT_PATH"}/applications/{$trace[3]['args'][0][1]}/setup/upg_{$trace[2]['args'][0]}/queries.json{{if isset($_SESSION['lastJsonIndex'])}} - query #{$_SESSION['lastJsonIndex']}{{endif}}
{{if $exception->query}}{$exception->query}{{else}}{$trace[0]['args'][0]}{{endif}}
{{else}} diff --git a/admin/upgrade/lang.php b/admin/upgrade/lang.php index c76113f3..3634c007 100644 --- a/admin/upgrade/lang.php +++ b/admin/upgrade/lang.php @@ -58,8 +58,8 @@ $lang = array( 'username' => "Display Name", 'email_address' => "Email Address", 'username_or_email' => "Username or Email Address", - 'login_err_no_account' => "The email address you entered does not belong to any account. Make sure that it is typed correctly.", - 'login_err_bad_password' => "The password you entered is incorrect. Please try again (make sure your caps lock is off).", + 'login_err_no_account' => "The {!#[1:display name or password][2:email address or password][3:display name, email address or password]} was incorrect. Please try again (make sure your caps lock is off).", + 'login_err_bad_password' => "The {!#[1:display name or password][2:email address or password][3:display name, email address or password]} was incorrect. Please try again (make sure your caps lock is off).", 'login_err_locked_unlock' => "Your account has been locked. Try again in {# [1:minute][?:minutes]}.", 'login_err_locked_nounlock' => "Your account has been locked. Try again later.", 'login_err_no_cookies' => "Your browser does not accept cookies which are required in order to log in.", @@ -120,6 +120,8 @@ $lang = array( 'requirements_file_system' => "File System", 'requirements_file_writable' => "%s is writable", 'requirements_mysql_timeout' => "Your MySQL %s system variable is currently set to an extremely low value (%s). The default MySQL value is 28800. It is recommended to increase this MySQL system variable to at least 20 in order to prevent potential problems with queries timing out.", + 'requirements_mysql_format_advice' => "You have one or more InnoDB tables that are using the `Compact` row format. This may limit the amount of data that can be stored within the table. We recommend changing it to 'Dynamic'. %s If you are not sure how to do this, you should contact your hosting provider or system administrator for assistance.", + 'requirements_mysql_ifpt_advice' => "Please make sure that `innodb_file_per_table` is enabled.", 'dir_not_provided' => "No directory provided. Please check file storage configurations.", 'dir_does_not_exist' => "%s does not exist.", 'dir_is_not_writable' => "%s cannot be written to. Please adjust the permissions on it or contact your hosting provider for assistance.", @@ -629,6 +631,7 @@ $lang = array( /* !Core - 4.5 - Notification Settings */ + '105000_admin_reg_customized' => "Reverting Customized Email Template", '105000_notifications' => "Notification Options", 'notification_method_inline' => "Notification List", 'notification_method_email' => "Email", @@ -663,5 +666,19 @@ $lang = array( 'notifications__warning_mods_desc' => "These notifications will be sent whenever another moderator issues a warning.", 'notifications__new_file_version' => "File Updates", 'notifications__event_reminder' => "Event Reminders", + + /* ! Core - 4.6 Achievements options */ + '106000_rule_option' => "Achievements", + '106000_rule_option_desc' => "Please see our achievements announcement for more information.", + '106000_rule_option_new' => "Use new default ranks", + '106000_rule_option_new_desc' => "Install the new ranks and use the default rules to generate points by posting, following and more.", + '106000_rule_option_old' => "Keep my current ranks", + '106000_rule_option_old_desc' => "Retain current ranks and continue increasing ranks just by posting", + + + /* 4.6.0 Deprecations */ + '106000_deprecated' => "Removed Caching Methods", + '106000_deprecation' => "The following Cache and Datastore methods have been removed in Invision Community 4.6: APC, Wincache, Memcached and XCache.
You do not need to do anything as the caching method will be reverted to 'None' after this upgrade.", + ); \ No newline at end of file diff --git a/applications/blog/data/application.json b/applications/blog/data/application.json index ec088feb..ea9de8d7 100644 --- a/applications/blog/data/application.json +++ b/applications/blog/data/application.json @@ -4,5 +4,6 @@ "app_directory": "blog", "app_protected": 0, "app_website": null, - "app_update_check": null + "app_update_check": null, + "app_hide_tab": 0 } \ No newline at end of file diff --git a/applications/blog/data/javascript.xml b/applications/blog/data/javascript.xml index 7bed4172..2653f891 100644 --- a/applications/blog/data/javascript.xml +++ b/applications/blog/data/javascript.xml @@ -1,6 +1,6 @@ - - /** + /** * Invision Community * (c) Invision Power Services, Inc. - https://www.invisioncommunity.com * @@ -66,7 +66,7 @@ } }); }(jQuery, _)); - - {{#lang}}manage_cats_new_row{{/lang}}\ "); diff --git a/applications/blog/data/lang.xml b/applications/blog/data/lang.xml index d3a45f7a..a4e6f4e8 100644 --- a/applications/blog/data/lang.xml +++ b/applications/blog/data/lang.xml @@ -1,12 +1,14 @@ - + Blogs Blogs a comment on a blog entry a blog entry comment on a blog entry + {!#[1:comment][?:comments]} on a blog entry blog entry + {!#[1:blog entry][?:blog entries]} blog blog entries Blogs @@ -45,6 +47,7 @@ Blog Name Blog Author Blog + blog Create a blog Create a new blog Add entry to a blog @@ -307,6 +310,7 @@ Show All There are no entries in this category Entry Categories + Subcategories Are you sure you want to delete this category? Existing entries in this category will be updated so that they are no longer in a category. Add New Category diff --git a/applications/blog/data/schema.json b/applications/blog/data/schema.json index 680b853c..c5f19728 100644 --- a/applications/blog/data/schema.json +++ b/applications/blog/data/schema.json @@ -393,6 +393,30 @@ "zerofill": false, "auto_increment": false, "binary": false + }, + "blog_allow_anonymous": { + "name": "blog_allow_anonymous", + "type": "TINYINT", + "length": null, + "decimals": null, + "values": null, + "allow_null": false, + "default": "0", + "comment": "", + "unsigned": true, + "auto_increment": false + }, + "blog_last_poster_anon": { + "name": "blog_last_poster_anon", + "type": "TINYINT", + "length": null, + "decimals": null, + "values": null, + "allow_null": false, + "default": "0", + "comment": "", + "unsigned": true, + "auto_increment": false } }, "indexes": { @@ -953,6 +977,30 @@ "zerofill": false, "auto_increment": false, "binary": false + }, + "entry_is_anon": { + "name": "entry_is_anon", + "type": "TINYINT", + "length": null, + "decimals": null, + "values": null, + "allow_null": false, + "default": "0", + "comment": "", + "unsigned": true, + "auto_increment": false + }, + "entry_last_poster_anon": { + "name": "entry_last_poster_anon", + "type": "TINYINT", + "length": null, + "decimals": null, + "values": null, + "allow_null": false, + "default": "0", + "comment": "", + "unsigned": true, + "auto_increment": false } }, "indexes": { @@ -1218,6 +1266,18 @@ "unsigned": true, "values": [], "zerofill": false + }, + "comment_is_anon": { + "name": "comment_is_anon", + "type": "TINYINT", + "length": null, + "decimals": null, + "values": null, + "allow_null": false, + "default": "0", + "comment": "", + "unsigned": true, + "auto_increment": false } }, "indexes": { diff --git a/applications/blog/data/theme.xml b/applications/blog/data/theme.xml index fca4a14b..869158cf 100644 --- a/applications/blog/data/theme.xml +++ b/applications/blog/data/theme.xml @@ -3,9 +3,9 @@ -