Index: trunk/core/units/general/inp_db_event_handler.php =================================================================== diff -u -r1821 -r4358 --- trunk/core/units/general/inp_db_event_handler.php (.../inp_db_event_handler.php) (revision 1821) +++ trunk/core/units/general/inp_db_event_handler.php (.../inp_db_event_handler.php) (revision 4358) @@ -1,8 +1,8 @@ 'iterateItems', 'OnMassMoveDown'=>'iterateItems', ); - + $this->eventMethods = array_merge($this->eventMethods, $common_events); } - + /** * Apply same processing to each item beeing selected in grid * @@ -26,39 +26,39 @@ if ($this->Application->CheckPermission('SYSTEM_ACCESS.READONLY', 0)) { return; } - + $this->Application->setUnitOption($event->Prefix,'AutoLoad',false); $object =& $event->getObject(); $this->StoreSelectedIDs($event); $ids=$this->getSelectedIDs($event); - + if($ids) { $status_field = array_shift( $this->Application->getUnitOption($event->Prefix,'StatusField') ); - + foreach($ids as $id) { $object->Load($id); - + switch ($event->Name) { case 'OnMassApprove': $object->SetDBField($status_field, 1); break; - + case 'OnMassDecline': $object->SetDBField($status_field, 0); break; - + case 'OnMassMoveUp': $object->SetDBField('Priority', $object->GetDBField('Priority') + 1); break; - + case 'OnMassMoveDown': $object->SetDBField('Priority', $object->GetDBField('Priority') - 1); break; } - + if( $object->Update() ) { $event->status=erSUCCESS; @@ -73,7 +73,7 @@ } } } - + /** * Enter description here... * @@ -84,20 +84,20 @@ if ($this->Application->CheckPermission('SYSTEM_ACCESS.READONLY', 0)) { return; } - + $event->status=erSUCCESS; - + $temp =& $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler'); - + $this->StoreSelectedIDs($event); $ids=$this->getSelectedIDs($event); - + if($ids) { $temp->CloneItems($event->Prefix, $event->Special, $ids); } } - + function check_array($records, $field, $value) { foreach ($records as $record) @@ -109,6 +109,13 @@ } return false; } + + function OnPreSavePopup(&$event) + { + $event->CallSubEvent('OnPreSave'); + $this->Application->StoreVar('PermCache_UpdateRequired', 1); + $event->redirect = 'incs/just_close'; + } }