[imp] Set a default value and lock "msgflags" in IMP

Sebastian Arcus shop at open-t.co.uk
Thu Apr 26 20:25:50 UTC 2012


I would like to set a default value for "msgflags" in IMP and lock it 
for all users. More precisely, I want to reset the colour of all flags 
to white, except the "Unread" flag. What I've worked out so far using 
the documentation and help in prefs files:

1. The file to use is imp/config/prefs.local.php (I'm hoping this will 
still work for setting defaults, although I'm using SQL for preferences 
storage).


2. I think the section I need to amend is:

// This array contains the list of flags created by the user through the
// flags UI, and any modifications to the built-in system flags.
$_prefs['msgflags'] = array(
     // 'value' = serialize(array())
     'value' => 'a:0:{}'
);


3. To lock it I will modify it like so:

// This array contains the list of flags created by the user through the
// flags UI, and any modifications to the built-in system flags.
$_prefs['msgflags'] = array(
     locked => true,
     // 'value' = serialize(array())
     'value' => 'a:0:{}'
);


What I can't seem to figure out is the syntax to be used in the 'value' 
field. I've googled, but so far I've drawn a blank in terms of how to 
assign colours to the individual flags in this array.

I looked in the SQL back end for the users where I manually changed the 
flag colours - and the preference value is what looks like a long hex 
number. I couldn't see any pattern in it no matter how much I stared at 
it :-) Do I just copy this field as it is into the 'value' field of the 
prefs.local.php?

Could anybody provide some hints, a link to a reference page - or at 
least let me know if I'm barking up the right tree so far?

Many thanks


More information about the imp mailing list