+ html( 'title' ) ?> +
+html( 'subtitle' ) ?>
+ data['undelete'] ) { + ?> +html( 'undelete' ) ?>
+ +diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 0000000..9c56558 --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,20 @@ +/*jshint node:true */ +module.exports = function ( grunt ) { + grunt.loadNpmTasks( 'grunt-banana-checker' ); + grunt.loadNpmTasks( 'grunt-jsonlint' ); + + grunt.initConfig( { + banana: { + all: 'i18n/' + }, + jsonlint: { + all: [ + '**/*.json', + '!node_modules/**' + ] + } + } ); + + grunt.registerTask( 'test', [ 'jsonlint', 'banana' ] ); + grunt.registerTask( 'default', 'test' ); +}; diff --git a/Timeless.php b/Timeless.php new file mode 100644 index 0000000..ea0bc9e --- /dev/null +++ b/Timeless.php @@ -0,0 +1,10 @@ +addMeta( 'viewport', 'width=device-width, initial-scale=1.0' ); + + $out->addModuleStyles( array( + 'mediawiki.skinning.interface', + 'mediawiki.skinning.content.externallinks', + 'skins.timeless' + ) ); + $out->addModules( array( 'skins.timeless.js' ) ); + } +} diff --git a/TimelessTemplate.php b/TimelessTemplate.php new file mode 100644 index 0000000..e384666 --- /dev/null +++ b/TimelessTemplate.php @@ -0,0 +1,248 @@ +html( 'headelement' ); + ?> +
html( 'subtitle' ) ?>
+ data['undelete'] ) { + ?> +html( 'undelete' ) ?>
+ +