addDescription( 'Add RFC and PMID to the interwiki database table' ); } protected function getUpdateKey() { return __CLASS__; } protected function updateSkippedMessage() { return 'RFC and PMID already added to interwiki database table.'; } protected function doDBUpdates() { $interwikiCache = $this->getConfig()->get( 'InterwikiCache' ); // Using something other than the database, if ( $interwikiCache !== false ) { return true; } $dbw = $this->getDB( DB_MASTER ); $rfc = $dbw->selectField( 'interwiki', 'iw_url', [ 'iw_prefix' => 'rfc' ], __METHOD__ ); // Old pre-1.28 default value, or not set at all if ( $rfc === false || $rfc === 'http://www.rfc-editor.org/rfc/rfc$1.txt' ) { $dbw->replace( 'interwiki', [ 'iw_prefix' ], [ 'iw_prefix' => 'rfc', 'iw_url' => 'https://tools.ietf.org/html/rfc$1', 'iw_api' => '', 'iw_wikiid' => '', 'iw_local' => 0, ], __METHOD__ ); } $dbw->insert( 'interwiki', [ 'iw_prefix' => 'pmid', 'iw_url' => 'https://www.ncbi.nlm.nih.gov/pubmed/$1?dopt=Abstract', 'iw_api' => '', 'iw_wikiid' => '', 'iw_local' => 0, ], __METHOD__, // If there's already a pmid interwiki link, don't // overwrite it [ 'IGNORE' ] ); return true; } } $maintClass = AddRFCandPMIDInterwiki::class; require_once RUN_MAINTENANCE_IF_MAIN;