/** * Renders the body content of the hyperlink. * @param THtmlWriter the writer for rendering */ 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); } }
/** * Removes the named stylesheet attribute from rendering * @param string name of the stylesheet attribute to be removed */ public function removeStyleAttribute($name) { unset($this->_styles[THttpUtility::htmlStrip($name)]); }
/** * Renders the literal control. * @param THtmlWriter the writer used for the rendering purpose */ public function render($writer) { if (($text = $this->getText()) !== '') { if ($this->getEncode()) { $writer->write(THttpUtility::htmlEncode($text)); } else { $writer->write($text); } } else { parent::render($writer); } }
/** * Renders the body content of the textbox when it is in MultiLine text mode. * @param THtmlWriter the writer for rendering */ public function renderContents($writer) { if ($this->getTextMode() === 'MultiLine') { $writer->write(THttpUtility::htmlEncode($this->getText())); } }
/** * @param THtmlWriter writer for the rendering purpose */ protected function renderHiddenFieldsInt($writer, $initial) { if ($initial) { $this->_renderedHiddenFields = array(); } $str = ''; foreach ($this->_hiddenFields as $name => $value) { if (in_array($name, $this->_renderedHiddenFields)) { continue; } $id = strtr($name, ':', '_'); if (is_array($value)) { foreach ($value as $v) { $str .= '<input type="hidden" name="' . $name . '[]" id="' . $id . '" value="' . THttpUtility::htmlEncode($value) . "\" />\n"; } } else { $str .= '<input type="hidden" name="' . $name . '" id="' . $id . '" value="' . THttpUtility::htmlEncode($value) . "\" />\n"; } $this->_renderedHiddenFields[] = $name; } if ($str !== '') { $writer->write("<div style=\"visibility:hidden;\">\n" . $str . "</div>\n"); } }
public function testAddStyleAttribute() { $writer = new THtmlWriter(self::$output); $writer->addStyleAttribute('font-size', '1em'); $writer->addStyleAttribute('background-image', 'url(image.gif)'); $result = self::readAttribute($writer, '_styles'); self::assertEquals('1em', $result['font-size']); self::assertEquals(THttpUtility::htmlEncode('url(image.gif)'), $result['background-image']); }
public function testHtmlDecode() { $html = THttpUtility::htmlDecode('<tag key="value">'); self::assertEquals('<tag key="value">', $html); }
/** * Renders a javascript file * @param string URL to the javascript file * @return string rendering result */ public static function renderScriptFile($file) { return '<script type="text/javascript" src="' . THttpUtility::htmlEncode($file) . "\"></script>\n"; }
protected function renderMessage($log, $info) { $string = ''; $total = sprintf('%0.6f', $info['total']); $delta = sprintf('%0.6f', $info['delta']); $msg = preg_replace('/\\(line[^\\)]+\\)$/', '', $log[0]); //remove line number info $msg = THttpUtility::htmlEncode($msg); if ($this->getCssClass()) { $colorCssClass = $log[1]; $messageCssClass = $info['even'] ? 'even' : 'odd'; $string = <<<EOD \t<tr class="message level{$colorCssClass} {$messageCssClass}"> \t\t<td class="code"> </td> \t\t<td class="category">{$log[2]}</td> \t\t<td class="message">{$msg}</td> \t\t<td class="time">{$delta}</td> \t\t<td class="cumulatedtime">{$total}</td> \t</tr> EOD; } else { $bgcolor = $info['even'] ? "#fff" : "#eee"; $color = $this->getColorLevel($log[1]); $string = <<<EOD \t<tr style="background-color: {$bgcolor}; color:#000"> \t\t<td style="border:1px solid silver;background-color: {$color};"> </td> \t\t<td>{$log[2]}</td> \t\t<td>{$msg}</td> \t\t<td style="text-align:center">{$delta}</td> \t\t<td style="text-align:center">{$total}</td> \t</tr> EOD; } return $string; }
protected function renderLinkButtonItem($writer, $item, $index) { if (!$this->_isEnabled || !$item->getEnabled()) { $writer->addAttribute('disabled', 'disabled'); } else { $this->_currentRenderItemIndex = $index; $writer->addAttribute('id', $this->getClientID() . $index); $writer->addAttribute('href', "javascript:;//" . $this->getClientID() . $index); $cs = $this->getPage()->getClientScript(); $cs->registerPostBackControl($this->getClientClassName(), $this->getPostBackOptions()); } if (($accesskey = $this->getAccessKey()) !== '') { $writer->addAttribute('accesskey', $accesskey); } $writer->renderBeginTag('a'); $writer->write(THttpUtility::htmlEncode($item->getText())); $writer->renderEndTag(); }
/** * Renders the head control. * @param THtmlWriter the writer for rendering purpose. */ public function render($writer) { $page = $this->getPage(); $title = $this->getTitle(); $writer->write("<head>\n<title>" . THttpUtility::htmlEncode($title) . "</title>\n"); if (($baseUrl = $this->getBaseUrl()) !== '') { $writer->write('<base href="' . $baseUrl . "\" />\n"); } if (($icon = $this->getShortcutIcon()) !== '') { $writer->write('<link rel="shortcut icon" href="' . $icon . "\" />\n"); } if (($metaTags = $this->getMetaTags()) !== null) { foreach ($metaTags as $metaTag) { $metaTag->render($writer); $writer->writeLine(); } } $cs = $page->getClientScript(); $cs->renderStyleSheetFiles($writer); $cs->renderStyleSheets($writer); if ($page->getClientSupportsJavaScript()) { $cs->renderHeadScriptFiles($writer); $cs->renderHeadScripts($writer); } parent::render($writer); $writer->write("</head>\n"); }
/** * Renders body content of the list control. * This method renders items contained in the list control as the body content. * @param THtmlWriter writer */ public function renderContents($writer) { $this->renderPrompt($writer); if ($this->_items) { $writer->writeLine(); $previousGroup = null; foreach ($this->_items as $item) { if ($item->getEnabled()) { if ($item->getHasAttributes()) { $group = $item->getAttributes()->remove('Group'); if ($group !== $previousGroup) { if ($previousGroup !== null) { $writer->renderEndTag(); $writer->writeLine(); $previousGroup = null; } if ($group !== null) { $writer->addAttribute('label', $group); $writer->renderBeginTag('optgroup'); $writer->writeLine(); $previousGroup = $group; } } foreach ($item->getAttributes() as $name => $value) { $writer->addAttribute($name, $value); } } else { if ($previousGroup !== null) { $writer->renderEndTag(); $writer->writeLine(); $previousGroup = null; } } if ($item->getSelected()) { $writer->addAttribute('selected', 'selected'); } $writer->addAttribute('value', $item->getValue()); $writer->renderBeginTag('option'); $writer->write(THttpUtility::htmlEncode($item->getText())); $writer->renderEndTag(); $writer->writeLine(); } } if ($previousGroup !== null) { $writer->renderEndTag(); $writer->writeLine(); } } }
/** * Databinds a cell in the column. * This method is invoked when datagrid performs databinding. * It populates the content of the cell with the relevant data from data source. */ public function dataBindColumn($sender, $param) { $item = $sender->getNamingContainer(); $data = $item->getData(); $formatString = $this->getDataFormatString(); if (($field = $this->getDataField()) !== '') { $value = $this->formatDataValue($formatString, $this->getDataFieldValue($data, $field)); } else { $value = $this->formatDataValue($formatString, $data); } if ($sender instanceof TTableCell) { if ($this->getEncode()) { $value = THttpUtility::htmlEncode($value); } $sender->setText($value); } }