Version 4.7.6

This commit is contained in:
Neo committed 2025-12-19 16:05:19 -08:00
1 parent 8ba7d43898
commit 7b7404e741
1085 files changed
+30590 -7837

No files matched your search

+1 -1
View File
@@ -549,7 +549,7 @@ class Convert
}
/* If we have moved the only row from $batch to $nextbatch, then process that now */
if ( \is_array( $batch ) and \count( $nextBatch ) and ! \count( $batch ) )
if ( \is_array( $batch ) and ( \is_countable( $nextBatch ) and \count( $nextBatch ) ) and ! \count( $batch ) )
{
$batch = $nextBatch;
$nextBatch = array();
+1 -5
View File
@@ -1,9 +1,5 @@
=============================[NOTE]=============================
This software is Nulled!
Nulled by IPBMafia.ru
Buy license at https://www.invisionpower.com/buy/self-hosted
================================================================
IPS 4.7.0 (107014)
IPS 4.7.6 (107601)
=============================[NOTE]=============================
Invision Community End User License Agreement
@@ -65,8 +65,6 @@
<a href='{expression="\IPS\Settings::i()->base_url"}' class='ipsButton ipsButton_large ipsButton_primary'>{lang="gotosuite"}</a>
<a href='{expression="rtrim( \IPS\Settings::i()->base_url, '/' ) . '/' . \IPS\CP_DIRECTORY"}' class='ipsButton ipsButton_large ipsButton_normal'>{lang="gotoacp"}</a>
<br><br>
<a href='https://ipbmafia.ru/files/file/1848-russkiy-yazyk-dlya-invision-community/' target="_blank" class='ipsButton ipsButton_large ipsButton_normal' style="background: red;">Russian lang pack</a>
<br><br>
<a href="{expression="\IPS\Http\Url::ips('docs/docs')"}" target="_blank" rel="noopener">{lang="docs_link"}</a>
</div>
{{else}}
@@ -88,7 +86,6 @@
<a href="{expression="\IPS\Http\Url::ips('docs/install_guide')"}" target="_blank" rel="noopener">{lang="install_guide"}</a>
</div>
{{endif}}
<p style="text-align: right; margin:10px">Nulled by IPBMafia.ru</p>
</main>
<div class="ipsType_center ipsType_light ipsPad_double">
{lang="server_ip"} {expression="$_SERVER['SERVER_ADDR'] ?? ( $_SERVER['LOCAL_ADDR'] ?? 'unavailable' )"}
+2 -1
View File
@@ -28,6 +28,7 @@ $lang = array(
'err_conf_nowrite' => "In order to install Invision Community, you must make the <em>conf_global.php</em> writeable. If you are not sure how to do this, contact your hosting provider.",
'form_required' => "This field is required.",
'form_email_bad' => "That is not a valid email address.",
'form_bad_value' => "That value is not allowed.",
'form_password_confirm' => "The passwords do not match.",
'step' => "Step %d",
'continue' => "Continue",
@@ -133,7 +134,7 @@ $lang = array(
'sql_database' => "Database Name",
'sql_database_desc' => "If the database does not exist we will try to create it. If your MySQL user does not have permission and you're not sure how to create a database, contact your hosting provider for assistance.",
'sql_tbl_prefix' => "Table Prefix",
'sql_tbl_prefix_desc' => "If provided, all database tables created will be prefixed with the value provided. It is recommended this is left blank.",
'sql_tbl_prefix_desc' => "If provided, all database tables created will be prefixed with the value provided. It is recommended this is left blank. Allowed characters: 0-9 a-z - _",
'sql_port' => "Port",
'sql_port_desc' => "If you are not sure, leave at the default value.",
'sql_socket' => "Socket",
+2 -1
View File
@@ -132,7 +132,8 @@ hr.ipsHr {
.ipsList_bullets {
list-style-type: disc;
margin-left: 16px;
margin-left: 32px;
margin-bottom: 16px;
}
.ipsList_checks li {
-22
View File
@@ -1,22 +0,0 @@
<ips:template parameters="$apps, $selected" />
<ul class='ipsField_fieldList'>
{{foreach $apps as $key => $data}}
<li>
<input type="checkbox" id='app_{$key}' name="apps[{$key}]" {{if $data['force'] or \in_array( $key, $selected )}}checked{{endif}} {{if $data['force'] or $data['disabled']}}disabled{{endif}} value='1'>
<div class='ipsField_fieldList_content'>
<label for='app_{$key}' class='ipsFieldRow_label'>{$data['name']}</label>
<dl class='ipsVersions{{if $data['disabled']}} disabled{{endif}}'>
<dt>{lang="current_version"}</dt>
<dd>{$data['current']}</dd>
<dt>{lang="available_version"}</dt>
<dd>{$data['available']}</dd>
</dl>
{{if !empty( $data['errors'] )}}
<p class="ipsMessage ipsMessage_error">
{expression="implode( '<br />', $data['errors'] )" raw="true"}
</p>
{{endif}}
</div>
</li>
{{endforeach}}
</ul>
@@ -1,9 +1,11 @@
<ips:template parameters="$disabledApps, $disabledPlugins" />
<div class="ipsPad">
<p class="ipsType_normal">{lang="third_party_stuff_disabled"}</p>
<ips:template parameters="$disabledApps, $disabledPlugins, $showMessage=true" />
<div class="ipsPad ipsType_left ipsPos_center">
{{if $showMessage}}
<p class="ipsType_normal">{lang="third_party_stuff_disabled"}</p>
{{endif}}
{{if \count( $disabledApps )}}
<p class="ipsType_normal">{lang="third_party_stuff_disabled_apps"}</p>
<ul class='ipsList_bullets'>
<ul class='ipsList_bullets ipsType_left'>
{{foreach $disabledApps as $app}}
<li>{$app}</li>
{{endforeach}}
@@ -11,11 +13,13 @@
{{endif}}
{{if \count( $disabledPlugins )}}
<p class="ipsType_normal">{lang="third_party_stuff_disabled_plugins"}</p>
<ul class='ipsList_bullets'>
<ul class='ipsList_bullets ipsType_left'>
{{foreach $disabledPlugins as $plugin}}
<li>{$plugin}</li>
{{endforeach}}
</ul>
{{endif}}
<p class="ipsType_normal">{lang="third_party_stuff_disabled_end"}</p>
{{if $showMessage}}
<p class="ipsType_normal">{lang="third_party_stuff_disabled_end"}</p>
{{endif}}
</div>
@@ -43,7 +43,7 @@
<div class='ipsColumns ipsPad'>
<div class='ipsColumn ipsColumn_wide ipsPad' id='elInstaller_stepsWrap'>
<ul id='elInstaller_steps'>
{{foreach array( 1 => 'login', 2 => 'healthcheck', 3 => 'license', 4 => 'applications', 5 => 'upgradeoptions', 6 => 'confirm', 7 => 'upgrade' ) as $i => $lang}}
{{foreach array( 1 => 'login', 2 => 'healthcheck', 3 => 'license', 5 => 'upgradeoptions', 6 => 'confirm', 7 => 'upgrade' ) as $i => $lang}}
<li class='{{if \IPS\Dispatcher::i()->step == $i}}elInstaller_stepActive{{elseif \IPS\Dispatcher::i()->step > $i}}elInstaller_stepDone{{endif}}'>
<i class='{{if \IPS\Dispatcher::i()->step == $i or ( !\IPS\Dispatcher::i()->step and $i == 1 )}}fa fa-circle{{elseif \IPS\Dispatcher::i()->step > $i}}fa fa-check{{else}}fa fa-circle-o{{endif}}'></i>&nbsp;&nbsp;{lang="$lang"}
</li>
@@ -77,8 +77,6 @@
<a href='{expression="\IPS\Settings::i()->base_url"}' class='ipsButton ipsButton_large ipsButton_primary'>{lang="go_to_suite"}</a>
<a href='{expression="rtrim( \IPS\Settings::i()->base_url, '/' ) . '/' . \IPS\CP_DIRECTORY"}' class='ipsButton ipsButton_large ipsButton_normal'>{lang="go_to_acp"}</a>
<br><br>
<a href='https://ipbmafia.ru/files/file/1848-russkiy-yazyk-dlya-invision-community/' target="_blank" class='ipsButton ipsButton_large ipsButton_normal' style="background: red;">Russian lang pack</a>
<br><br>
<a href="{expression="\IPS\Http\Url::ips('docs/docs')"}" target="_blank" rel="noopener">{lang="suite_docs"}</a>
</div>
{{else}}
@@ -99,7 +97,6 @@
<a href="{expression="\IPS\Http\Url::ips('docs/install_guide')"}" target="_blank" rel="noopener">{lang="install_docs"}</a>
</div>
{{endif}}
<p style="text-align: right; margin:10px">Nulled by IPBMafia.ru</p>
</main>
</div>
</body>
@@ -0,0 +1,8 @@
<ips:template parameters="$table" />
<div class="ipsPadding:half">
<div class="ipsMessage ipsMessage_info">{lang="advise_removal_of_php8_incompatible_code"}</div>
<div>
{$table|raw}
</div>
</div>
@@ -6,7 +6,7 @@
<li>
<strong>{lang="upgrade_applications"}</strong>
<ul>
{{foreach( $json['session']['apps'] ) as $app}}
{{foreach $json['session']['apps'] as $app => $data}}
<li>{expression="ucfirst( $app )"}</li>
{{endforeach}}
</ul>
+37
View File
@@ -681,4 +681,41 @@ $lang = array(
'106000_deprecation' => "The following Cache and Datastore methods have been removed in Invision Community 4.6: APC, Wincache, Memcached and XCache.<br>You do not need to do anything as the caching method will be reverted to 'None' after this upgrade.",
/* PHP 8 Compatibility Issues */
'method_check_fail' => 'PHP8 Incompatible Customizations',
'method_check_fix' => 'Outdated Overloaded 3rd Party Methods',
'methodscanner_no_issues' => 'No PHP8 Issues found',
'invalid_php8_customization' => 'Contains outdated code. Please contact the Author for an updated version.',
'method_issue_security' => 'Conflicting security level',
'method_issue_static' => 'Inconsistent static declaration',
'method_issue_return_type' => 'Conflicting return type hints',
'method_issue_parameter_type' => 'Conflicting parameter type',
'method_issue_nullable' => 'Conflicting parameter nullability',
'method_issue_reference' => 'Conflicting reference',
'method_issue_packed' => 'Packed status differs',
'method_issue_final' => 'Overloaded final method',
'method_issue_parameters' => 'Mismatching parameter list',
'method_issue_security_desc' => 'Overloading method in the app/plugin changes the security (public, private, or protected) level from the base class from which it inherits',
'method_issue_static_desc' => 'Base method is static and overloading method is not or vice versa',
'method_issue_return_type_desc' => 'Base method has a different return type hint than the subclass\'s method',
'method_issue_parameter_type_desc' => "Overloading method changes a parameter's type",
'method_issue_nullable_desc' => 'Base method defined a parameter as nullable but the overloaded did not or vice versa',
'method_issue_reference_desc' => 'The parameter is passed by reference to the base method but not to the overloading method or vice versa',
'method_issue_packed_desc' => 'The parameter is "packed" in the base method but not in the overloading method or vice versa',
'method_issue_final_desc' => 'A class in the app/plugin overloaded a method that was declared final, meaning it cannot be overloaded',
'method_issue_parameters_desc' => 'A subclass method in the app/plugin defines a different set of parameters than the base class from which it inherits',
'method_type' => 'Type',
'method_app' => 'App',
'method_reason' => 'Issue',
'method_scanner_method' => 'Method',
'method_subclassFile' => 'Subclass/Hook File',
'method_baseFile' => 'Base Class File',
'method_parameter' => 'Bad Parameter',
'method_na' => 'N/A',
'method_priority' => 'Priority',
'acp_notification_ManualInterventionMessage' => 'PHP8 Incompatible Customizations',
'advise_removal_of_php8_incompatible_code' => <<<TEXT
<div style="text-align: left">We are currently in the process of migrating our platform from PHP7 to PHP8 in order to provide you with the greatest level of performance and security. We've identified and disabled one or more Applications or Plugins currently installed on your site which contain PHP8 incompatible code. Refer to the AdminCP &gt; Support &gt; Get Support page for more information.<br><br>You can re-enable these Applications and Plugins via the AdminCP &gt; Applications page. Please make a note of the following Applications and Plugins so you are clear which have been automatically disabled via the upgrader.</div>
TEXT,
);