public function setValue($key, $val, $identity = null)
{
switch ($key) {
case 'alias_addr':
case 'bcc_addr':
case 'replyto_addr':
case 'tieto_addr':
if (is_string($val) && strpbrk($val, "\r\n") !== false) {
$val = preg_split("/[\r\n]+/", $val);
}
/* Validate Reply-To, Alias, Tie-to, and BCC addresses. */
$val = IMP::parseAddressList($val, array('limit' => $val == 'replyto_addr' ? 1 : 0))->addresses;
break;
case IMP_Mailbox::MBOX_SENT:
$GLOBALS['injector']->getInstance('IMP_Mailbox_SessionCache')->expire(IMP_Mailbox_SessionCache::CACHE_SPECIALMBOXES);
$val = IMP_Mailbox::prefTo($val);
break;
}
return parent::setValue($key, $val, $identity);
}