phaseDoneJS = array_pad([], 5, []); $this->ID = is_string($customID) ? $customID : 'P'.++self::$count; BigPipe::addPagelet($this, $priority); } #==================================================================================================== # Return the unique ID #==================================================================================================== public function getID() { return $this->ID; } #==================================================================================================== # Return the HTML content #==================================================================================================== public function getHTML() { return $this->HTML; } #==================================================================================================== # Return the CSS resources #==================================================================================================== public function getCSSFiles() { return $this->CSSFiles; } #==================================================================================================== # Return the JS resources #==================================================================================================== public function getJSFiles() { return $this->JSFiles; } #==================================================================================================== # Return the main JS code #==================================================================================================== public function getJSCode() { return $this->JSCode; } #==================================================================================================== # Add HTML or attach more #==================================================================================================== public function addHTML($HTML) { return $this->HTML .= $HTML; } #==================================================================================================== # Attach a CSS resource #==================================================================================================== public function addCSS($file) { return $this->CSSFiles[] = $file; } #==================================================================================================== # Attach a JS resource #==================================================================================================== public function addJS($file) { return $this->JSFiles[] = $file; } #==================================================================================================== # Add JS code or attach more #==================================================================================================== public function addJSCode($code) { return $this->JSCode .= $code; } #==================================================================================================== # Attach a PhaseDoneJS callback #==================================================================================================== public function addPhaseDoneJS($phase, $callback) { return $this->phaseDoneJS[$phase][] = removeLineBreaksAndTabs($callback); } #==================================================================================================== # Return all registered PhaseDoneJS callbacks #==================================================================================================== public function getPhaseDoneJS() { return $this->phaseDoneJS; } #==================================================================================================== # Magic method: __toString() #==================================================================================================== public function __toString() { return '
'.((!BigPipe::isEnabled()) ? $this->getHTML() : NULL).'
'; } }