Changeset 6030


Ignore:
Timestamp:
04/25/12 16:03:57 (12 years ago)
Author:
adriano
Message:

Ticket #2633 - correcao na operacao de exclusao de tipo de sinalizacao

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/modules/mail/interceptors/Helpers.php

    r6024 r6030  
    158158                //remove apenas se vier o id da Followupflag 
    159159                if(isset($uri['id'])) { 
     160                        $result = Controller::find(array('concept' => 'followupflagged'), null , array('filter' => array('=' , 'followupflagId' , $uri['id']))); 
     161                        foreach ($result as $flagged) { 
     162                                Controller::delete(array('concept' => 'followupflagged', 'id' => $flagged['id']), false, false); 
     163                        } 
     164 
    160165                        Controller::deleteALL(array('concept' => 'followupflagged'), null , array('filter' => array('=' , 'followupflagId' , $uri['id']))); 
    161166                } 
     
    177182        public function getReferenceToImapDelete( &$uri , &$params , &$criteria , $original ) { 
    178183 
    179                 if ($uri['service'] == 'Imap' && $uri['id'] /*&& !$criteria*/) { 
     184                if (isset($uri['service']) && $uri['service'] == 'Imap' && $uri['id'] /*&& !$criteria*/) { 
    180185                        $db_uri = $uri; 
    181186                        $db_uri['service'] = 'PostgreSQL'; 
     
    260265                $imap_criteria = $original['criteria']; 
    261266                 
    262                 if (self::in_arrayr('alarmDeadline', $original['criteria']) || self::in_arrayr('doneDeadline', $original['criteria'])) { 
     267                if (self::in_arrayr('alarmDeadline', $original['criteria']) ||  
     268                        self::in_arrayr('doneDeadline', $original['criteria']) ||  
     269                        self::in_arrayr('followupflagId', $original['criteria']))  
     270                { 
    263271                        if (empty($result)) return $result; 
    264272                         
     
    296304                if ($result) { 
    297305                        $idList = array(); 
    298                         foreach ($result as $ir ) { 
    299                                 $idList = $ir['messageId']; 
    300                         } 
    301                         $filter = array('IN','messageId',$idList); 
     306                        foreach ($result as $ir) { 
     307                                $idList[] = $ir['messageId']; 
     308                        } 
     309                        $filter = array('IN', 'messageId', $idList); 
    302310                        Controller::delete(array('concept' => 'followupflagged'), null , array('filter' => $filter)); 
    303311                } 
Note: See TracChangeset for help on using the changeset viewer.