/** * Formatiert den String <code>$value</code> * * @param $value zu formatierender String * @param $format_type Formatierungstype * @param $format Format * * Unterstützte Formatierugen: * * - <Formatierungstype> * + <Format> * * - sprintf * + siehe www.php.net/sprintf * - date * + siehe www.php.net/date * - strftime * + dateformat * + datetime * + siehe www.php.net/strftime * - number * + siehe www.php.net/number_format * + array( <Kommastelle>, <Dezimal Trennzeichen>, <Tausender Trennzeichen>) * - email * + array( 'attr' => <Linkattribute>, 'params' => <Linkparameter>, * - url * + array( 'attr' => <Linkattribute>, 'params' => <Linkparameter>, * - truncate * + array( 'length' => <String-Laenge>, 'etc' => <ETC Zeichen>, 'break_words' => <true/false>, * - nl2br * + siehe www.php.net/nl2br * - rexmedia * + siehe www.php.net/nl2br */ function format($value, $format_type, $format) { global $I18N, $REX; if ($value === null) { return ''; } // Stringformatierung mit sprintf() if ($format_type == 'sprintf') { $value = rexFormatter::_formatSprintf($value, $format); } elseif ($format_type == 'date') { $value = rexFormatter::_formatDate($value, $format); } elseif ($format_type == 'strftime') { $value = rexFormatter::_formatStrftime($value, $format); } elseif ($format_type == 'number') { $value = rexFormatter::_formatNumber($value, $format); } elseif ($format_type == 'email') { $value = rexFormatter::_formatEmail($value, $format); } elseif ($format_type == 'url') { $value = rexFormatter::_formatUrl($value, $format); } elseif ($format_type == 'truncate') { $value = rexFormatter::_formatTruncate($value, $format); } elseif ($format_type == 'nl2br') { $value = rexFormatter::_formatNl2br($value, $format); } elseif ($format_type == 'rexmedia' && $value != '') { $value = rexFormatter::_formatRexMedia($value, $format); } return $value; }
function formatValue() { $value = $this->getValue(); $format_type = $this->getFormatType(); if ($format_type != '') { $value = rexFormatter::format($value, $format_type, $this->getFormat()); } return $value; }
function format($row) { global $I18N; $format = parent::format($row); if (strlen($format) != 0) { return $format; } $value = $row[$this->name]; if ($this->format_type == '') { if ($this->format == '') { $this->format = '%' . $this->name . '%'; } // Alle Spaltenamen ersetzen durch deren Werte %id%, %name%, etc. $value = $this->parseString($this->format, $row); } else { $value = rexFormatter::format($value, $this->format_type, $this->format); } return $this->link($value, $this->parseParams($row)); }