Index: branches/5.2.x/units/shipping/shipping_event_handler.php =================================================================== diff -u -N -r14258 -r14625 --- branches/5.2.x/units/shipping/shipping_event_handler.php (.../shipping_event_handler.php) (revision 14258) +++ branches/5.2.x/units/shipping/shipping_event_handler.php (.../shipping_event_handler.php) (revision 14625) @@ -1,6 +1,6 @@ Application->isAdminUser) { - return ; + if ( !$this->Application->isAdminUser ) { + return; } $object =& $event->getObject(); + /* @var $object kDBItem */ - $format = '%01.'.$object->GetDBField('PrecisionAfterSep').'f'; // %01.2f + $format = '%01.' . $object->GetDBField('PrecisionAfterSep') . 'f'; // %01.2f $zero_if_empty = $object->GetDBField('ZeroIfEmpty'); $sc_object =& $this->Application->recallObject('sc', null, Array ('raise_warnings' => 0)); @@ -56,10 +59,10 @@ $flat_options['default'] = $zero_if_empty ? 0 : null; $sc_object->SetFieldOptions('Flat', $flat_options); - $perunit_options = $sc_object->GetFieldOptions('PerUnit'); - $perunit_options['format'] = $format; - $perunit_options['default'] = $zero_if_empty ? 0 : null; - $sc_object->SetFieldOptions('PerUnit', $perunit_options); + $per_unit_options = $sc_object->GetFieldOptions('PerUnit'); + $per_unit_options['format'] = $format; + $per_unit_options['default'] = $zero_if_empty ? 0 : null; + $sc_object->SetFieldOptions('PerUnit', $per_unit_options); } /** @@ -140,15 +143,32 @@ $event->status=kEvent::erSUCCESS; } - function OnSave(&$event) + /** + * Saves content of temp table into live and + * redirects to event' default redirect (normally grid template) + * + * @param kEvent $event + * @return void + * @access protected + */ + protected function OnSave(&$event) { $this->OnAfterItemLoad($event); parent::OnSave($event); } - function OnAfterItemCreate(&$event) + /** + * Occurs after creating item + * + * @param kEvent $event + * @return void + * @access protected + */ + protected function OnAfterItemCreate(&$event) { + parent::OnAfterItemCreate($event); + $event->CallSubEvent('OnAnyChange'); } @@ -168,14 +188,22 @@ $this->Conn->Query($sql); } - function OnPreSaveCreated(&$event){ + /** + * Creates a new item in temp table and + * stores item id in App vars and Session on success + * + * @param kEvent $event + * @return void + * @access protected + */ + protected function OnPreSaveCreated(&$event) + { parent::OnPreSaveCreated($event); - $default_group = $this->Application->ConfigValue('User_LoggedInGroup'); + $object =& $event->getObject( Array ('skip_autoload' => true) ); + /* @var $object kDBItem */ - $object =& $event->getObject( Array('skip_autoload' => true) ); - - $object->SetDBField('PortalGroups', ','.$default_group.','); + $object->SetDBField('PortalGroups', ',' . $this->Application->ConfigValue('User_LoggedInGroup') . ','); } function UpdateGroups(&$event){ @@ -196,8 +224,16 @@ } } - function customProcessing(&$event, $when){ + /** + * Apply custom processing to item + * + * @param kEvent $event + * @param string $type + * @return void + * @access protected + */ + protected function customProcessing(&$event, $type) + { $this->UpdateGroups($event); - } } \ No newline at end of file