From 1bd9c9d0dc016ee179acf4c8959f954e320aae50 Mon Sep 17 00:00:00 2001 From: Hans-Emil Skogh Date: Sat, 14 Jan 2012 15:11:59 +0100 Subject: [PATCH] "Human readable" style size displays for apk and source downloads. --- wp-fdroid/wp-fdroid.php | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/wp-fdroid/wp-fdroid.php b/wp-fdroid/wp-fdroid.php index 1fb3d1ac..0ea58d6c 100644 --- a/wp-fdroid/wp-fdroid.php +++ b/wp-fdroid/wp-fdroid.php @@ -211,9 +211,11 @@ class FDroid foreach($apks as $apk) { $out.="

Version ".$apk['version']."
"; $out.='download apk '; - $out.=$apk['size']." bytes"; - if($apk['srcname']) - $out.='
source tarball'; + $out.=$this->human_readable_size($apk['size']); + if($apk['srcname']) { + $out.='
source tarball '; + $out.=$this->human_readable_size(filesize($this->site_path.'/repo/'.$apk['srcname'])); + } if(isset($apk['permissions'])) { /*if($i==0) @@ -293,6 +295,17 @@ class FDroid return ''; } } + + private function human_readable_size($size) { + $si_prefix = array('bytes','kB','MB'); + $div = 1000; + + for($i=0;$size > $div && $i < count($si_prefix);$i++) { + $size /= $div; + } + + return round($size,max(0,$i-1)).' '.$si_prefix[$i]; + } function get_apps($query_vars) { -- 2.30.2