Version 4.5.0

This commit is contained in:
Neo committed 2025-12-19 05:51:58 -08:00
1 parent 1a0c7fd3c2
commit f79dcf067a
3791 files changed
+248032 -76372

No files matched your search

@@ -0,0 +1,100 @@
{
"added": [
"app=forums&module=forums&controller=forums",
"app=forums&module=forums&controller=forums&do=form",
"app=forums&module=forums&controller=forums&do=form&searchResult=forum_best_answer",
"app=forums&module=forums&controller=forums&searchResult=bw_disable_prefixes",
"app=forums&module=forums&controller=forums&searchResult=bw_disable_tagging",
"app=forums&module=forums&controller=forums&searchResult=form_1_forum_description",
"app=forums&module=forums&controller=forums&searchResult=form_1_forum_name",
"app=forums&module=forums&controller=forums&searchResult=form_1_forum_parent_id",
"app=forums&module=forums&controller=forums&searchResult=form_1_forum_type",
"app=forums&module=forums&controller=forums&searchResult=form_2_forum_allow_poll",
"app=forums&module=forums&controller=forums&searchResult=form_2_forum_description",
"app=forums&module=forums&controller=forums&searchResult=form_2_forum_inc_postcount",
"app=forums&module=forums&controller=forums&searchResult=form_2_forum_min_posts_post",
"app=forums&module=forums&controller=forums&searchResult=form_2_forum_name",
"app=forums&module=forums&controller=forums&searchResult=form_2_forum_parent_id",
"app=forums&module=forums&controller=forums&searchResult=form_2_forum_show_rules",
"app=forums&module=forums&controller=forums&searchResult=form_2_forum_type",
"app=forums&module=forums&controller=forums&searchResult=form_new_forum_allow_poll",
"app=forums&module=forums&controller=forums&searchResult=form_new_forum_description",
"app=forums&module=forums&controller=forums&searchResult=form_new_forum_inc_postcount",
"app=forums&module=forums&controller=forums&searchResult=form_new_forum_min_posts_post",
"app=forums&module=forums&controller=forums&searchResult=form_new_forum_name",
"app=forums&module=forums&controller=forums&searchResult=form_new_forum_parent_id",
"app=forums&module=forums&controller=forums&searchResult=form_new_forum_show_rules",
"app=forums&module=forums&controller=forums&searchResult=form_new_forum_type",
"app=forums&module=forums&controller=forums&searchResult=forum_allow_rating",
"app=forums&module=forums&controller=forums&searchResult=forum_can_view_others",
"app=forums&module=forums&controller=forums&searchResult=forum_disable_sharelinks",
"app=forums&module=forums&controller=forums&searchResult=forum_icon",
"app=forums&module=forums&controller=forums&searchResult=forum_ipseo_priority",
"app=forums&module=forums&controller=forums&searchResult=forum_min_posts_view",
"app=forums&module=forums&controller=forums&searchResult=forum_password_on",
"app=forums&module=forums&controller=forums&searchResult=forum_permission_custom_error",
"app=forums&module=forums&controller=forums&searchResult=forum_permission_showtopic",
"app=forums&module=forums&controller=forums&searchResult=forum_preview_posts",
"app=forums&module=forums&controller=forums&searchResult=forum_sort_key",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=bw_disable_prefixes",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=bw_disable_tagging",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=form_new_forum_allow_poll",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=form_new_forum_description",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=form_new_forum_inc_postcount",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=form_new_forum_min_posts_post",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=form_new_forum_name",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=form_new_forum_parent_id",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=form_new_forum_show_rules",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=form_new_forum_type",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_allow_rating",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_can_view_others",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_disable_sharelinks",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_icon",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_ipseo_priority",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_min_posts_view",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_password_on",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_permission_custom_error",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_permission_showtopic",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_preview_posts",
"app=forums&module=forums&controller=forums&subnode=0&parent=2&searchResult=forum_sort_key",
"app=forums&module=forums&controller=savedActions",
"app=forums&module=forums&controller=savedActions&do=form",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_mm_forums",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_mm_title",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_topic_approve",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_topic_move",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_topic_pin",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_topic_reply",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_topic_state",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_topic_title_end",
"app=forums&module=forums&controller=savedActions&searchResult=form_1_topic_title_st",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_mm_forums",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_mm_title",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_topic_approve",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_topic_move",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_topic_pin",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_topic_reply",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_topic_state",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_topic_title_end",
"app=forums&module=forums&controller=savedActions&searchResult=form_new_topic_title_st",
"app=forums&module=forums&controller=settings",
"app=forums&module=forums&controller=settings&searchResult=form_forums_answers_downvote",
"app=forums&module=forums&controller=settings&searchResult=form_forums_default_view",
"app=forums&module=forums&controller=settings&searchResult=form_forums_new_questions",
"app=forums&module=forums&controller=settings&searchResult=form_forums_popular_now",
"app=forums&module=forums&controller=settings&searchResult=form_forums_posts_per_page",
"app=forums&module=forums&controller=settings&searchResult=form_forums_questions_downvote",
"app=forums&module=forums&controller=settings&searchResult=form_forums_rss",
"app=forums&module=forums&controller=settings&searchResult=form_forums_topic_activity",
"app=forums&module=forums&controller=settings&searchResult=form_forums_topic_activity_features",
"app=forums&module=forums&controller=settings&searchResult=form_forums_topics_show_meta",
"app=forums&module=forums&controller=settings&searchResult=forums_topic_activity_desktop",
"app=forums&module=forums&controller=settings&tab=archiving",
"app=forums&module=forums&controller=settings&tab=archiving&searchResult=form_archive_on",
"app=forums&module=forums&controller=settings&tab=settings",
"app=forums&module=stats&controller=posts",
"app=forums&module=stats&controller=topics"
],
"edited": [],
"removed": []
}
@@ -0,0 +1,24 @@
{
"id": 105013,
"name": "4.5.0 Beta 1",
"steps": {
"queries": true,
"lang": true,
"theme": true,
"themeSettings": false,
"javascript": true,
"emailTemplates": false,
"hooks": false,
"acpSearchKeywords": true,
"settings": true,
"tasks": true,
"modules": true,
"widgets": true,
"whatsnew": false,
"customOptions": false,
"customRoutines": true
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,21 @@
{
"files": {
"added": [
"forums\/front\/controllers\/topic\/ips.topic.activity.js"
],
"edited": [
"forums\/front\/controllers\/topic\/ips.topic.view.js"
],
"removed": []
},
"orders": {
"added": [],
"edited": [],
"removed": [
"global\/\/dev\/js\/\/framework\/",
"global\/\/dev\/js\/\/library\/",
"global\/\/dev\/js\/\/library\/\/jquery",
"global\/\/dev\/js\/\/library\/\/linkify"
]
}
}
@@ -0,0 +1,131 @@
{
"normal": {
"added": [
"filestorage__forums_Cards",
"can_toggle_item_moderation_topic",
"all_public",
"forum_can_view_others_club",
"forum_can_view_others_club_desc",
"forum_card_image",
"forum_card_image_desc",
"bw_enable_answers_moderator",
"bw_enable_answers_moderator_desc",
"bw_enable_answers__member",
"bw_enable_answers__member_desc",
"topic_meta_unread",
"forum_follower_count",
"topic_follower_count",
"forums_topic_list_snippet",
"forums_topic_list_list",
"queue_rebuilding_solved_posts",
"enable_topic_moderation",
"disable_topic_moderation",
"topic_moderation_enabled",
"enable_topic_moderation_confirm",
"disable_topic_moderation_confirm",
"unsolve_content",
"solve_content",
"this_is_a_solved_post",
"solved_and_go",
"this_is_solved",
"unsolved_topics",
"solved_topics",
"widget_feed_status_solved",
"solved_either",
"solved_solved",
"solved_unsolved",
"solved_byline",
"forums_view_list_method",
"forums_view_list_choose",
"forums_view_list_choose_desc",
"topicactivity_created",
"topicactivity_topposters",
"topicactivity_topposters_qa",
"topicactivity_popularposts",
"topicactivity_populardays",
"topicactivity_images",
"topicactivity_number_posts",
"forums_topic_activity",
"forums_topic_activity_desktop_on",
"forums_topic_activity_mobile_on",
"forums_topic_activity_mobile_on_desc",
"forums_topic_activity_desktop",
"forums_topic_activity_desktop_sidebar",
"forums_topic_activity_desktop_post",
"forums_topics_activity_pages_show_unlimited",
"forums_topics_activity_pages_show",
"forums_topics_activity_pages_show_prefix",
"topic_summary_settings",
"forums_topic_activity_features",
"forums_topic_activity_features_popularDays",
"forums_topic_activity_features_popularDays_desc",
"forums_topic_activity_features_topPost",
"forums_topic_activity_features_topPost_desc",
"forums_topic_activity_features_uploads",
"forums_topics_show_meta",
"forums_topic_show_meta_time",
"forums_topic_show_meta_moderation",
"app_forums",
"app_create_new_topic",
"app_topics_title",
"app_subforums_title",
"app_no_forum",
"app_no_topic",
"app_incorrect_forum_password",
"app_no_post",
"app_invalid_topic",
"app_not_question",
"app_cannot_vote",
"app_error_voting_question",
"app_replace_best_answer_title",
"app_replace_best_answer_text",
"app_question_asked_by",
"app_this_is_best_answer",
"app_all_topics",
"app_all_topics_desc",
"app_create_topic",
"app_confirm_discard_topic",
"app_confirm_discard_post",
"app_title_required",
"app_title_required_desc",
"app_post_required",
"app_post_required_desc",
"app_error_posting_topic",
"app_error_posting_post",
"app_topic_title",
"app_post_title",
"app_topic_cannot_reply",
"app_topic_locked_can_comment",
"app_topic_poll_can_comment",
"app_topic_locked_cannot_comment",
"app_topic_restricted_cannot_comment",
"app_topic_unacknowledged_warning_cannot_post",
"app_topic_member_exceeded_posts_per_day"
],
"edited": [
"can_set_best_answer",
"topic_auto_follow_suffix",
"go_back_to_forum",
"go_back_to_qa_forum",
"this_is_a_popular_post"
],
"removed": [
"menu__forums_forums_rss",
"r__rss",
"r__rss_manage",
"r__rss_add",
"r__rss_edit",
"r__rss_delete",
"r__rss_run",
"forums_rss_desc",
"any_time",
"task__rssimport",
"rssimport_task_error"
]
},
"js": {
"added": [],
"edited": [],
"removed": []
}
}
@@ -0,0 +1,9 @@
{
"added": [
"admin\/forums",
"admin\/stats",
"front\/forums"
],
"edited": [],
"removed": []
}
@@ -0,0 +1,116 @@
{
"1": {
"method": "delete",
"params": [
"core_sys_lang_words",
[
"word_key=?",
"forums_rss_desc"
]
]
},
"2": {
"method": "update",
"params": [
"core_members",
{
"permission_array": null
}
]
},
"3": {
"method": "addColumn",
"params": [
"forums_forums",
{
"name": "card_image",
"type": "VARCHAR",
"length": 255,
"decimals": null,
"values": null,
"allow_null": true,
"default": null,
"comment": "Card image file name",
"unsigned": false,
"zerofill": false,
"auto_increment": false,
"binary": false
}
]
},
"4": {
"method": "addColumn",
"params": [
"forums_view_method",
{
"name": "type",
"type": "VARCHAR",
"length": 16,
"decimals": null,
"values": null,
"allow_null": false,
"default": "index",
"comment": "",
"unsigned": false,
"zerofill": false,
"auto_increment": false,
"binary": false
}
]
},
"5": {
"method": "dropIndex",
"params": [
"forums_view_method",
"PRIMARY"
]
},
"6": {
"method": "addIndex",
"params": [
"forums_view_method",
{
"type": "unique",
"name": "member_id",
"columns": [
"member_id",
"type"
],
"length": [
null,
null
]
}
]
},
"7": {
"method": "changeColumn",
"params": [
"forums_topics",
"topic_meta_data",
{
"name": "topic_meta_data",
"type": "TINYINT",
"length": 1,
"decimals": null,
"values": [],
"allow_null": false,
"default": "0",
"comment": "",
"unsigned": true,
"auto_increment": false
}
]
},
"8": {
"method": "delete",
"params": [
"core_sys_lang_words",
[
"word_app=? AND word_key=?",
"forums",
"any_time"
]
]
}
}
@@ -0,0 +1,32 @@
{
"added": [
"archive_on",
"archive_remote_sql_database",
"archive_remote_sql_host",
"archive_remote_sql_pass",
"archive_remote_sql_user",
"archive_sql_port",
"archive_sql_socket",
"archive_sql_tbl_prefix",
"email_truncate",
"forums_answers_downvote",
"forums_default_view",
"forums_default_view_choose",
"forums_fluid_pinned",
"forums_new_questions",
"forums_popular_now",
"forums_posts_per_page",
"forums_questions_downvote",
"forums_rss",
"forums_topic_activity",
"forums_topic_activity_desktop",
"forums_topic_activity_features",
"forums_topics_activity_pages_show",
"forums_topics_per_page",
"forums_topics_show_meta",
"forums_view_list_choose",
"forums_view_list_method"
],
"edited": [],
"removed": []
}
@@ -0,0 +1,8 @@
{
"added": [
"archive",
"unarchive"
],
"edited": [],
"removed": []
}
@@ -0,0 +1,54 @@
{
"html": {
"added": [
"front\/forums\/topicRowSnippet",
"front\/global\/viewChangeList",
"front\/topics\/activity"
],
"edited": [
"front\/forums\/forumButtons",
"front\/forums\/forumDisplay",
"front\/forums\/forumTable",
"front\/forums\/questionRow",
"front\/forums\/topicRow",
"front\/global\/embedPost",
"front\/global\/embedTopic",
"front\/global\/row",
"front\/global\/viewChange",
"front\/index\/forumGridItem",
"front\/index\/forumRow",
"front\/index\/index",
"front\/index\/simplifiedTopicRow",
"front\/index\/simplifiedViewSidebar",
"front\/index\/simplifiedViewSidebar_children",
"front\/submit\/createTopicForm",
"front\/submit\/createTopicModOptions",
"front\/topics\/post",
"front\/topics\/postContainer",
"front\/topics\/postRating",
"front\/topics\/topic",
"front\/widgets\/hotTopics",
"front\/widgets\/postFeed",
"front\/widgets\/topicFeed"
],
"removed": [
"admin\/feeds\/importPreview"
]
},
"css": {
"added": [
"front\/topics.css"
],
"edited": [
"front\/forums_responsive.css",
"front\/forums.css",
"front\/posts.css"
],
"removed": []
},
"resources": {
"added": [],
"edited": [],
"removed": []
}
}
@@ -0,0 +1,126 @@
<?php
/**
* @brief 4.5.0 Beta 1 Upgrade Code
* @author <a href='https://www.invisioncommunity.com'>Invision Power Services, Inc.</a>
* @copyright (c) Invision Power Services, Inc.
* @license https://www.invisioncommunity.com/legal/standards/
* @package Invision Community
* @subpackage Forums
* @since 15 Oct 2019
*/
namespace IPS\forums\setup\upg_105013;
/* To prevent PHP errors (extending class does not exist) revealing path */
if ( !\defined( '\IPS\SUITE_UNIQUE_KEY' ) )
{
header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
exit;
}
/**
* 4.5.0 Beta 1 Upgrade Code
*/
class _Upgrade
{
/**
* ...
*
* @return array If returns TRUE, upgrader will proceed to next step. If it returns any other value, it will set this as the value of the 'extra' GET parameter and rerun this step (useful for loops)
*/
public function step1()
{
/* Move over forums_rss_import to core_rss_import */
foreach( \IPS\Db::i()->select( '*', 'forums_rss_import' ) as $rss )
{
$newImportId = \IPS\Db::i()->insert( 'core_rss_import', array(
'rss_import_enabled' => $rss['rss_import_enabled'],
'rss_import_title' => $rss['rss_import_title'],
'rss_import_url' => $rss['rss_import_url'],
'rss_import_auth_user' => $rss['rss_import_auth_user'],
'rss_import_auth_pass' => $rss['rss_import_auth_pass'],
'rss_import_class' => 'IPS\\forums\\Topic',
'rss_import_node_id' => $rss['rss_import_forum_id'],
'rss_import_member' => $rss['rss_import_mid'],
'rss_import_time' => $rss['rss_import_time'],
'rss_import_last_import' => $rss['rss_import_last_import'],
'rss_import_showlink' => $rss['rss_import_showlink'],
'rss_import_topic_pre' => $rss['rss_import_topic_pre'],
'rss_import_auto_follow' => $rss['rss_import_auto_follow'],
'rss_import_settings' => json_encode( array(
'rss_import_topic_open' => $rss['rss_import_topic_open'],
'rss_import_topic_hide' => $rss['rss_import_topic_hide']
) )
) );
try
{
/* Prevent multiple runs from breaking */
\IPS\Db::i()->delete( 'core_rss_imported', array( 'rss_imported_import_id=?', $newImportId ) );
\IPS\Db::i()->query( "INSERT INTO " . \IPS\Db::i()->prefix . "core_rss_imported
(rss_imported_guid, rss_imported_content_id, rss_imported_import_id )
( SELECT a.rss_imported_guid, a.rss_imported_tid, {$newImportId} FROM " . \IPS\Db::i()->prefix . "forums_rss_imported a)" );
}
catch( \Exception $e ) { }
}
return TRUE;
}
/**
* Finish
*
* @return array If returns TRUE, upgrader will proceed to next step. If it returns any other value, it will set this as the value of the 'extra' GET parameter and rerun this step (useful for loops)
*/
public function finish()
{
/* Delete old tasks */
\IPS\Db::i()->delete( 'core_tasks', array( 'app=? and `key`=?', 'forums', 'rssimport' ) );
/* Delete old template */
\IPS\Db::i()->delete( 'core_theme_templates', array( 'template_app=? and template_name=?', 'forums', 'importPreview' ) );
/* Delete old language strings */
\IPS\Db::i()->delete( 'core_sys_lang_words', array( 'word_app=? and ' . \IPS\Db::i()->in( 'word_key', array(
'r__rss',
'r__rss_manage',
'r__rss_add',
'r__rss_edit',
'r__rss_delete',
'r__rss_run',
'task__rssimport',
'rssimport_task_error',
) ), 'forums' ) );
/* Delete old RSS Table */
\IPS\Db::i()->dropTable( array( 'forums_rss_import', 'forums_rss_imported' ) );
/* Kick off solve index build */
\IPS\Task::queue( 'forums', 'RebuildSolvedIndex', array(), 4 );
/* Insert forums_Cards storage extension */
$settings = json_decode( \IPS\Settings::i()->upload_settings, TRUE );
try
{
if ( \IPS\CIC )
{
$configurationId = \IPS\Db::i()->select( 'id', 'core_file_storage', array( "method=?", 'Amazon' ), "id ASC" )->first();
}
else
{
$configurationId = \IPS\Db::i()->select( 'id', 'core_file_storage', array( "method=?", 'FileSystem' ), "id ASC" )->first();
}
}
catch( \UnderflowException $e )
{
$configurationId = \IPS\Db::i()->select( 'id', 'core_file_storage', NULL, "id ASC" )->first();
}
$settings['filestorage__forums_Cards'] = $configurationId;
\IPS\Settings::i()->changeValues( array( 'upload_settings' => json_encode( $settings ) ) );
return TRUE;
}
}
@@ -0,0 +1,11 @@
{
"added": [
"forumStatistics",
"hotTopics",
"topicFeed",
"postFeed",
"poll"
],
"edited": [],
"removed": []
}