$max_length) { $max = strpos($value, ' ', $max_length); if ($max === false) { $max = $max_length; } return substr($value, 0, $max).' '.$end; } elseif ($length < $min_length) { return ''; } return $value; } function relative_time($timestamp, $fallback_date_format = '%e %B %Y %k:%M') { $diff = time() - $timestamp; if ($diff < 0) { return \dt($fallback_date_format, $timestamp); } if ($diff < 60) { return \t('%d second ago', $diff); } $diff = floor($diff / 60); if ($diff < 60) { return \t('%d minute ago', $diff); } $diff = floor($diff / 60); if ($diff < 24) { return \t('%d hour ago', $diff); } $diff = floor($diff / 24); if ($diff < 7) { return \t('%d day ago', $diff); } $diff = floor($diff / 7); if ($diff < 4) { return \t('%d week ago', $diff); } $diff = floor($diff / 4); if ($diff < 12) { return \t('%d month ago', $diff); } return \dt($fallback_date_format, $timestamp); }