public function renderContents($writer) { if (($imageUrl = $this->getImageUrl()) === '') { if (($text = $this->getText()) !== '') { $writer->write(THttpUtility::htmlEncode($text)); } else { if ($this->getHasControls()) { parent::renderContents($writer); } else { $writer->write(THttpUtility::htmlEncode($this->getNavigateUrl())); } } } else { $this->createImage($imageUrl)->renderControl($writer); } }