Index: branches/5.2.x/units/taxesdestinations/taxes_dst_event_handler.php =================================================================== diff -u -N -r14625 -r15061 --- branches/5.2.x/units/taxesdestinations/taxes_dst_event_handler.php (.../taxes_dst_event_handler.php) (revision 14625) +++ branches/5.2.x/units/taxesdestinations/taxes_dst_event_handler.php (.../taxes_dst_event_handler.php) (revision 15061) @@ -1,6 +1,6 @@ getObject(Array ('skip_autoload' => true)); + /* @var $object kDBItem */ - $object =& $event->getObject( Array('skip_autoload' => true) ); - $items_info = $this->Application->GetVar( $event->getPrefixSpecial(true) ); + $items_info = $this->Application->GetVar($event->getPrefixSpecial(true)); $tax_object =& $this->Application->recallObject('tax'); + /* @var $tax_object kDBItem */ - $std_dest_id=$this->Application->GetVar('StatesCountry'); + $std_dest_id = $this->Application->GetVar('StatesCountry'); - if($items_info) - { + if ( $items_info ) { $taxdest =& $this->Application->recallObject($event->getPrefixSpecial(true), null); - $parent_info=&$object->GetLinkedInfo(); + /* @var $taxdest kDBItem */ - $queryDel="DELETE FROM ".$object->TableName." WHERE TaxZoneId=".$parent_info['ParentId']; + $parent_info =& $object->GetLinkedInfo(); + + $queryDel = "DELETE FROM " . $object->TableName . " WHERE TaxZoneId=" . $parent_info['ParentId']; $this->Conn->Query($queryDel); - foreach($items_info as $id => $field_values) - { - if($tax_object->GetDBField('Type') == 3 && (!$field_values['DestValue'] || $field_values['DestValue']=='')){ + foreach ($items_info as $field_values) { + if ( $tax_object->GetDBField('Type') == 3 && (!$field_values['DestValue'] || $field_values['DestValue'] == '') ) { continue; } - if (!$field_values['StdDestId']){ - $field_values['StdDestId']=$std_dest_id; + if ( !$field_values['StdDestId'] ) { + $field_values['StdDestId'] = $std_dest_id; } - $field_values['TaxZoneId']=$parent_info['ParentId']; + $field_values['TaxZoneId'] = $parent_info['ParentId']; - if ($taxdest->Load($field_values['TaxZoneDestId'], "TaxZoneDestId")){ + if ( $taxdest->Load($field_values['TaxZoneDestId'], "TaxZoneDestId") ) { $taxdest->SetFieldsFromHash($field_values); $taxdest->Update($field_values['TaxZoneDestId']); - }else{ + } + else { $taxdest->SetFieldsFromHash($field_values); $taxdest->Create($field_values['TaxZoneDestId']); } - } - } - - } /** - * Creates item from submit data + * Creates new kDBItem * * @param kEvent $event + * @return void + * @access protected */ - - function OnCreate(&$event) + protected function OnCreate(kEvent &$event) { - $object =& $event->getObject( Array('skip_autoload' => true) ); + $object =& $event->getObject(Array ('skip_autoload' => true)); + /* @var $object kDBItem */ - $items_info = $this->Application->GetVar( $event->getPrefixSpecial(true) ); - if($items_info) - { - foreach($items_info as $id => $field_values) - { - $object->SetFieldsFromHash($field_values); - $this->customProcessing($event,'before'); + $items_info = $this->Application->GetVar($event->getPrefixSpecial(true)); + if ( !$items_info ) { + return; + } - if ( $object->Create() ) { - $this->customProcessing($event,'after'); - } - else { - $event->status = kEvent::erFAIL; - $event->redirect = false; - $this->Application->SetVar($event->getPrefixSpecial().'_SaveEvent','OnCreate'); - $object->setID(0); - } + foreach ($items_info as $field_values) { + $object->SetFieldsFromHash($field_values); + $this->customProcessing($event, 'before'); + + if ( $object->Create() ) { + $this->customProcessing($event, 'after'); } + else { + $event->status = kEvent::erFAIL; + $event->redirect = false; + $this->Application->SetVar($event->getPrefixSpecial() . '_SaveEvent', 'OnCreate'); + $object->setID(0); + } } } @@ -103,24 +105,26 @@ * @return void * @access protected */ - protected function customProcessing(&$event, $type) + protected function customProcessing(kEvent &$event, $type) { - switch($type) - { + switch ($type) { case 'before': $object =& $event->getObject(); + /* @var $object kDBItem */ + $events = $this->Application->GetVar('events'); - if($events['tax'] == 'OnUpdate') - { + + if ( $events['tax'] == 'OnUpdate' ) { $object->SetDBField('TaxZoneId', $this->Application->GetVar('tax_id')); } + $tax_object =& $this->Application->recallObject('tax'); - if($tax_object->GetDBField('Type') == 3) - { + /* @var $tax_object kDBItem */ + + if ( $tax_object->GetDBField('Type') == 3 ) { $tax_object->SetDBField('StdDestId', $this->Application->GetVar('StatesCountry')); } break; - default: } }