summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/SemanticMediaWiki/src/MediaWiki/Specials/Admin/SupportListTaskHandler.php
blob: 91b4065f227233ac101ad81e4c2d7d24d207faae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<?php

namespace SMW\MediaWiki\Specials\Admin;

use Html;
use SMW\MediaWiki\Renderer\HtmlFormRenderer;
use WebRequest;

/**
 * @license GNU GPL v2+
 * @since   2.5
 *
 * @author mwjames
 */
class SupportListTaskHandler extends TaskHandler {

	/**
	 * @var HtmlFormRenderer
	 */
	private $htmlFormRenderer;

	/**
	 * @since 2.5
	 *
	 * @param HtmlFormRenderer $htmlFormRenderer
	 */
	public function __construct( HtmlFormRenderer $htmlFormRenderer ) {
		$this->htmlFormRenderer = $htmlFormRenderer;
	}

	/**
	 * @since 3.0
	 *
	 * {@inheritDoc}
	 */
	public function getSection() {
		return self::SECTION_SUPPORT;
	}

	/**
	 * @since 3.0
	 *
	 * {@inheritDoc}
	 */
	public function hasAction() {
		return false;
	}

	/**
	 * @since 2.5
	 *
	 * {@inheritDoc}
	 */
	public function isTaskFor( $task ) {
		return $false;
	}

	/**
	 * @since 2.5
	 *
	 * {@inheritDoc}
	 */
	public function getHtml() {

		$html = $this->createSupportForm() . $this->createRegistryForm();
		$html .= Html::element( 'p', [], '' );

		return Html::rawElement( 'div', [], $html );
	}

	/**
	 * @since 2.5
	 *
	 * @return string
	 */
	public function createSupportForm() {
		$this->htmlFormRenderer
			->setName( 'support' )
			->addHeader( 'h3', $this->msg('smw-admin-support' ) )
			->addParagraph( $this->msg( 'smw-admin-supportdocu' ) )
			->addParagraph(
				Html::rawElement( 'ul', [],
					Html::rawElement( 'li', [], $this->msg( 'smw-admin-installfile' ) ) .
					Html::rawElement( 'li', [], $this->msg( 'smw-admin-smwhomepage' ) ) .
					Html::rawElement( 'li', [], $this->msg( 'smw-admin-bugsreport' ) ) .
					Html::rawElement( 'li', [], $this->msg( 'smw-admin-questions' ) )
				)
			);

		return $this->htmlFormRenderer->getForm();
	}

	/**
	 * @since 2.5
	 *
	 * @return string
	 */
	public function createRegistryForm() {

		$this->htmlFormRenderer
			->setName( 'announce' )
			->setMethod( 'get' )
			->setActionUrl( 'https://wikiapiary.com/wiki/WikiApiary:Semantic_MediaWiki_Registry' )
			->addHeader( 'h3', $this->msg( 'smw-admin-announce' ) )
			->addParagraph( $this->msg( 'smw-admin-announce-text' ) )
			->addSubmitButton(
				$this->msg( 'smw-admin-announce' ),
				[
					'class' => ''
				]
			);

		return $this->htmlFormRenderer->getForm();
	}

	/**
	 * @since 2.5
	 *
	 * {@inheritDoc}
	 */
	public function handleRequest( WebRequest $webRequest ) {
	}

}