public function clipString($string, $size, $position = 0)
    {
        $utf8 = false;
        if (function_exists('mb_detect_encoding') && mb_detect_encoding($string) == 'UTF-8') {
            $utf8 = true;   
        }

        $length = ($utf8 == true) ? mb_strlen($string, "UTF-8") : strlen($string);

        if ($length <= $size) {
            return $string;
        }

        $position = min($position, $length);
        $start    = ($size/2 > $position ? 0 : $position - $size/2);
        if ($start + $size > $length) {
            $start = $length - $size;
        }
        $string = ($utf8 == true) ? mb_substr($string, $start, $size) : substr($string, $start, $size);

        return ($start > 0 ? '...' : '') . $string . ($start + $size < $length ? '...' : '');
    }