Beispiel #1
0
 public function afterSave($event)
 {
     $model = $this->getOwner();
     $sessionFiles = UploadUtils::getSessionFiles();
     if (isset($_POST['File'])) {
         $files = array();
         foreach ($_POST['File'] as $i => $item) {
             if (isset($_POST['File'][$i])) {
                 $fid = $_POST['File'][$i]['fid'];
                 if ($fid[0] == 's') {
                     // is Session file!!
                     $sid = substr($fid, 1);
                     $file = UploadUtils::getFileFromSession($sid);
                     if (isset($file)) {
                         if (file_exists(self::$tempDir . '/' . $file->filename)) {
                             $oldFileName = $file->filename;
                             $file->filename = UploadUtils::createUniquefilename($file->filename, self::$fileDir);
                             $file->entity = get_class($model);
                             $file->EXid = $model->getPrimaryKey();
                             // Por que??? if (Yii::app()->user->isGuest) $file->status=File::STATUS_SAVED;
                             $file->status = File::STATUS_SAVED;
                             // Move the temp files to repository
                             if (rename(self::$tempDir . '/' . $oldFileName, self::$fileDir . '/' . $file->filename)) {
                                 // Move
                                 $file->save();
                             }
                         }
                     }
                 } else {
                     // is a file in DB
                     $file = File::model()->findbyPk($fid);
                     $file->attributes = $_POST['File'][$i];
                     $file->save();
                 }
                 $files[] = $file;
             }
         }
     }
     UploadUtils::clearSessionFiles();
 }