Файловый менеджер - Редактировать - /var/www/html/UserBoard.zip
Ðазад
PK ! ���k� � 5 maintenance/migrateOldUserBoardUserColumnsToActor.phpnu �[��� <?php /** * @file * @ingroup Maintenance */ use MediaWiki\MediaWikiServices; $IP = getenv( 'MW_INSTALL_PATH' ); if ( $IP === false ) { $IP = __DIR__ . '/../../../..'; } require_once "$IP/maintenance/Maintenance.php"; /** * Run automatically with update.php * * @since January 2020 */ class MigrateOldUserBoardUserColumnsToActor extends LoggedUpdateMaintenance { public function __construct() { parent::__construct(); $this->addDescription( 'Migrates data from old _user_name/_user_id columns in the user_board table to the new actor columns.' ); } /** * Get the update key name to go in the update log table * * @return string */ protected function getUpdateKey() { return __CLASS__; } /** * Message to show that the update was done already and was just skipped * * @return string */ protected function updateSkippedMessage() { return 'user_board has already been migrated to use the actor columns.'; } /** * Do the actual work. * * @return bool True to log the update as done */ protected function doDBUpdates() { $dbw = $this->getDB( DB_PRIMARY ); if ( !$dbw->fieldExists( 'user_board', 'ub_user_id', __METHOD__ ) ) { return true; } $res = $dbw->select( 'user_board', [ 'ub_user_id' ], '', __METHOD__, [ 'DISTINCT' ] ); foreach ( $res as $row ) { $user = User::newFromId( $row->ub_user_id ); if ( interface_exists( '\MediaWiki\User\ActorNormalization' ) ) { // MW 1.36+ $actorId = MediaWikiServices::getInstance()->getActorNormalization()->acquireActorId( $user, $dbw ); } else { $actorId = $user->getActorId( $dbw ); } $dbw->update( 'user_board', [ 'ub_actor' => $actorId ], [ 'ub_user_id' => $row->ub_user_id ], __METHOD__ ); } $res = $dbw->select( 'user_board', [ 'ub_user_id_from' ], '', __METHOD__, [ 'DISTINCT' ] ); foreach ( $res as $row ) { $user = User::newFromId( $row->ub_user_id_from ); if ( interface_exists( '\MediaWiki\User\ActorNormalization' ) ) { // MW 1.36+ $actorId = MediaWikiServices::getInstance()->getActorNormalization()->acquireActorId( $user, $dbw ); } else { $actorId = $user->getActorId( $dbw ); } $dbw->update( 'user_board', [ 'ub_actor_from' => $actorId ], [ 'ub_user_id_from' => $row->ub_user_id_from ], __METHOD__ ); } return true; } } $maintClass = MigrateOldUserBoardUserColumnsToActor::class; require_once RUN_MAINTENANCE_IF_MAIN; PK ! X)D sql/user_board.sqlnu �[��� -- -- Table structure for table `user_board` -- CREATE TABLE IF NOT EXISTS /*_*/user_board ( `ub_id` int(11) PRIMARY KEY auto_increment, `ub_actor` bigint unsigned NOT NULL, `ub_actor_from` bigint unsigned NOT NULL, `ub_message` text NOT NULL, `ub_type` int(5) default '0', `ub_date` datetime default NULL ) /*$wgDBTableOptions*/; CREATE INDEX /*i*/ub_actor ON /*_*/user_board (ub_actor); CREATE INDEX /*i*/ub_actor_from ON /*_*/user_board (ub_actor_from); CREATE INDEX /*i*/ub_type ON /*_*/user_board (ub_type); PK ! $���) ) sql/user_board.postgres.sqlnu �[��� -- Postgres version CREATE TABLE user_board ( ub_id SERIAL PRIMARY KEY, ub_actor INTEGER NOT NULL DEFAULT 0, ub_actor_from INTEGER NOT NULL DEFAULT 0, ub_message TEXT NOT NULL, ub_type INTEGER DEFAULT 0, ub_date TIMESTAMPTZ NOT NULL DEFAULT now() ); CREATE INDEX social_profile_ub_actor ON user_board(ub_actor); CREATE INDEX social_profile_ub_actor_from ON user_board(ub_actor_from); CREATE INDEX social_profile_ub_type ON user_board(ub_type); PK ! ���"A A 0 sql/patches/actor/add-ub_actor_from.postgres.sqlnu �[��� ALTER TABLE user_board ADD COLUMN ub_actor_from INTEGER NOT NULL;PK ! _}�. . + sql/patches/actor/drop-ub_user_id_index.sqlnu �[��� DROP INDEX /*i*/ub_user_id ON /*_*/user_board;PK ! �n�4 4 % sql/patches/actor/drop-ub_user_id.sqlnu �[��� ALTER TABLE /*_*/user_board DROP COLUMN ub_user_id; PK ! >�<Z Z '