protected function saveFileRecord()
 {
     $this->fileRecord = $this->fileDAO->getRecordTemplate();
     $this->form->setRecordValuesFromFields($this->fileRecord);
     $this->fileRecord['id'] = null;
     $recordId = $this->form->getField('id')->getValue();
     $this->fileRecord['recordId'] = !empty($recordId) ? $recordId : $this->form->getField('_tmpId')->getValue();
     $this->fileRecord['recordType'] = !empty($recordId) ? $this->form->getField('recordType')->getValue() : '_tmpRecord';
     $this->fileRecord['fileUpdateTime'] = CoreUtils::getDateTime();
     $maxOrder = $this->fileDAO->getMaxOrderByRecord($this->fileRecord['recordType'], $this->fileRecord['recordId'], $this->fileRecord['fileCategory'], $this->fileRecord['filePosition']);
     // numerowanie od 0!
     $this->fileRecord['fileOrder'] = $maxOrder + 1;
     $uploadStruct = $this->form->getField('_fileUpload')->getValue();
     $this->fileDAO->save($this->fileRecord, $uploadStruct);
 }
 /**
  * UWAGA!
  * Z założenia to jest odporne na takie sytuacje jak dodanie lub usunięcie załączników
  * współbieżnie przez innego użytkownika, w wyniku czego lista identyfikatorów jest
  * nieaktualna. Na tej liście mogą niektóre identyfikatory wystepowac po klika razy
  * a moga też byc kompletne smiecie.
  */
 protected function updateFilesOrder()
 {
     foreach ($this->swfAttachmentTypes as $listName => $listInfo) {
         if ($this->isSWFUploadOrderingActive($listName)) {
             $orderFieldValue = $this->form->getField($listName . '_order')->getValue();
             if (!empty($orderFieldValue)) {
                 $ids = explode(',', $orderFieldValue);
                 $order = array_flip($ids);
                 $files = $this->fileDAO->getListByRecord($this->getRecordType(), $this->record['id'], $listInfo['fileCategory'], $listName);
                 $i = 0;
                 foreach ($files as $file) {
                     if (array_key_exists($file['id'], $order)) {
                         $file['fileOrder'] = $order[$file['id']];
                     } else {
                         $file['fileOrder'] = sizeof($files) + $i;
                         $i++;
                     }
                     $this->fileDAO->save($file);
                 }
             }
         }
     }
 }