Changeset 6331 for trunk/prototype/services/iCal.php
- Timestamp:
- 05/28/12 21:17:51 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/prototype/services/iCal.php
r6321 r6331 243 243 244 244 if ($schedulable) { //Caso o evento exista 245 if (!self::_existInMyCalendars($schedulable['id'] )) {245 if (!self::_existInMyCalendars($schedulable['id'], $params['owner'])) { 246 246 $calendarToSchedulable = array(); 247 247 $calendarToSchedulable['calendar'] = $params['calendar']; … … 250 250 251 251 if (isset($params['status'])) { 252 if( isset($params['fromPermission'])){253 $ signaturesOfOwner = Controller::Read(array('concept' => 'calendarSignature'), false, array('filter' => array('AND', array('=', 'calendar', $params['fromPermission']) , array('=','isOwner','1')), 'deepness' => 2 ));254 $pID = self::_getParticipantByMail($ signaturesOfOwner[0]['user']['mail'], $schedulable['participants']);252 if($params['owner'] != Config::me("uidNumber")){ 253 $user = Controller::Read(array('concept' => 'user'), false, array('filter' => array('=', 'id', $params['owner'])) ); 254 $pID = self::_getParticipantByMail($user[0]['mail'], $schedulable['participants']); 255 255 }else 256 256 $pID = self::_getParticipantByMail(Config::me('mail'), $schedulable['participants']); … … 269 269 270 270 if (isset($params['status'])) { 271 if( isset($params['fromPermission'])){272 $signaturesOfOwner = Controller::Read(array('concept' => 'calendarSignature'), false, array('filter' => array('AND', array('=', 'calendar', $params['fromPermission']) , array('=','isOwner','1')), 'deepness' => 2 ));273 $pID = self::_getParticipantByMail($ signaturesOfOwner[0]['user']['mail'], $schedulable['participants']);271 if($params['owner'] != Config::me("uidNumber")){ 272 $user = Controller::Read(array('concept' => 'user'), false, array('filter' => array('=', 'id', $params['owner'])) ); 273 $pID = self::_getParticipantByMail($user[0]['mail'], $schedulable['participants']); 274 274 }else 275 275 $pID = self::_getParticipantByMail(Config::me('mail'), $schedulable['participants']); … … 478 478 479 479 $schedulable = self::_getSchedulable($uid); 480 $params['calendar'] = self::_existInMyCalendars($schedulable['id'] );480 $params['calendar'] = self::_existInMyCalendars($schedulable['id'], $params['owner']); 481 481 482 482 $interation = self::_makeCOUNTER($schedulable, $component, $params); … … 503 503 $interation = self::_makeVEVENT($schedulable, $component, $params); 504 504 505 if (!self::_existInMyCalendars($schedulable['id'] )) {505 if (!self::_existInMyCalendars($schedulable['id'], $params['owner'])) { 506 506 $calendarToSchedulable = array(); 507 507 $calendarToSchedulable['calendar'] = $params['calendar']; … … 527 527 } 528 528 } 529 530 529 return $return; 531 530 } … … 558 557 559 558 foreach ($schedulable['participants'] as $value) 560 if ($value['user']['id'] == Config::me('uidNumber')) {559 if ($value['user']['id'] == $params['owner']) { 561 560 $isParticipant = true; 562 561 if ($value['isOrganizer']) 563 562 $isOrganizer = true; 564 563 565 if (!self::_existInMyCalendars($schedulable['id'] )) {564 if (!self::_existInMyCalendars($schedulable['id'], $params['owner'])) { 566 565 $interation = ICAL_ACTION_UPDATE; 567 566 $interation = ( strrpos($value['acl'], ATTENDEE_ACL_PARTICIPATION_REQUIRED) ) ? ICAL_ACTION_IMPORT_REQUIRED : ICAL_ACTION_IMPORT; … … 579 578 }else 580 579 $interation = ICAL_ACTION_IMPORT; 580 581 if(($interation != ICAL_ACTION_NONE) && ($interation != ICAL_ACTION_ORGANIZER_NONE) && ($interation != ICAL_ACTION_ORGANIZER_UPDATE) && ($interation != ICAL_ACTION_NONE)) { 582 if($params['owner'] != Config::me("uidNumber")){ 583 $sig = Controller::find(array('concept' => 'calendarSignature'), array('calendar'), array('filter' => array('AND', array('=', 'user', $params['owner']), array('=', 'isOwner', '1')))); 584 $calendars = array(); 585 foreach ($sig as $val) 586 $calendars[] = $val['calendar']; 587 588 $calendarsPermission = Controller::find(array('concept' => 'calendarToPermission'), array('calendar'), array('filter' => array('AND', array('=', 'user', Config::me("uidNumber")), array('IN', 'calendar', $calendars)))); 589 590 foreach ($calendarsPermission as $val) 591 $ids[] = $val['calendar']; 592 593 $interation = array('action' => ICAL_ACTION_IMPORT_FROM_PERMISSION ,'calendar' => $ids); 594 } 595 } 581 596 582 597 break; … … 675 690 $eventoFromCalendar = Controller::read( array( 'concept' => 'calendarToSchedulable') , false, array('filter' => array('AND', array('=','schedulable',$schedulable['id']), array('=','calendar', $value['calendar']['id'])))); 676 691 677 return ($eventoFromCalendar && isset($eventoFromCalendar[0])) ? ICAL_ACTION_NONE_FROM_PERMISSION : array('action' => ICAL_ACTION_IMPORT_FROM_PERMISSION, 'calendar' => $value['calendar']['id']);692 return ($eventoFromCalendar && isset($eventoFromCalendar[0])) ? ICAL_ACTION_NONE_FROM_PERMISSION : array('action' => ICAL_ACTION_IMPORT_FROM_PERMISSION, 'calendar' => array($value['calendar']['id']) ); 678 693 } 679 694 } … … 1064 1079 } 1065 1080 1066 static private function _existInMyCalendars($id ) {1067 $sig = Controller::find(array('concept' => 'calendarSignature'), array('user', 'calendar', 'isOwner'), array('filter' => array('AND', array('=', 'user', Config::me('uidNumber')), array('=', 'isOwner', '1'))));1081 static private function _existInMyCalendars($id, $owner) { 1082 $sig = Controller::find(array('concept' => 'calendarSignature'), array('user', 'calendar', 'isOwner'), array('filter' => array('AND', array('=', 'user', $owner), array('=', 'isOwner', '1')))); 1068 1083 $calendars = array(); 1069 1084 foreach ($sig as $val)
Note: See TracChangeset
for help on using the changeset viewer.