From 6a82602f681c1b5fd57bbd801f1d4bb2b5e32432 Mon Sep 17 00:00:00 2001 From: "Moritz Schubotz (physikerwelt)" Date: Mon, 24 Jul 2023 14:59:09 +0200 Subject: [PATCH 1/2] Add setings explicitly Removed in https://github.com/MaRDI4NFDI/docker-wikibase/pull/93 --- .../LocalSettings.override.php | 75 +------------------ mediawiki/LocalSettings.d/Vector.php | 32 ++++++++ mediawiki/LocalSettings.d/Wikibase.php | 60 +++++++++++++++ 3 files changed, 93 insertions(+), 74 deletions(-) create mode 100644 mediawiki/LocalSettings.d/Vector.php create mode 100644 mediawiki/LocalSettings.d/Wikibase.php diff --git a/mediawiki/LocalSettings.d/LocalSettings.override.php b/mediawiki/LocalSettings.d/LocalSettings.override.php index 0508fa4..04fe875 100644 --- a/mediawiki/LocalSettings.d/LocalSettings.override.php +++ b/mediawiki/LocalSettings.d/LocalSettings.override.php @@ -35,35 +35,7 @@ # Remove rate limits for bots $wgGroupPermissions['bot']['noratelimit'] = true; -# Set name of the wiki -$wgSitename = 'MaRDI portal'; -# Set MaRDI logo and icon -$wgLogos = [ - 'icon' => $wgScriptPath . '/images_repo/MaRDI_Logo_L_5_rgb_50p.svg', - 'svg' => $wgScriptPath . '/images_repo/MaRDI_Logo_L_5_rgb_50p.svg', -]; -$wgFavicon = $wgScriptPath . '/images_repo/favicon.png'; - -# Footer -$wgHooks['SkinTemplateOutputPageBeforeExec'][] = function( $sk, &$tpl ) { - # Remove existing entries - $tpl->set('about', FALSE); - $tpl->set('privacy', FALSE); - $tpl->set('disclaimer', FALSE); - return true; -}; -$wgHooks['SkinAddFooterLinks'][] = function ( Skin $skin, string $key, array &$footerlinks ) { - if ( $key === 'places' ) { - $footerlinks['Imprint'] = Html::element( 'a', - [ - 'href' => 'https://www.mardi4nfdi.de/imprint', - 'rel' => 'noreferrer noopener' // not required, but recommended for security reasons - ], - 'Imprint'); - }; - return true; -}; # Enabling uploads for images. $wgEnableUploads = true; @@ -149,55 +121,10 @@ $wgMathWikibasePropertyIdDefiningFormula = "P14"; $wgMathWikibasePropertyIdHasPart = "P4"; -# enable linking between wikibase and content pages -$wgWBRepoSettings['siteLinkGroups'] = [ 'mathematics' ]; -$wgWBClientSettings['siteLinkGroups'] = [ 'mathematics' ]; -$wgWBClientSettings['siteGlobalID'] = 'mardi'; -$wgWBClientSettings['repoUrl'] = 'https://portal.mardi4nfdi.de'; -$wgWBClientSettings['repoScriptPath'] = '/w'; -$wgWBClientSettings['repoArticlePath'] = '/wiki/$1'; -$wgWBClientSettings['entitySources'] = [ - 'mardi_source' => [ - 'repoDatabase' => 'my_wiki', - 'baseUri' => 'https://portal.mardi4nfdi.de/entity', - 'entityNamespaces' => [ - 'item' => 120, - 'property' => 122, - ], - 'rdfNodeNamespacePrefix' => 'wd', - 'rdfPredicateNamespacePrefix' => '', - 'interwikiPrefix' => 'mardi', - ], -]; -$wgWBClientSettings['itemAndPropertySourceName'] = 'mardi_source'; -// my_wiki is the MaRDI database -$wgLocalDatabases = [ 'wiki_swmath', 'my_wiki' ]; -$wgWBRepoSettings['localClientDatabases'] = [ - 'mardi' => 'my_wiki', - 'swmath' => 'wiki_swmath' -]; - -// insert site with -// php addSite.php --filepath=https://portal.mardi4nfdi.de/w/\$1 --pagepath=https://portal.mardi4nfdi.de/wiki/\$1 --language en --interwiki-id mardi mardi mathematics -// php addSite.php --filepath=https://staging.swmath.org/w/\$1 --pagepath=https://staging.swmath.org/wiki/\$1 --language en --interwiki-id swmath swmath mathematics - +# # increase memory limit ini_set('memory_limit', '2G'); # https://github.com/MaRDI4NFDI/portal-compose/issues/322 $wgUseInstantCommons = true; -# Increase string size limits -$wgWBRepoSettings['string-limits'] = [ - 'VT:string' => [ - 'length' => 200000, - ], - 'multilang' => [ - 'length' => 2000, - ], - 'VT:monolingualtext' => [ - 'length' => 1000, - ], -]; - -$wgDefaultSkin = 'vector-2022'; diff --git a/mediawiki/LocalSettings.d/Vector.php b/mediawiki/LocalSettings.d/Vector.php new file mode 100644 index 0000000..6cc84d1 --- /dev/null +++ b/mediawiki/LocalSettings.d/Vector.php @@ -0,0 +1,32 @@ +wfLoadSkin( 'Vector' ); +$wgDefaultSkin = 'vector-2022'; + +# Set name of the wiki +$wgSitename = 'MaRDI portal'; + +# Set MaRDI logo and icon +$wgLogos = [ + 'icon' => $wgScriptPath . '/images_repo/MaRDI_Logo_L_5_rgb_50p.svg', + 'svg' => $wgScriptPath . '/images_repo/MaRDI_Logo_L_5_rgb_50p.svg', +]; +$wgFavicon = $wgScriptPath . '/images_repo/favicon.png'; + +# Footer +$wgHooks['SkinTemplateOutputPageBeforeExec'][] = function( $sk, &$tpl ) { + # Remove existing entries + $tpl->set('about', FALSE); + $tpl->set('privacy', FALSE); + $tpl->set('disclaimer', FALSE); + return true; +}; +$wgHooks['SkinAddFooterLinks'][] = function ( Skin $skin, string $key, array &$footerlinks ) { + if ( $key === 'places' ) { + $footerlinks['Imprint'] = Html::element( 'a', + [ + 'href' => 'https://www.mardi4nfdi.de/imprint', + 'rel' => 'noreferrer noopener' // not required, but recommended for security reasons + ], + 'Imprint'); + }; + return true; +}; \ No newline at end of file diff --git a/mediawiki/LocalSettings.d/Wikibase.php b/mediawiki/LocalSettings.d/Wikibase.php new file mode 100644 index 0000000..397e3dd --- /dev/null +++ b/mediawiki/LocalSettings.d/Wikibase.php @@ -0,0 +1,60 @@ +## Wikibase + +wfLoadExtension( 'WikibaseClient', "$IP/extensions/Wikibase/extension-client.json" ); +require_once "$IP/extensions/Wikibase/client/ExampleSettings.php"; + + enable linking between wikibase and content pages +$wgWBRepoSettings['siteLinkGroups'] = [ 'mathematics' ]; +$wgWBClientSettings['siteLinkGroups'] = [ 'mathematics' ]; +$wgWBClientSettings['siteGlobalID'] = 'mardi'; +$wgWBClientSettings['repoUrl'] = 'https://portal.mardi4nfdi.de'; +$wgWBClientSettings['repoScriptPath'] = '/w'; +$wgWBClientSettings['repoArticlePath'] = '/wiki/$1'; +$wgWBClientSettings['entitySources'] = [ + 'mardi_source' => [ + 'repoDatabase' => 'my_wiki', + 'baseUri' => 'https://portal.mardi4nfdi.de/entity', + 'entityNamespaces' => [ + 'item' => 120, + 'property' => 122, + ], + 'rdfNodeNamespacePrefix' => 'wd', + 'rdfPredicateNamespacePrefix' => '', + 'interwikiPrefix' => 'mardi', + ], +]; +$wgWBClientSettings['itemAndPropertySourceName'] = 'mardi_source'; +// my_wiki is the MaRDI database +$wgLocalDatabases = [ 'wiki_swmath', 'my_wiki' ]; + + +if ( !str_contains($_SERVER['HTTP_HOST'],'swmath') ){ + + wfLoadExtension( 'WikibaseRepository', "$IP/extensions/Wikibase/extension-repo.json" ); + require_once "$IP/extensions/Wikibase/repo/ExampleSettings.php"; + + $wgWBRepoSettings['localClientDatabases'] = [ + 'mardi' => 'my_wiki', + 'swmath' => 'wiki_swmath' + ]; + // insert site with + // php addSite.php --filepath=https://portal.mardi4nfdi.de/w/\$1 --pagepath=https://portal.mardi4nfdi.de/wiki/\$1 --language en --interwiki-id mardi mardi mathematics + // php addSite.php --filepath=https://staging.swmath.org/w/\$1 --pagepath=https://staging.swmath.org/wiki/\$1 --language en --interwiki-id swmath swmath mathematics + + + # Pingback + $wgWBRepoSettings['wikibasePingback'] = false; + + # Increase string size limits + $wgWBRepoSettings['string-limits'] = [ + 'VT:string' => [ + 'length' => 200000, + ], + 'multilang' => [ + 'length' => 2000, + ], + 'VT:monolingualtext' => [ + 'length' => 1000, + ], + ]; +} \ No newline at end of file From b4d6fb6724a823bc40b592155b82b8fb110becba Mon Sep 17 00:00:00 2001 From: Moritz Schubotz Date: Mon, 24 Jul 2023 15:21:49 +0200 Subject: [PATCH 2/2] Make LocalSetting modification availiable to test --- docker-compose-ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index 0efad0c..656abbf 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -18,6 +18,8 @@ services: - "${WIKIBASE_PORT}:80" environment: <<: *wikibase_variables + volumes: + - ./mediawiki/LocalSettings.d:/var/www/html/LocalSettings.d:ro wdqs-frontend: ports: