Merge "Remove static method from interface"
[lhc/web/wiklou.git] / includes / content / JavaScriptContentHandler.php
1 <?php
2 /**
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation; either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License along
14 * with this program; if not, write to the Free Software Foundation, Inc.,
15 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 * http://www.gnu.org/copyleft/gpl.html
17 *
18 * @file
19 */
20
21 # XXX: make ScriptContentHandler base class, do highlighting stuff there?
22
23 /**
24 * @since 1.21
25 */
26 class JavaScriptContentHandler extends TextContentHandler {
27
28 public function __construct( $modelId = CONTENT_MODEL_JAVASCRIPT ) {
29 parent::__construct( $modelId, array( CONTENT_FORMAT_JAVASCRIPT ) );
30 }
31
32 public function unserializeContent( $text, $format = null ) {
33 $this->checkFormat( $format );
34
35 return new JavaScriptContent( $text );
36 }
37
38 public function makeEmptyContent() {
39 return new JavaScriptContent( '' );
40 }
41
42 /**
43 * Returns the english language, because JS is english, and should be handled as such.
44 *
45 * @return Language wfGetLangObj( 'en' )
46 *
47 * @see ContentHandler::getPageLanguage()
48 */
49 public function getPageLanguage( Title $title, Content $content = null ) {
50 return wfGetLangObj( 'en' );
51 }
52
53 /**
54 * Returns the english language, because JS is english, and should be handled as such.
55 *
56 * @return Language wfGetLangObj( 'en' )
57 *
58 * @see ContentHandler::getPageViewLanguage()
59 */
60 public function getPageViewLanguage( Title $title, Content $content = null ) {
61 return wfGetLangObj( 'en' );
62 }
63 }