| Server IP : 180.180.241.3 / Your IP : 216.73.216.35 Web Server : Microsoft-IIS/7.5 System : Windows NT NETWORK-NHRC 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586 User : IUSR ( 0) PHP Version : 5.3.28 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /AppServ/www/app/webroot/news/nhrc-bk1/libraries/pattemplate/patTemplate/Modifier/ |
Upload File : |
<?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;
}
}
?>