You are here

modifier.truncate.php in Quiz 6.5

Same filename and directory in other branches
  1. 6.6 includes/moodle/lib/smarty/plugins/modifier.truncate.php

File

includes/moodle/lib/smarty/plugins/modifier.truncate.php
View source
<?php

/**
 * Smarty plugin
 * @package Smarty
 * @subpackage plugins
 */

/**
 * Smarty truncate modifier plugin
 *
 * Type:     modifier<br>
 * Name:     truncate<br>
 * Purpose:  Truncate a string to a certain length if necessary,
 *           optionally splitting in the middle of a word, and
 *           appending the $etc string.
 * @link http://smarty.php.net/manual/en/language.modifier.truncate.php
 *          truncate (Smarty online manual)
 * @param string
 * @param integer
 * @param string
 * @param boolean
 * @return string
 */
function smarty_modifier_truncate($string, $length = 80, $etc = '...', $break_words = false) {
  if ($length == 0) {
    return '';
  }
  if (strlen($string) > $length) {
    $length -= strlen($etc);
    if (!$break_words) {
      $string = preg_replace('/\\s+?(\\S+)?$/', '', substr($string, 0, $length + 1));
    }
    return substr($string, 0, $length) . $etc;
  }
  else {
    return $string;
  }
}

/* vim: set expandtab: */

Functions

Namesort descending Description
smarty_modifier_truncate Smarty truncate modifier plugin