Ignore:
Timestamp:
03/08/13 16:32:58 (11 years ago)
Author:
douglas
Message:

Ticket #3378 - Importação automatica de eventos nos participantes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.5/prototype/modules/calendar/interceptors/DBMapping.php

    r7978 r7982  
    169169    public function schedulableSecurity(&$uri, &$params, &$criteria, $original)  
    170170    { 
     171  
    171172        if( !isset($criteria['filter'][1]) || !$criteria['filter'][1] == 'uid')  
    172173        {  
     
    763764            } 
    764765        } 
     766    }  
     767  
     768    static function autoImportCalendar(&$uri, &$params, &$criteria, $original){  
     769        $autoCommit = Controller::service('PostgreSQL')->execResultSql('Select config_value FROM phpgw_config WHERE config_app = \'expressoCalendar\' AND config_name = \'expressoCalendar_autoImportCalendars\'');  
     770  
     771  
     772        if(isset($autoCommit[0]) && $autoCommit[0]['config_value'] == 'true')  
     773        {  
     774            if(isset($original['properties']) && isset($original['properties']['user'])  && isset($original['properties']['isOrganizer']) &&  $original['properties']['isOrganizer'] != '1')  
     775            {  
     776                $defaultCalendar = Controller::find(array('concept' => 'modulePreference'), array('value') , array('filter' => array( 'and' , array('=' , 'name' , 'dafaultImportCalendar') , array('=' , 'module' , 'expressoCalendar') , array('=' , 'user' , $original['properties']['user'])  )) );  
     777                if(isset($defaultCalendar[0]) && $defaultCalendar[0]['value'] > 0)  
     778                {  
     779                    Controller::create(array('concept' => 'calendarToSchedulable'),  
     780                        array('schedulable' => $original['properties']['schedulable'],  
     781                            'calendar' => $defaultCalendar[0]['value']  
     782                        )  
     783                    );  
     784                }  
     785            }  
     786        }  
    765787    } 
    766788 
     
    13781400 
    13791401    public function deleteCalendarSignatureDependences(&$uri, &$params, &$criteria, $original) { 
    1380         $signature = Controller::read($uri, array('isOwner', 'calendar')); 
     1402        $signature = Controller::read($uri, array('isOwner', 'calendar','user')); 
    13811403 
    13821404        if ($signature['isOwner'] == '1') { 
     
    13921414 
    13931415            Controller::delete(array('concept' => 'calendar', 'id' => $signature['calendar'])); 
    1394                  
    1395                 $permissions = Controller::find(array('concept' => 'calendarToPermission'), array('id'), array('filter' => array('=', 'calendar', $signature['calendar']))); 
    1396  
    1397                  
    1398                  
     1416  
     1417        $autoCommit = Controller::service('PostgreSQL')->execResultSql('Select config_value FROM phpgw_config WHERE config_app = \'expressoCalendar\' AND config_name = \'expressoCalendar_autoImportCalendars\'');  
     1418  
     1419        if(isset($autoCommit[0]) && $autoCommit[0]['config_value'] == 'true')  
     1420        {  
     1421            $defaultCalendar = Controller::find(array('concept' => 'modulePreference'), array('value','id') , array('filter' => array( 'and' , array('=' , 'name' , 'dafaultImportCalendar') , array('=' , 'module' , 'expressoCalendar') , array('=' , 'user' , $signature['user'])  )) );  
     1422  
     1423  
     1424            self::lg($defaultCalendar);  
     1425            if(isset($defaultCalendar[0])  && $defaultCalendar[0]['value'] == $signature['calendar'] )  
     1426            {  
     1427                Controller::delete(array('concept' => 'modulePreference', 'id' => $defaultCalendar[0]['id']));  
     1428            }  
     1429        }  
     1430  
     1431        $permissions = Controller::find(array('concept' => 'calendarToPermission'), array('id'), array('filter' => array('=', 'calendar', $signature['calendar'])));  
     1432  
    13991433                if($permissions && count($permissions) > 0){ 
    14001434                        $ids = array(); 
     
    15431577                } 
    15441578 
    1545                     DAViCalAdapter::importCollection($v->url, $calCreated['id']); 
     1579                if($i == 0)  
     1580                {  
     1581                    $pref = array();  
     1582                    $pref['user'] = $_SESSION['wallet']['user']['uidNumber'];  
     1583                    $pref['value'] = $calCreated['id'];  
     1584                    $pref['name'] = 'dafaultImportCalendar' ;  
     1585                    $pref['module'] = 'expressoCalendar';  
     1586                    Controller::create(array('concept' => 'modulePreference'), $pref);  
     1587                }  
     1588  
    15461589                } 
    15471590            } else { 
     
    15651608 
    15661609                $sigCreated = Controller::create(array('concept' => 'calendarSignature'), $sig); 
     1610  
     1611  
     1612            $pref = array();  
     1613            $pref['user'] = $_SESSION['wallet']['user']['uidNumber'];  
     1614            $pref['value'] = $calCreated['id'];  
     1615            $pref['name'] = 'dafaultImportCalendar' ;  
     1616            $pref['module'] = 'expressoCalendar';  
     1617            Controller::create(array('concept' => 'modulePreference'), $pref);  
     1618  
     1619  
    15671620        } 
    15681621     
Note: See TracChangeset for help on using the changeset viewer.