SkinApi.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. /**
  3. * Extremely basic "skin" for API output, which needs to output a page without
  4. * the usual skin elements but still using CSS, JS, and such via OutputPage and
  5. * ResourceLoader.
  6. *
  7. * Copyright © 2014 Wikimedia Foundation and contributors
  8. *
  9. * This program is free software; you can redistribute it and/or modify
  10. * it under the terms of the GNU General Public License as published by
  11. * the Free Software Foundation; either version 2 of the License, or
  12. * (at your option) any later version.
  13. *
  14. * This program is distributed in the hope that it will be useful,
  15. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. * GNU General Public License for more details.
  18. *
  19. * You should have received a copy of the GNU General Public License along
  20. * with this program; if not, write to the Free Software Foundation, Inc.,
  21. * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  22. * http://www.gnu.org/copyleft/gpl.html
  23. *
  24. * @file
  25. */
  26. /**
  27. * SkinTemplate class for API output
  28. * @since 1.25
  29. */
  30. class SkinApi extends SkinTemplate {
  31. public $skinname = 'apioutput';
  32. public $template = SkinApiTemplate::class;
  33. public function getDefaultModules() {
  34. $modules = parent::getDefaultModules();
  35. $modules['styles']['skin'][] = 'mediawiki.skinning.interface';
  36. // There is no search box, disable 'mediawiki.searchSuggest'
  37. $modules['search'] = [];
  38. return $modules;
  39. }
  40. // Skip work and hooks for stuff we don't use
  41. function buildSidebar() {
  42. return [];
  43. }
  44. function getNewtalks() {
  45. return '';
  46. }
  47. function getSiteNotice() {
  48. return '';
  49. }
  50. public function getLanguages() {
  51. return [];
  52. }
  53. protected function buildPersonalUrls() {
  54. return [];
  55. }
  56. protected function buildContentNavigationUrls() {
  57. return [];
  58. }
  59. protected function buildNavUrls() {
  60. return [];
  61. }
  62. }