[dev] Re: PGP in IMP Options gone?

Sander Dalemans sander at gamerszone.nl
Fri Nov 5 18:48:22 PST 2004


Chuck Hagenbuch wrote:
> Quoting Sander Dalemans <sander at gamerszone.nl>:
> 
>> This morning i've looked again to the prefs.php file and mentioned that
>> only the groups with the 'members' setting are displayed. So did some
>> testing with this and after editing the gpg block with a members setting
>> (added this line: 'members' => array('something')) the block is
>> displayed on the options page.
> 
> I can't reproduce this either. Only thing I can think of is that your 
> framework
> is out of date.

The framework is up-to-date. I always update it together with the rest 
of Horde. I have also checked that the newest version is installed and 
it is.

I did some backtracing in the PHP files and i think it goes wrong in the 
Prefs/UI.php file of the framework, groupIsEditable to be exactly. On 
line 40 of this file it is checking if the key 'url' in the array $group 
is set. But $group is not an array, it is just a string with the group 
name itself. So all preference blocks with an url set and without 
'members' will fail in this test.

I have created this little patch, it will now check the url key on the 
$prefGroups array. This works for me, and i do not see any reasons why 
it should not for others.

But this raises the question why you where unable to reproduce this? As 
far as i can see it is impossible to get the pgp etc. blocks with the 
default prefs.php in imp and this code?

Oh and it was a long day for me, so do not pin me on all this ^^ :p.
-------------- next part --------------
Index: UI.php
===================================================================
RCS file: /repository/framework/Prefs/Prefs/UI.php,v
retrieving revision 1.57
diff -u -r1.57 UI.php
--- UI.php	4 Nov 2004 00:56:47 -0000	1.57
+++ UI.php	6 Nov 2004 02:42:03 -0000
@@ -33,7 +33,7 @@
         static $results = array();
 
         if (!isset($results[$group])) {
-            if (!empty($group['url'])) {
+            if (!empty($prefGroups[$group]['url'])) {
                 $results[$group] = true;
             } else {
                 $results[$group] = false;


More information about the dev mailing list