diff --git a/Credits.txt b/Credits.txt index b202dce0..1284b58f 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: 5 November 2025 + Last Updated: 9 December 2025 Author: https://ipbmafia.ru AES implementation in PHP diff --git a/admin/assets/css/forms.css b/admin/assets/css/forms.css index d8bfd292..c49ac65e 100644 --- a/admin/assets/css/forms.css +++ b/admin/assets/css/forms.css @@ -460,89 +460,4 @@ label input{ /* Install: Admin username, password, email */ .ipsFieldRow[id^="admin_admin_"] input{ justify-self: stretch; -} - - - - - - - - - - - - - - -@supports(display:ehren){ - - - - - -.ipsFieldRow:not( :last-child ) { - - margin-bottom: 15px; -} - -/* FIELD LISTS (for stacks of radios/checkboxes) */ -.ipsFieldList { - padding-top: 7px; -} - -.ipsFieldList > li { - margin-bottom: 10px; -} - -.ipsFieldList input[type="radio"], .ipsFieldList input[type="checkbox"] { - float: left; - margin-top: 4px; -} - -.ipsFieldList__content { - margin-left: 22px; -} - -/* FORM TYPOGRAPHY */ -.ipsFieldRow__desc { - font-size: 12px; - color: #adadad; - margin-top: 3px; - display: inline-block; -} - -.ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_label, -.ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_title { - font-size: 15px; - font-weight: bold; - margin-bottom: 5px; - display: inline-block; - padding-top: 5px; -} - -.ipsFieldRow__required { - font-size: 10px; - text-transform: uppercase; - color: #c02222; - margin-left: 10px; - font-weight: normal; -} - - - -.ipsFieldRow__content select { - margin-top: 6px; -} - -.ipsFieldRow_section { - background: #f9f9f9; - color: #333; - padding: 15px; - font-size: 16px; - margin-bottom: 10px; -} - - - } \ No newline at end of file diff --git a/admin/install/eula.txt b/admin/install/eula.txt index 3c70a5cc..bde365d0 100644 --- a/admin/install/eula.txt +++ b/admin/install/eula.txt @@ -3,7 +3,7 @@ Nulled by IPBMafia.ru Buy license at https://invisioncommunity.com/buy/self-hosted/ ================================================================ - IPS 5.0.13 (5001302) + IPS 5.0.14 (5001403) =============================[NOTE]============================= Invision Community End User License Agreement diff --git a/applications/blog/Application.php b/applications/blog/Application.php index 7550537f..6b295a74 100644 --- a/applications/blog/Application.php +++ b/applications/blog/Application.php @@ -105,7 +105,7 @@ class Application extends SystemApplication } /* @note application/rss+xml is not a registered IANA mime-type so we need to stick with text/xml for RSS */ - Output::i()->sendOutput( $document->asXML(), 200, 'text/xml', array(), TRUE, parseFileObjects: FALSE ); + Output::i()->sendOutput( $document->asXML(), 200, 'text/xml', array(), TRUE, parseFileObjects: true ); } /** diff --git a/applications/blog/data/javascript.xml b/applications/blog/data/javascript.xml index 71419ff1..b797a291 100644 --- a/applications/blog/data/javascript.xml +++ b/applications/blog/data/javascript.xml @@ -1,6 +1,6 @@ - - \ "); diff --git a/applications/blog/data/lang.xml b/applications/blog/data/lang.xml index ebe5540c..f273a6ba 100644 --- a/applications/blog/data/lang.xml +++ b/applications/blog/data/lang.xml @@ -1,6 +1,6 @@ - + Blogs Blogs a comment on a blog entry diff --git a/applications/blog/data/versions.json b/applications/blog/data/versions.json index 4631b0ac..15bde495 100644 --- a/applications/blog/data/versions.json +++ b/applications/blog/data/versions.json @@ -275,6 +275,19 @@ "107799": "4.7.20 Beta 5", "107800": "4.7.20", "107801": "4.7.20", + "107802": "4.7.20", + "107803": "4.7.20", + "107810": "4.7.21 Beta 1", + "107811": "4.7.21", + "107815": "4.7.22 Beta 1", + "107816": "4.7.22 Beta 2", + "107817": "4.7.22", + "107818": "4.7.22", + "107819": "4.7.22", + "107820": "4.7.22", + "107826": "4.7.23 Beta 1", + "107827": "4.7.23", + "107828": "4.7.23", "500001": "5.0.0 Alpha 1", "500002": "5.0.0 Alpha 2", "5000003": "5.0.0 Alpha 3", @@ -397,5 +410,9 @@ "5001204": "5.0.12", "5001300": "5.0.13 Beta 1", "5001301": "5.0.13 Beta 2", - "5001302": "5.0.13" + "5001302": "5.0.13", + "5001400": "5.0.14 Beta 1", + "5001401": "5.0.14 Beta 1", + "5001402": "5.0.14 Beta 2", + "5001403": "5.0.14" } \ No newline at end of file diff --git a/applications/blog/extensions/core/ModeratorPermissions/Blogs.php b/applications/blog/extensions/core/ModeratorPermissions/Blogs.php index f6feb887..91692d27 100644 --- a/applications/blog/extensions/core/ModeratorPermissions/Blogs.php +++ b/applications/blog/extensions/core/ModeratorPermissions/Blogs.php @@ -27,6 +27,12 @@ if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) ) */ class Blogs extends ModeratorPermissionsAbstract { + public function getPermissions( array $toggles ): array + { + /* Leave this empty because we are going to just add to the existing Blogs tab */ + return []; + } + /** * Get Permissions * @@ -45,7 +51,7 @@ class Blogs extends ModeratorPermissionsAbstract * @param array $toggles * @return array */ - public function getPermissions( array $toggles ): array + public function getContentPermissions( array $toggles ): array { return array( 'can_mod_blogs' => 'YesNo' ); } diff --git a/applications/blog/setup/upg_107802/data.json b/applications/blog/setup/upg_107802/data.json new file mode 100644 index 00000000..e8c7ffe8 --- /dev/null +++ b/applications/blog/setup/upg_107802/data.json @@ -0,0 +1,23 @@ +{ + "id": 107802, + "name": "4.7.20", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107803/data.json b/applications/blog/setup/upg_107803/data.json new file mode 100644 index 00000000..c303dba8 --- /dev/null +++ b/applications/blog/setup/upg_107803/data.json @@ -0,0 +1,23 @@ +{ + "id": 107803, + "name": "4.7.20", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107810/data.json b/applications/blog/setup/upg_107810/data.json new file mode 100644 index 00000000..d6859da8 --- /dev/null +++ b/applications/blog/setup/upg_107810/data.json @@ -0,0 +1,23 @@ +{ + "id": 107810, + "name": "4.7.21 Beta 1", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107811/data.json b/applications/blog/setup/upg_107811/data.json new file mode 100644 index 00000000..21427d5d --- /dev/null +++ b/applications/blog/setup/upg_107811/data.json @@ -0,0 +1,23 @@ +{ + "id": 107811, + "name": "4.7.21", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107815/data.json b/applications/blog/setup/upg_107815/data.json new file mode 100644 index 00000000..069df6ab --- /dev/null +++ b/applications/blog/setup/upg_107815/data.json @@ -0,0 +1,23 @@ +{ + "id": 107815, + "name": "4.7.22 Beta 1", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107816/data.json b/applications/blog/setup/upg_107816/data.json new file mode 100644 index 00000000..f33f25af --- /dev/null +++ b/applications/blog/setup/upg_107816/data.json @@ -0,0 +1,23 @@ +{ + "id": 107816, + "name": "4.7.22 Beta 2", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107817/data.json b/applications/blog/setup/upg_107817/data.json new file mode 100644 index 00000000..29b49df9 --- /dev/null +++ b/applications/blog/setup/upg_107817/data.json @@ -0,0 +1,23 @@ +{ + "id": 107817, + "name": "4.7.22", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107818/data.json b/applications/blog/setup/upg_107818/data.json new file mode 100644 index 00000000..26c77bc5 --- /dev/null +++ b/applications/blog/setup/upg_107818/data.json @@ -0,0 +1,23 @@ +{ + "id": 107818, + "name": "4.7.22", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107819/data.json b/applications/blog/setup/upg_107819/data.json new file mode 100644 index 00000000..968a94ca --- /dev/null +++ b/applications/blog/setup/upg_107819/data.json @@ -0,0 +1,23 @@ +{ + "id": 107819, + "name": "4.7.22", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107820/data.json b/applications/blog/setup/upg_107820/data.json new file mode 100644 index 00000000..5082a5f4 --- /dev/null +++ b/applications/blog/setup/upg_107820/data.json @@ -0,0 +1,23 @@ +{ + "id": 107820, + "name": "4.7.22", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107826/data.json b/applications/blog/setup/upg_107826/data.json new file mode 100644 index 00000000..67c4b57c --- /dev/null +++ b/applications/blog/setup/upg_107826/data.json @@ -0,0 +1,23 @@ +{ + "id": 107826, + "name": "4.7.23 Beta 1", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107827/data.json b/applications/blog/setup/upg_107827/data.json new file mode 100644 index 00000000..d8181b24 --- /dev/null +++ b/applications/blog/setup/upg_107827/data.json @@ -0,0 +1,23 @@ +{ + "id": 107827, + "name": "4.7.23", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_107828/data.json b/applications/blog/setup/upg_107828/data.json new file mode 100644 index 00000000..41933acb --- /dev/null +++ b/applications/blog/setup/upg_107828/data.json @@ -0,0 +1,23 @@ +{ + "id": 107828, + "name": "4.7.23", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeSettings": false, + "javascript": false, + "emailTemplates": false, + "hooks": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_5001400/data.json b/applications/blog/setup/upg_5001400/data.json new file mode 100644 index 00000000..1571e915 --- /dev/null +++ b/applications/blog/setup/upg_5001400/data.json @@ -0,0 +1,22 @@ +{ + "id": 5001400, + "name": "5.0.14 Beta 1", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeeditor": false, + "javascript": false, + "emailTemplates": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_5001401/data.json b/applications/blog/setup/upg_5001401/data.json new file mode 100644 index 00000000..6954be4a --- /dev/null +++ b/applications/blog/setup/upg_5001401/data.json @@ -0,0 +1,22 @@ +{ + "id": 5001401, + "name": "5.0.14 Beta 1", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeeditor": false, + "javascript": false, + "emailTemplates": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_5001402/data.json b/applications/blog/setup/upg_5001402/data.json new file mode 100644 index 00000000..daadfa3b --- /dev/null +++ b/applications/blog/setup/upg_5001402/data.json @@ -0,0 +1,22 @@ +{ + "id": 5001402, + "name": "5.0.14 Beta 2", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeeditor": false, + "javascript": false, + "emailTemplates": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/blog/setup/upg_5001403/data.json b/applications/blog/setup/upg_5001403/data.json new file mode 100644 index 00000000..21b48da4 --- /dev/null +++ b/applications/blog/setup/upg_5001403/data.json @@ -0,0 +1,22 @@ +{ + "id": 5001403, + "name": "5.0.14", + "steps": { + "queries": false, + "lang": false, + "theme": false, + "themeeditor": false, + "javascript": false, + "emailTemplates": false, + "acpSearchKeywords": false, + "settings": false, + "tasks": false, + "modules": false, + "widgets": false, + "customOptions": false, + "customRoutines": false + }, + "forceMainUpgrader": false, + "forceManualDownloadNoCiC": false, + "forceManualDownloadCiC": false +} \ No newline at end of file diff --git a/applications/calendar/Application.php b/applications/calendar/Application.php index dcd5d9ca..cca80d15 100644 --- a/applications/calendar/Application.php +++ b/applications/calendar/Application.php @@ -128,7 +128,7 @@ class Application extends SystemApplication $ics = $feed->buildICalendarFeed( $calendar ); - Output::i()->sendOutput( $ics, 200, 'text/calendar', [ 'Content-Disposition' => Output::getContentDisposition( 'inline', "calendarEvents.ics" ) ], FALSE, FALSE, FALSE ); + Output::i()->sendOutput( $ics, 200, 'text/calendar', [ 'Content-Disposition' => Output::getContentDisposition( 'inline', "calendarEvents.ics" ) ], FALSE, FALSE, true ); } /** @@ -171,7 +171,7 @@ class Application extends SystemApplication } /* @note application/rss+xml is not a registered IANA mime-type so we need to stick with text/xml for RSS */ - Output::i()->sendOutput( $document->asXML(), 200, 'text/xml' ); + Output::i()->sendOutput( $document->asXML(), 200, 'text/xml', parseFileObjects: true ); } /** diff --git a/applications/calendar/data/build.xml b/applications/calendar/data/build.xml index 0bb05b1f..a9063488 100644 --- a/applications/calendar/data/build.xml +++ b/applications/calendar/data/build.xml @@ -5,6 +5,7 @@ icalendar eventreminders + clearfeaturedevents diff --git a/applications/calendar/data/javascript.xml b/applications/calendar/data/javascript.xml index 753a6ba7..630a67e8 100644 --- a/applications/calendar/data/javascript.xml +++ b/applications/calendar/data/javascript.xml @@ -1,6 +1,6 @@ - - - - - - - - - /** + /** * Invision Community * (c) Invision Power Services, Inc. - https://www.invisioncommunity.com * @@ -2087,7 +2087,7 @@ var PER_PAGE = 16; }); }(jQuery, _)); - \ ");]]> -
diff --git a/applications/calendar/data/lang.xml b/applications/calendar/data/lang.xml index c0edbb7c..1d9b039d 100644 --- a/applications/calendar/data/lang.xml +++ b/applications/calendar/data/lang.xml @@ -1,6 +1,6 @@ - + Events Events a comment on an event @@ -89,6 +89,9 @@ Allow comments? Allow reviews? Reviews must be approved? + Allow recurring events? + Include in Overview + events landing page.
Featured events will always be displayed in the overview.]]>
See Calendar View Events diff --git a/applications/calendar/data/tasks.json b/applications/calendar/data/tasks.json index 3f38252e..c85763a6 100644 --- a/applications/calendar/data/tasks.json +++ b/applications/calendar/data/tasks.json @@ -1 +1 @@ -{"icalendar":"P0Y0M0DT4H0M0S","eventreminders":"P0Y0M0DT1H0M0S"} \ No newline at end of file +{"icalendar":"P0Y0M0DT4H0M0S","eventreminders":"P0Y0M0DT1H0M0S","clearfeaturedevents":"P0Y0M1DT0H0M0S"} \ No newline at end of file diff --git a/applications/calendar/data/theme.xml b/applications/calendar/data/theme.xml index 215ef5fd..59cbd563 100644 --- a/applications/calendar/data/theme.xml +++ b/applications/calendar/data/theme.xml @@ -1549,6 +1549,7 @@
+ {{if $value['allow_recurring']}}
{lang="submit_event_summary"}

@@ -1623,6 +1624,10 @@
+ {{else}} + + + {{endif}} ]]> -