Version 5.0.6

This commit is contained in:
Neo committed 2025-12-19 18:55:49 -08:00
1 parent a3a4a9ccbd
commit b89858b2ff
1214 files changed
+92828 -14859

No files matched your search

+63 -2
View File
@@ -117,6 +117,12 @@ PHP;
if ( mb_substr( $class, 0, 23 ) === 'IPS\cms\Records\Comment' and is_numeric( mb_substr( $class, 23, 1 ) ) )
{
$databaseId = intval( mb_substr( $class, 23 ) );
$databases = Databases::databases();
if ( ! isset( $databases[ $databaseId ] ) )
{
return false;
}
$data = <<<PHP
namespace IPS\cms\Records;
@@ -136,6 +142,12 @@ PHP;
if ( mb_substr( $class, 0, 22 ) === 'IPS\cms\Records\Review' and is_numeric( mb_substr( $class, 22, 1 ) ) )
{
$databaseId = intval( mb_substr( $class, 22 ) );
$databases = Databases::databases();
if ( ! isset( $databases[ $databaseId ] ) )
{
return false;
}
$data = <<<PHP
namespace IPS\cms\Records;
@@ -155,8 +167,7 @@ PHP;
if ( mb_substr( $class, 0, 18 ) === 'IPS\cms\Categories' and is_numeric( mb_substr( $class, 18, 1 ) ) )
{
$databaseId = intval( mb_substr( $class, 18 ) );
$databases = Databases::databases();
$databases = Databases::databases();
if ( ! isset( $databases[ $databaseId ] ) )
{
@@ -194,6 +205,12 @@ PHP;
if ( mb_substr( $class, 0, 32 ) === 'IPS\cms\Records\RecordsTopicSync' )
{
$databaseId = intval( mb_substr( $class, 32 ) );
$databases = Databases::databases();
if ( ! isset( $databases[ $databaseId ] ) )
{
return false;
}
$data = <<<PHP
namespace IPS\cms\Records;
@@ -218,6 +235,12 @@ PHP;
if ( mb_substr( $class, 0, 32 ) === 'IPS\cms\Records\CommentTopicSync' )
{
$databaseId = intval( mb_substr( $class, 32 ) );
$databases = Databases::databases();
if ( ! isset( $databases[ $databaseId ] ) )
{
return false;
}
$data = <<<PHP
namespace IPS\cms\Records;
@@ -236,18 +259,39 @@ PHP;
if ( mb_substr( $class, 0, 14 ) === 'IPS\cms\Fields' and is_numeric( mb_substr( $class, 14, 1 ) ) )
{
$databaseId = intval( mb_substr( $class, 14 ) );
$databases = Databases::databases();
if ( ! isset( $databases[ $databaseId ] ) )
{
return false;
}
eval( "namespace IPS\\cms; class Fields{$databaseId} extends Fields { public static ?int \$customDatabaseId = $databaseId; protected array \$caches = array( 'database_reciprocal_links', 'cms_fieldids_{$databaseId}' ); }" );
}
if ( mb_substr( $class, 0, 47 ) === 'IPS\cms\extensions\core\EditorLocations\Records' and is_numeric( mb_substr( $class, 47, 1 ) ) )
{
$databaseId = intval( mb_substr( $class, 47 ) );
$databases = Databases::databases();
if ( ! isset( $databases[ $databaseId ] ) )
{
return false;
}
eval( "namespace IPS\\cms\\extensions\\core\\EditorLocations; class Records{$databaseId} extends \\IPS\\cms\\extensions\\core\\EditorLocations\\Records { public static ?int \$customDatabaseId = $databaseId; public static bool \$buttonLocation = TRUE; }" );
}
if( mb_substr( $class, 0, 26 ) == 'IPS\cms\widgets\RecordFeed' )
{
$databaseId = intval( mb_substr( $class, 26 ) );
$databases = Databases::databases();
if ( ! isset( $databases[ $databaseId ] ) )
{
return false;
}
$data = <<<PHP
namespace IPS\cms\widgets;
class RecordFeed{$databaseId} extends RecordFeed {
@@ -779,4 +823,21 @@ HTML;
'activityTabs' => array()
);
}
/**
* Database check
*
* @return array Queries needed to correct database in the following format ( table => x, query = x );
*/
public function databaseCheck(): array
{
$response = parent::databaseCheck();
foreach( Databases::databases() as $db )
{
Databases::checkandFixDatabaseSchema( $db->_id );
}
return $response;
}
}