Re: Nova versão não exibe campo DE (Contas institucionais)

Enviado por Elinei F Freitas em 14/3/2013 14:03:11
Gustavo e Joaquim!

Como já disse não sou bom em programação, então não sei muito bem o que fiz, mas o resultado aparentemente é satisfatório.
Fiquei focado na solução do ticket 2898, mas tive sempre o receio em modificar muito o código. Mas na falta de auternativa fiz a seguinte modificação no expresso 2.4.1 e 2.5.

//Find institucional_account.
$filter="(&(phpgwAccountType=i)(mailForwardingAddress=".$_SESSION['phpgw_info']['expressomail']['user']['email']."))";
$sr = ldap_search($this->ds, $this->ldap_context, $filter, $justthese);
##
# @AUTHOR Rodrigo Souza dos Santos
# @DATE 2008/09/17
# @BRIEF Changing to ensure that the variable session is always with due value.
##
if(ldap_count_entries($this->ds,$sr))
{
ldap_sort($this->ds,$sr,"cn");
$result = ldap_get_entries($this->ds, $sr);
for ($j = 0;$j < $result["count"]; $j++){
# $result[$j]['cn'][0] = utf8_decode($result[$j]['cn'][0]);
# $result[$j]['mail'][0] = $result[$j]['mail'][0];
# $result[$j]['save_shared'][0] = 'n';
# $info[$info['count']] = $result[$j];
# $info['count'] = (int)$info['count'] + 1;
$info[$i]['cn'][0] = utf8_decode($result[$j]['cn'][0]);
$info[$i]['mail'][0] = $result[$j]['mail'][0];
$info[$i]['save_shared'][0] = 'n';
$info[$i++]['uid'][0] = $result[$j]['uid'][0];
}
}

$_SESSION['phpgw_info']['expressomail']['user']['shared_mailboxes'] = $info;

return $info;

A função Conta Institucional passou a funcionar normal. Meus usuários cadastrados em Contas Institucionais passaram a ver o campo DE. E esse teste realizei nas versões 2.4.1 e 2.5 como já disse.
Se puderem me ajudar a entender o porquê agradeço!

E mais uma vez obrigado pela atenção!!

Fonte: http://www.expressolivre.org/newbb/viewtopic.php?forum=14&topic_id=2439&post_id=16787