<?php /** * Convert bytes to human readable format * * @param integer bytes Size in bytes to convert * @return string */ function islandora_convert_bytes_to_human_readable($bytes, $precision = 2) { $kilobyte = 1024; $megabyte = $kilobyte * 1024; $gigabyte = $megabyte * 1024; $terabyte = $gigabyte * 1024; if (($bytes >= 0) && ($bytes < $kilobyte)) { return $bytes . ' B'; } elseif (($bytes >= $kilobyte) && ($bytes < $megabyte)) { return round($bytes / $kilobyte, $precision) . ' KB'; } elseif (($bytes >= $megabyte) && ($bytes < $gigabyte)) { return round($bytes / $megabyte, $precision) . ' MB'; } elseif (($bytes >= $gigabyte) && ($bytes < $terabyte)) { return round($bytes / $gigabyte, $precision) . ' GB'; } elseif ($bytes >= $terabyte) { return round($bytes / $terabyte, $precision) . ' TB'; } else { return $bytes . ' B'; } } function islandora_control_group_to_human_readable($control_group) { switch($control_group) { case 'M': return '<b>M</b>anaged'; case 'X': return 'Inline <b>X</b>ML'; case 'R': return '<b>R</b>edirect'; case 'E': return '<b>E</b>xternally Referenced'; default: return $control_group; } }