chiark / gitweb /
Added support for custom/extra/unknown permissions.
authorHans-Emil Skogh <hansemil@gmail.com>
Thu, 12 Jan 2012 20:24:17 +0000 (21:24 +0100)
committerHans-Emil Skogh <hansemil@gmail.com>
Thu, 12 Jan 2012 20:24:17 +0000 (21:24 +0100)
Also alphabetic sorting of permissions with identical levels and group.

wp-fdroid/wp-fdroid.php

index 7b33e4ff5d8516499737199abe75fc02fd86bdbc..8e07337197ff0b6cb65bb05fcbedf5731d15f447 100644 (file)
@@ -224,38 +224,42 @@ class FDroid
                                        $out.='<div style="display:'.$divStyleDisplay.';" id="'.$divId.'">';\r
                                        $permissions = explode(',',$apk['permissions']);\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
+                                                               if(strlen($aProtectionLevel)==0) return 1;\r
+                                                               if(strlen($bProtectionLevel)==0) return -1;\r
+\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
+                                                       if($aGroup != $bGroup) {\r
+                                                               return strcmp($aGroup, $bGroup);\r
+                                                       }\r
 \r
-                                       \r
-                                       \r
+                                                       return strcmp($a, $b);\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_label = $permissions_data['permission-group'][$permission_group]['label'];\r
+                                                       if($permission_group_label=='') $permission_group_label = 'Extra/Custom';\r
+                                                       $out.='<strong>'.strtoupper($permission_group_label).'</strong><br/>';\r
                                                        $permission_group_last = $permission_group;\r
                                                }\r
                                        \r
                                                $out.=$this->get_permission_protection_level_icon($permissions_data['permission'][$permission]['protectionLevel']).' ';\r
                                                $out.='<strong>'.$permissions_data['permission'][$permission]['label'].'</strong> [<code>'.$permission.'</code>]<br/>';\r
-                                               $out.=$permissions_data['permission'][$permission]['description'].'<br/>';\r
+                                               if($permissions_data['permission'][$permission]['description']) $out.=$permissions_data['permission'][$permission]['description'].'<br/>';\r
                                                //$out.=$permissions_data['permission'][$permission]['comment'].'<br/>';\r
                                                $out.='<br/>';\r
                                        }\r
@@ -284,7 +288,7 @@ class FDroid
                }\r
                else\r
                {\r
-                       return '<em>!</em>';\r
+                       return '<span style="color:#33AA33;font-size:130%;">&#x2699;</span>';\r
                }\r
        }       \r
 \r