From: Hans-Emil Skogh Date: Sat, 14 Jan 2012 11:39:33 +0000 (+0100) Subject: Handle if a package has no permissions. X-Git-Tag: 0.1~1063^2~9 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=a2569989b4529a5b56b1863f97aa6f889831f006;p=fdroidserver.git Handle if a package has no permissions. --- diff --git a/wp-fdroid/wp-fdroid.php b/wp-fdroid/wp-fdroid.php index 729345b8..1fb3d1ac 100644 --- a/wp-fdroid/wp-fdroid.php +++ b/wp-fdroid/wp-fdroid.php @@ -215,55 +215,60 @@ class FDroid if($apk['srcname']) $out.='
source tarball'; - /*if($i==0) - $divStyleDisplay='block'; - else*/ - $divStyleDisplay='none'; - $divId='permissions'.$i; - $out.='
view permissions
'; - $out.='
'; - $permissions = explode(',',$apk['permissions']); - usort($permissions, - function ($a, $b) use (&$permissions_data) { - - $aProtectionLevel = $permissions_data['permission'][$a]['protectionLevel']; - $bProtectionLevel = $permissions_data['permission'][$b]['protectionLevel']; - - if($aProtectionLevel != $bProtectionLevel) { - if(strlen($aProtectionLevel)==0) return 1; - if(strlen($bProtectionLevel)==0) return -1; - - return strcmp($aProtectionLevel, $bProtectionLevel); - } + if(isset($apk['permissions'])) { + /*if($i==0) + $divStyleDisplay='block'; + else*/ + $divStyleDisplay='none'; + $divId='permissions'.$i; + $out.='
view permissions
'; + $out.='
'; + $permissions = explode(',',$apk['permissions']); + usort($permissions, + function ($a, $b) use (&$permissions_data) { + + $aProtectionLevel = $permissions_data['permission'][$a]['protectionLevel']; + $bProtectionLevel = $permissions_data['permission'][$b]['protectionLevel']; + + if($aProtectionLevel != $bProtectionLevel) { + if(strlen($aProtectionLevel)==0) return 1; + if(strlen($bProtectionLevel)==0) return -1; + + return strcmp($aProtectionLevel, $bProtectionLevel); + } + + $aGroup = $permissions_data['permission'][$a]['permissionGroup']; + $bGroup = $permissions_data['permission'][$b]['permissionGroup']; - $aGroup = $permissions_data['permission'][$a]['permissionGroup']; - $bGroup = $permissions_data['permission'][$b]['permissionGroup']; + if($aGroup != $bGroup) { + return strcmp($aGroup, $bGroup); + } - if($aGroup != $bGroup) { - return strcmp($aGroup, $bGroup); + return strcmp($a, $b); + } + ); + + $permission_group_last = ''; + foreach($permissions as $permission) { + $permission_group = $permissions_data['permission'][$permission]['permissionGroup']; + if($permission_group != $permission_group_last) { + $permission_group_label = $permissions_data['permission-group'][$permission_group]['label']; + if($permission_group_label=='') $permission_group_label = 'Extra/Custom'; + $out.=''.strtoupper($permission_group_label).'
'; + $permission_group_last = $permission_group; } - return strcmp($a, $b); - } - ); - - $permission_group_last = ''; - foreach($permissions as $permission) { - $permission_group = $permissions_data['permission'][$permission]['permissionGroup']; - if($permission_group != $permission_group_last) { - $permission_group_label = $permissions_data['permission-group'][$permission_group]['label']; - if($permission_group_label=='') $permission_group_label = 'Extra/Custom'; - $out.=''.strtoupper($permission_group_label).'
'; - $permission_group_last = $permission_group; + $out.=$this->get_permission_protection_level_icon($permissions_data['permission'][$permission]['protectionLevel']).' '; + $out.=''.$permissions_data['permission'][$permission]['label'].' ['.$permission.']
'; + if($permissions_data['permission'][$permission]['description']) $out.=$permissions_data['permission'][$permission]['description'].'
'; + //$out.=$permissions_data['permission'][$permission]['comment'].'
'; + $out.='
'; } - - $out.=$this->get_permission_protection_level_icon($permissions_data['permission'][$permission]['protectionLevel']).' '; - $out.=''.$permissions_data['permission'][$permission]['label'].' ['.$permission.']
'; - if($permissions_data['permission'][$permission]['description']) $out.=$permissions_data['permission'][$permission]['description'].'
'; - //$out.=$permissions_data['permission'][$permission]['comment'].'
'; - $out.='
'; + $out.='
'; + } + else { + $out.='
no permissions
'; } - $out.='
'; $out.='

'; $i++; @@ -278,16 +283,13 @@ class FDroid } private function get_permission_protection_level_icon($protection_level) { - if($protection_level=='dangerous') - { + if($protection_level=='dangerous') { return ''; } - elseif($protection_level=='normal') - { + elseif($protection_level=='normal') { return ''; } - else - { + else { return ''; } }