Ignore:
Timestamp:
09/17/12 14:30:47 (12 years ago)
Author:
douglas
Message:

Ticket #0000 - Copiadas as alterações do Trunk. Versão final da 2.4.2.

Location:
branches/2.4
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2.4

  • branches/2.4/prototype/rest/catalog/DynamicContactsResource.php

    r6819 r7228  
    290290    private function isEnabledDynamicContacts($user){ 
    291291 
    292                                 //recuperando as preferencias (suas preferencias, preferencia padrão, preferencia obrigatoria)  
    293                 //dos contatos dinamicos  
    294         $sql = 'SELECT preference_owner, preference_value '.  
    295                 'FROM phpgw_preferences '.  
    296                 'WHERE preference_app = \'expressoMail\' AND '.  
    297                         'preference_owner in (-1,-2, ' . $user . ')';  
    298   
    299         $preferences = Controller::service('PostgreSQL')->execResultSql($sql);  
    300   
    301                 $array = array();  
    302         if(count($preferences) > 0){  
    303                         foreach($preferences as $preference){  
    304                                 //recupera a preferencia  
    305                 $preference_value = unserialize( $preference['preference_value'] );  
    306                   
    307                                 //gera um array com o owner e o valor da preferencia:  
    308                                 //true: SIM  (1)  
    309                                 //false: NAO (0)  
    310                                 //null: escolha pelo usuario/ usar padrao / sem padrao  
    311                                 $value = null;  
    312                                 if(isset($preference_value['use_dynamic_contacts'])){  
    313                                         $value = (isset($preference_value['use_dynamic_contacts'])) ? $preference_value['use_dynamic_contacts'] == '1' : false;  
    314                                 }  
    315                                 $array[ $preference['preference_owner'] ] = $value;  
    316                         }  
    317         }  
    318   
    319                 //preferencia obrigatoria (SIM)  
    320                 if(array_key_exists(-1,$array) && $array[-1]){  
    321                         return true;  
     292                //recuperando as preferencias (suas preferencias, preferencia padrão, preferencia obrigatoria) 
     293                //dos contatos dinamicos 
     294        $sql = 'SELECT preference_owner, preference_value '. 
     295                'FROM phpgw_preferences '. 
     296                'WHERE preference_app = \'expressoMail\' AND '. 
     297                        'preference_owner in (-1,-2, ' . $user . ')'; 
     298 
     299        $preferences = Controller::service('PostgreSQL')->execResultSql($sql); 
     300 
     301                $array = array(); 
     302        if(count($preferences) > 0){ 
     303                        foreach($preferences as $preference){ 
     304                                //recupera a preferencia 
     305                $preference_value = unserialize( $preference['preference_value'] ); 
     306                 
     307                                //gera um array com o owner e o valor da preferencia: 
     308                                //true: SIM  (1) 
     309                                //false: NAO (0) 
     310                                //null: escolha pelo usuario/ usar padrao / sem padrao 
     311                                $value = null; 
     312                                if(isset($preference_value['use_dynamic_contacts'])){ 
     313                                        $value = (isset($preference_value['use_dynamic_contacts'])) ? $preference_value['use_dynamic_contacts'] == '1' : false; 
    322314                                } 
    323                                 //preferencia do user (SIM)  
    324                 else if(array_key_exists($user,$array) && $array[$user] ){  
    325                         return true;  
    326                 }  
    327                 //preferencia padrao (SIM) escolhida pelo user  
    328                 else if(array_key_exists($user, $array) && $array[$user] === null &&  
    329                         array_key_exists(-2, $array) && $array[-2]){  
    330                         return true;  
    331                 }  
    332                 return false; 
     315                                $array[ $preference['preference_owner'] ] = $value; 
     316                        } 
     317        } 
     318 
     319                //preferencia obrigatoria (SIM) 
     320                if(array_key_exists(-1,$array) && $array[-1]){ 
     321                        return true; 
     322                } 
     323                //preferencia do user (SIM) 
     324                else if(array_key_exists($user,$array) && $array[$user] ){ 
     325                        return true; 
     326                } 
     327                //preferencia padrao (SIM) escolhida pelo user 
     328                else if(array_key_exists($user, $array) && $array[$user] === null && 
     329                        array_key_exists(-2, $array) && $array[-2]){ 
     330                        return true; 
     331                } 
     332                return false; 
    333333    } 
    334334 
Note: See TracChangeset for help on using the changeset viewer.