Files
@ 51a566e6db62
Branch filter:
Location: hot67beta/libraries/pattemplate/patTemplate/Modifier/Truncate.php - annotation
51a566e6db62
1.9 KiB
text/x-php
header kill
c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 | <?php
/**
* patTemplate modifier Truncate
*
* Truncate a string variable to fixed length and add a suffix if it was truncated.
* It can also start from an offset and add a prefix.
*
* @package patTemplate
* @subpackage Modifiers
* @author Rafa Couto <rafacouto@yahoo.com>
*/
// Check to ensure this file is within the rest of the framework
defined('JPATH_BASE') or die();
/**
* patTemplate modifier Truncate
*
* Truncate a string variable to fixed length and add a suffix if it was truncated.
* It can also start from an offset and add a prefix.
*
* Possible attributes are:
* - length (integer)
* - suffix (string)
* - start
* - prefix (string)
*
* @package patTemplate
* @subpackage Modifiers
* @author Rafa Couto <rafacouto@yahoo.com>
*/
class patTemplate_Modifier_Truncate extends patTemplate_Modifier
{
/**
* modify the value
*
* @access public
* @param string value
* @return string modified value
*/
function modify($value, $params = array())
{
// length
if (!isset( $params['length'])) {
return $value;
}
settype($params['length'], 'integer');
$decode = isset( $params['htmlsafe'] );
if (function_exists( 'html_entity_decode' ) && $decode) {
$value = html_entity_decode( $value );
}
// start
if (isset($params['start'])) {
settype( $params['start'], 'integer' );
} else {
$params['start'] = 0;
}
// prefix
if (isset($params['prefix'])) {
$prefix = ($params['start'] == 0 ? '' : $params['prefix']);
} else {
$prefix = '';
}
// suffix
if (isset($params['suffix'])) {
$suffix = $params['suffix'];
} else {
$suffix = '';
}
$initial_len = strlen($value);
$value = substr($value, $params['start'], $params['length']);
if ($initial_len <= strlen($value)) {
$suffix = '';
}
$value = $prefix.$value.$suffix;
return $decode ? htmlspecialchars( $value, ENT_QUOTES ) : $value;
}
}
?>
|