From 903100ecb99ab926d4ac3be4eba11ea1c9800e12 Mon Sep 17 00:00:00 2001 From: Thomas Lange Date: Sat, 25 Jul 2015 21:55:05 +0200 Subject: Namespaces added --- include/classes/BigPipe/BigPipe.php | 81 ++++++++++++++++++++++++++++++++++ include/classes/BigPipe/Pagelet.php | 86 +++++++++++++++++++++++++++++++++++++ include/classes/class.bigpipe.php | 79 ---------------------------------- include/classes/class.pagelet.php | 84 ------------------------------------ index.php | 12 +++--- 5 files changed, 173 insertions(+), 169 deletions(-) create mode 100755 include/classes/BigPipe/BigPipe.php create mode 100755 include/classes/BigPipe/Pagelet.php delete mode 100755 include/classes/class.bigpipe.php delete mode 100755 include/classes/class.pagelet.php diff --git a/include/classes/BigPipe/BigPipe.php b/include/classes/BigPipe/BigPipe.php new file mode 100755 index 0000000..b69f1d8 --- /dev/null +++ b/include/classes/BigPipe/BigPipe.php @@ -0,0 +1,81 @@ + $Pagelet->getID(), + 'RESOURCES' => ['CSS' => $Pagelet->getCSSFiles(), 'JS' => $Pagelet->getJSFiles(), 'JS_CODE' => removeLineBreaksAndTabs($Pagelet->getJSCode())] + ]; + + if($last) { + $data['IS_LAST'] = true; + } + + echo ''."\n"; + echo ''."\n\n"; + } + + #==================================================================================================== + # Sendet den Output-Buffer so weit wie möglich in Richtung User + #==================================================================================================== + public static function flushOutputBuffer() { + ob_flush(); flush(); + } + + #==================================================================================================== + # Alle Pagelets an Client schicken + #==================================================================================================== + public static function render($async = FALSE) { + self::flushOutputBuffer(); + + $i = 0; + + ksort(self::$pagelets); + + foreach(array_reverse(self::$pagelets) as $priority => $pagelets) { + foreach($pagelets as $Pagelet) { + if(!self::isEnabled()) { + if($Pagelet->getJSCode()) { + echo ''."\n"; + } + + foreach($Pagelet->getCSSFiles() as $CSSFile) { + echo ''."\n"; + } + + foreach($Pagelet->getJSFiles() as $JSFile) { + echo ''."\n"; + } + } + + else { + self::pageletResponse($Pagelet, $async, (self::$count === ++$i)); + self::flushOutputBuffer(); + } + } + } + } +} \ No newline at end of file diff --git a/include/classes/BigPipe/Pagelet.php b/include/classes/BigPipe/Pagelet.php new file mode 100755 index 0000000..6fe0032 --- /dev/null +++ b/include/classes/BigPipe/Pagelet.php @@ -0,0 +1,86 @@ +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 '
'.((!BigPipe::isEnabled()) ? $this->getHTML() : NULL).'
'; + } +} \ No newline at end of file diff --git a/include/classes/class.bigpipe.php b/include/classes/class.bigpipe.php deleted file mode 100755 index 1edefc8..0000000 --- a/include/classes/class.bigpipe.php +++ /dev/null @@ -1,79 +0,0 @@ - $Pagelet->getID(), - 'RESOURCES' => ['CSS' => $Pagelet->getCSSFiles(), 'JS' => $Pagelet->getJSFiles(), 'JS_CODE' => removeLineBreaksAndTabs($Pagelet->getJSCode())] - ]; - - if($last) { - $data['IS_LAST'] = true; - } - - echo ''."\n"; - echo ''."\n\n"; - } - - #==================================================================================================== - # Sendet den Output-Buffer so weit wie möglich in Richtung User - #==================================================================================================== - public static function flushOutputBuffer() { - ob_flush(); flush(); - } - - #==================================================================================================== - # Alle Pagelets an Client schicken - #==================================================================================================== - public static function render($async = FALSE) { - self::flushOutputBuffer(); - - $i = 0; - - ksort(self::$pagelets); - - foreach(array_reverse(self::$pagelets) as $priority => $pagelets) { - foreach($pagelets as $Pagelet) { - if(!self::isEnabled()) { - if($Pagelet->getJSCode()) { - echo ''."\n"; - } - - foreach($Pagelet->getCSSFiles() as $CSSFile) { - echo ''."\n"; - } - - foreach($Pagelet->getJSFiles() as $JSFile) { - echo ''."\n"; - } - } - - else { - self::pageletResponse($Pagelet, $async, (self::$count === ++$i)); - self::flushOutputBuffer(); - } - } - } - } -} \ No newline at end of file diff --git a/include/classes/class.pagelet.php b/include/classes/class.pagelet.php deleted file mode 100755 index c1f211a..0000000 --- a/include/classes/class.pagelet.php +++ /dev/null @@ -1,84 +0,0 @@ -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 '
'.((!BigPipe::isEnabled()) ? $this->getHTML() : NULL).'
'; - } -} \ No newline at end of file diff --git a/index.php b/index.php index 7f3de69..e8860d7 100755 --- a/index.php +++ b/index.php @@ -7,14 +7,14 @@ header('Cache-Control: no-cache, no-store, must-revalidate'); #==================================================================================================== # Klassen und Funktionen einbinden #==================================================================================================== -require_once 'include/classes/class.bigpipe.php'; -require_once 'include/classes/class.pagelet.php'; +require_once 'include/classes/BigPipe/BigPipe.php'; +require_once 'include/classes/BigPipe/Pagelet.php'; require_once 'include/functions.php'; #==================================================================================================== # Pagelet mit rotem Hintergrund #==================================================================================================== -$PageletRed = new Pagelet(); +$PageletRed = new BigPipe\Pagelet(); $PageletRed->addHTML('
I AM JUST A PAGELET WITH RED BACKGROUND
'); $PageletRed->addCSS('static/red.php'); $PageletRed->addJS('static/delayJS.php'); @@ -23,7 +23,7 @@ $PageletRed->addJSCode("document.getElementById('red').innerHTML += ' [JS execut #==================================================================================================== # Pagelet mit blauem Hintergrund #==================================================================================================== -$PageletBlue = new Pagelet(60); +$PageletBlue = new BigPipe\Pagelet(60); $PageletBlue->addHTML('
I AM JUST A PAGELET WITH BLUE BACKGROUND
'); $PageletBlue->addCSS('static/blue.php'); $PageletBlue->addJS('static/delayJS.php'); @@ -32,7 +32,7 @@ $PageletBlue->addJSCode("document.getElementById('blue').innerHTML += ' [JS exec #==================================================================================================== # Pagelet mit grünem Hintergrund #==================================================================================================== -$PageletGreen = new Pagelet(); +$PageletGreen = new BigPipe\Pagelet(); $PageletGreen->addHTML('
I AM JUST A PAGELET WITH GREEN BACKGROUND
'); $PageletGreen->addCSS('static/green.php'); $PageletGreen->addJS('static/delayJS.php'); @@ -73,7 +73,7 @@ echo $PageletGreen; ?> \ No newline at end of file -- cgit v1.2.3