Changeset 6605


Ignore:
Timestamp:
06/25/12 11:40:46 (7 years ago)
Author:
tezza
Message:

Ticket #2766 - Acrescentado verificação na preferência de contatos dinâmicos

Location:
trunk/prototype/rest/catalog
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/rest/catalog/DynamicContactResource.php

    r6528 r6605  
    2323 
    2424        $this->secured(); 
     25 
     26        //verificar se a preferencia de contatos dinamicos nao esta ativada 
     27        if(!$this->isEnabledDynamicContacts(Config::me("uidNumber")) ){ 
     28                $response = new Response($request); 
     29                $this->createException($request, $response, Response::UNAUTHORIZED, 'Resource unauthorized', 'disabled dynamic contacts preference'); 
     30                return $response; 
     31        } 
    2532 
    2633        $response = new Response($request); 
     
    172179         
    173180        $this->secured(); 
     181 
     182        //verificar se a preferencia de contatos dinamicos nao esta ativada 
     183        if(!$this->isEnabledDynamicContacts(Config::me("uidNumber")) ){ 
     184                $response = new Response($request); 
     185                $this->createException($request, $response, Response::UNAUTHORIZED, 'Resource unauthorized', 'disabled dynamic contacts preference'); 
     186                return $response; 
     187        } 
     188 
    174189 
    175190        $post = $request->dataDecoded; 
     
    260275        $this->secured(); 
    261276 
     277        //verificar se a preferencia de contatos dinamicos nao esta ativada 
     278        if(!$this->isEnabledDynamicContacts(Config::me("uidNumber")) ){ 
     279                $response = new Response($request); 
     280                $this->createException($request, $response, Response::UNAUTHORIZED, 'Resource unauthorized', 'disabled dynamic contacts preference'); 
     281                return $response; 
     282        } 
     283 
    262284        $response = new Response($request); 
    263285        $response->addHeader('Content-type', 'aplication/json'); 
     
    307329    } 
    308330 
     331    private function isEnabledDynamicContacts($user){ 
     332 
     333        $sql = 'SELECT preference_value '. 
     334                'FROM phpgw_preferences '. 
     335                'WHERE preference_app = \'expressoMail\' AND '. 
     336                        'preference_owner = ' . $user; 
     337 
     338        $preference = Controller::service('PostgreSQL')->execResultSql($sql, true); 
     339 
     340        if(count($preference) > 0 && isset($preference['preference_value'])){ 
     341                $preference = unserialize( $preference['preference_value'] ); 
     342 
     343                if(isset($preference['use_dynamic_contacts'])){ 
     344                        $preference = $preference['use_dynamic_contacts']; 
     345                        return ($preference == '1'); 
     346                } 
     347        } 
     348        return false; 
     349    } 
    309350} 
    310351 
  • trunk/prototype/rest/catalog/DynamicContactsResource.php

    r6578 r6605  
    182182 
    183183        $this->secured(); 
    184          
     184 
     185        //verificar se a preferencia de contatos dinamicos nao esta ativada 
     186        if(!$this->isEnabledDynamicContacts(Config::me("uidNumber")) ){ 
     187                $response = new Response($request); 
     188                $this->createException($request, $response, Response::UNAUTHORIZED, 'Resource unauthorized', 'disabled dynamic contacts preference'); 
     189                return $response; 
     190        } 
     191 
     192 
    185193        if (count($_POST) == 0) { 
    186194            $response = new Response($request); 
     
    236244                //se a quantidade de contatos dinamicos de usuario exceder o limite maximo definido nas preferencias do administrador, 
    237245                //remover o contato dinamico mais antigo 
    238                 if($numberOfDynamicContacts >= $numberOfMessages){ 
     246                if($numberOfMessages > 0 && $numberOfDynamicContacts >= $numberOfMessages){ 
    239247                        $id = $dynamicContacts[0]['id']; 
    240248                        $delete = Controller::delete(array('concept' => 'dynamicContact', 'id' => $id)); 
     
    280288    } 
    281289 
     290    private function isEnabledDynamicContacts($user){ 
     291 
     292        $sql = 'SELECT preference_value '. 
     293                'FROM phpgw_preferences '. 
     294                'WHERE preference_app = \'expressoMail\' AND '. 
     295                        'preference_owner = ' . $user; 
     296 
     297        $preference = Controller::service('PostgreSQL')->execResultSql($sql, true); 
     298 
     299        if(count($preference) > 0 && isset($preference['preference_value'])){ 
     300                $preference = unserialize( $preference['preference_value'] ); 
     301 
     302                if(isset($preference['use_dynamic_contacts'])){ 
     303                        $preference = $preference['use_dynamic_contacts']; 
     304                        return ($preference == '1'); 
     305                } 
     306        } 
     307        return false; 
     308    } 
     309 
    282310} 
    283311 
  • trunk/prototype/rest/catalog/UserContactsResource.php

    r6592 r6605  
    2424        $this->secured(); 
    2525 
     26        //verificar se a preferencia de contatos dinamicos nao esta ativada 
     27        if(!$this->isEnabledDynamicContacts(Config::me("uidNumber")) ){ 
     28                $response = new Response($request); 
     29                $this->createException($request, $response, Response::UNAUTHORIZED, 'Resource unauthorized', 'disabled dynamic contacts preference'); 
     30                return $response; 
     31        } 
     32 
    2633        $response = new Response($request); 
    2734        $response->addHeader('Content-type', 'aplication/json'); 
     
    478485    } 
    479486 
     487    private function isEnabledDynamicContacts($user){ 
     488 
     489        $sql = 'SELECT preference_value '. 
     490                'FROM phpgw_preferences '. 
     491                'WHERE preference_app = \'expressoMail\' AND '. 
     492                        'preference_owner = ' . $user; 
     493 
     494        $preference = Controller::service('PostgreSQL')->execResultSql($sql, true); 
     495 
     496        if(count($preference) > 0 && isset($preference['preference_value'])){ 
     497                $preference = unserialize( $preference['preference_value'] ); 
     498 
     499                if(isset($preference['use_dynamic_contacts'])){ 
     500                        $preference = $preference['use_dynamic_contacts']; 
     501                        return ($preference == '1'); 
     502                } 
     503        } 
     504        return false; 
     505    } 
     506 
    480507} 
    481508 
Note: See TracChangeset for help on using the changeset viewer.