/**
  * 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
  *    + formatiert ein Medium via OOMedia
  * - custom
  *    + formatiert den Wert anhand einer Benutzer definierten Callback Funktion
  */
 function format($value, $format_type, $format)
 {
     // Stringformatierung mit sprintf()
     if ($format_type == 'sprintf') {
         $value = rex_formatter::_formatSprintf($value, $format);
     } elseif ($format_type == 'date') {
         $value = rex_formatter::_formatDate($value, $format);
     } elseif ($format_type == 'strftime') {
         $value = rex_formatter::_formatStrftime($value, $format);
     } elseif ($format_type == 'number') {
         $value = rex_formatter::_formatNumber($value, $format);
     } elseif ($format_type == 'email') {
         $value = rex_formatter::_formatEmail($value, $format);
     } elseif ($format_type == 'url') {
         $value = rex_formatter::_formatUrl($value, $format);
     } elseif ($format_type == 'truncate') {
         $value = rex_formatter::_formatTruncate($value, $format);
     } elseif ($format_type == 'nl2br') {
         $value = rex_formatter::_formatNl2br($value, $format);
     } elseif ($format_type == 'rexmedia' && $value != '') {
         $value = rex_formatter::_formatRexMedia($value, $format);
     } elseif ($format_type == 'rexurl' && $value != '') {
         $value = rex_formatter::_formatRexUrl($value, $format);
     } elseif ($format_type == 'custom') {
         $value = rex_formatter::_formatCustom($value, $format);
     }
     return $value;
 }