diff options
Diffstat (limited to 'www/wiki/extensions/UniversalLanguageSelector/scripts/compile-font-repo.php')
-rw-r--r-- | www/wiki/extensions/UniversalLanguageSelector/scripts/compile-font-repo.php | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/www/wiki/extensions/UniversalLanguageSelector/scripts/compile-font-repo.php b/www/wiki/extensions/UniversalLanguageSelector/scripts/compile-font-repo.php new file mode 100644 index 00000000..28ef7ef3 --- /dev/null +++ b/www/wiki/extensions/UniversalLanguageSelector/scripts/compile-font-repo.php @@ -0,0 +1,50 @@ +<?php +/** + * + * @author Niklas Laxström + * @license GPL-2.0-or-later + * @file + */ + +// Standard boilerplate to define $IP +if ( getenv( 'MW_INSTALL_PATH' ) !== false ) { + $IP = getenv( 'MW_INSTALL_PATH' ); +} else { + $dir = __DIR__; + $IP = "$dir/../../.."; +} +require_once "$IP/maintenance/Maintenance.php"; + +class CompileFontRepo extends Maintenance { + public function __construct() { + parent::__construct(); + $this->mDescription = 'Creates JavaScript font repository.'; + } + + public function execute() { + $base = dirname( __DIR__ ); + + $compiler = new FontRepoCompiler( + "$base/data/fontrepo/fonts", + '../data/fontrepo/fonts/' + ); + + $list = $compiler->getRepository(); + + $json = FormatJson::encode( $list, "\t" ); + $js = <<<JAVASCRIPT +// Do not edit! This file is generated from data/fontrepo by scripts/compile-font-repo.php +( function () { + $.webfonts = $.webfonts || {}; + $.webfonts.repository = $json; +}() ); + +JAVASCRIPT; + file_put_contents( "$base/resources/js/ext.uls.webfonts.repository.js", $js ); + + $this->output( "Done.\n" ); + } +} + +$maintClass = 'CompileFontRepo'; +require_once RUN_MAINTENANCE_IF_MAIN; |