Files
@ 7042e71b70da
Branch filter:
Location: hot67beta/libraries/pattemplate/patTemplate/Modifier/Truncate.php - annotation
7042e71b70da
1.9 KiB
text/x-php
Added file to test commit and push
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;
}
}
?>
|