aboutsummaryrefslogtreecommitdiffstats
path: root/include/classes/BigPipe/Pagelet.php
blob: 6fe0032807b71a58bd4c35b3a7e7cf7797795523 (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
<?php
namespace BigPipe;

class Pagelet {
	private $ID           = NULL;
	private $HTML         = NULL;
	private $JSCode       = "";
	private $CSSFiles     = [];
	private $JSFiles      = [];
	private static $count = 0;

	public function __construct($priority = 50) {
		$this->ID = 'P'.++self::$count;
		BigPipe::addPagelet($this, $priority);
	}

	#====================================================================================================
	# ID zurückgeben
	#====================================================================================================
	public function getID() {
		return $this->ID;
	}

	#====================================================================================================
	# HTML-Code zurückgeben
	#====================================================================================================
	public function getHTML() {
		return $this->HTML;
	}

	#====================================================================================================
	# CSS-Ressourcen zurückgeben
	#====================================================================================================
	public function getCSSFiles() {
		return $this->CSSFiles;
	}

	#====================================================================================================
	# JS-Ressourcen zurückgeben
	#====================================================================================================
	public function getJSFiles() {
		return $this->JSFiles;
	}

	#====================================================================================================
	# JS-Code zurückgeben
	#====================================================================================================
	public function getJSCode() {
		return $this->JSCode;
	}

	#====================================================================================================
	# HTML-Code hinzufügen
	#====================================================================================================
	public function addHTML($HTML) {
		$this->HTML .= $HTML;
	}

	#====================================================================================================
	# CSS-Ressource hinzufügen
	#====================================================================================================
	public function addCSS($file) {
		$this->CSSFiles[] = $file;
	}

	#====================================================================================================
	# JS-Ressource hinzufügen
	#====================================================================================================
	public function addJS($file) {
		$this->JSFiles[] = $file;
	}

	#====================================================================================================
	# JS-Code hinzufügen
	#====================================================================================================
	public function addJSCode($code) {
		$this->JSCode .= $code;
	}

	#====================================================================================================
	# Magische Methode: __toString()
	#====================================================================================================
	public function __toString() {
		return '<div id="'.$this->getID().'">'.((!BigPipe::isEnabled()) ? $this->getHTML() : NULL).'</div>';
	}
}