Files
@ 654a62c4f366
Branch filter:
Location: hot67beta/libraries/pattemplate/patTemplate/Modifier/Truncate.php - annotation
654a62c4f366
1.9 KiB
text/x-php
menubar 11 to 30 and revert
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;
}
}
?>
|