\r
*/\r
\r
+include('android-permissions.php');\r
+\r
class FDroid\r
{\r
\r
\r
\r
function get_app($query_vars) {\r
+ $permissions_data = get_android_permissions_array($this->site_path.'/repo/AndroidManifest.xml', $this->site_path.'/repo/strings.xml');\r
\r
- $xml = simplexml_load_file($this->site_path."/repo/index.xml");\r
+ $xml = simplexml_load_file($this->site_path.'/repo/index.xml');\r
foreach($xml->children() as $app) {\r
\r
$attrs=$app->attributes();\r
$out.='<p><a href="javascript:void(0);" onClick="showHidePermissions(\''.$divId.'\');">Permissions</a><br/>';\r
$out.='<div style="display:'.$divStyleDisplay.';" id="'.$divId.'">';\r
$permissions = explode(',',$apk['permissions']);\r
- foreach($permissions as $permission)\r
- $out.=$permission.'<br>';\r
+ usort($permissions,\r
+ \r
+ \r
+ function ($a, $b) use (&$permissions_data) {\r
+\r
+ $aProtectionLevel = $permissions_data['permission'][$a]['protectionLevel'];\r
+ $bProtectionLevel = $permissions_data['permission'][$b]['protectionLevel'];\r
+\r
+ if($aProtectionLevel != $bProtectionLevel) {\r
+ return strcmp($aProtectionLevel, $bProtectionLevel);\r
+ }\r
+ \r
+ $aGroup = $permissions_data['permission'][$a]['permissionGroup'];\r
+ $bGroup = $permissions_data['permission'][$b]['permissionGroup'];\r
+ \r
+ return strcmp($aGroup, $bGroup);\r
+ }\r
+\r
+ \r
+ \r
+ );\r
+ \r
+ $permission_group_last = '';\r
+ foreach($permissions as $permission) {\r
+ $permission_group = $permissions_data['permission'][$permission]['permissionGroup'];\r
+ if($permission_group != $permission_group_last) {\r
+ $out.='<strong>'.strtoupper($permissions_data['permission-group'][$permission_group]['label']).'</strong><br/>';\r
+ $permission_group_last = $permission_group;\r
+ }\r
+ \r
+ $out.='('.strtoupper(substr($permissions_data['permission'][$permission]['protectionLevel'],0,1)).') - ';\r
+ $out.='<strong>'.$permissions_data['permission'][$permission]['label'].'</strong> [<code>'.$permission.'</code>]<br/>';\r
+ $out.=$permissions_data['permission'][$permission]['description'].'<br/>';\r
+ //$out.=$permissions_data['permission'][$permission]['comment'].'<br/>';\r
+ $out.='<br/>';\r
+ }\r
$out.='</div></p>';\r
\r
$out.='</p>';\r