On Wed, 19 Nov 2008 13:44:24 +0100, "A.L.E.C" alec@alec.pl wrote:
// define list of cols to be displayed if (!strlen($attrib['columns'])) $a_show_cols = is_array($CONFIG['list_cols']) ? $CONFIG['list_cols'] :
array('subject');
else eval( '$a_show_cols = array('. $attrib['columns'] .');' );
Don't use eval for that, just use columns list comma(or space)-separated and use explode() on it.
I'll get what I want. However, only for the first displayed mailbox. When I switch mailboxes, the settings in my skin are overruled by those in the main config. Does the javascript use another function to show the messagelist?
yes, rcmail_js_message_list(), you'll need to save columns in session
I've attached a modified ./program/steps/mail/func.inc, based on the latest trunk-version, to this message. The modifications are done in the following functions, when assigning the variable $a_show_cols:
A new session variable is introduced: $_SESSION['list_columns'], to remember the settings in the skin.
In object name="messages", the argument columns= can be used to override the settings in the main configuration:
<roundcube:object name="messages" id="messagelist" cellspacing="0" summary="Message list" columns="flag,size,from,subject,date" messageIcon="/images/icons/dot.png" unreadIcon="/images/icons/unread.png" deletedIcon="/images/icons/deleted.png" repliedIcon="/images/icons/replied.png" forwardedIcon="/images/icons/forwarded.png" forwardedrepliedIcon="/images/icons/forwarded_replied.png" attachmentIcon="/images/icons/attachment.png" flaggedIcon="/images/icons/flagged.png" unflaggedIcon="/images/icons/unflagged.png" />