Ejemplo n.º 1
0
 public function beforeDelete($event)
 {
     if ($files = Yii::app()->user->getState(XFiles::w()->currStateVar)) {
         foreach ($files as $file) {
             if (is_file($file['path'])) {
                 unlink($file['path']);
             }
         }
     }
     XFiles::w()->currStateVar = null;
     $id = $this->owner->id;
     $modelName = $this->owner->getClassName();
     if ($fileIDs = XFiles::getFileIdListFPM($id, $modelName)) {
         foreach ($fileIDs as $fileID) {
             FPM::deleteFiles($fileID);
         }
     }
 }
Ejemplo n.º 2
0
 protected function handleDeleting()
 {
     $success = false;
     if (($marker = $this->getQuery('marker')) && ($stateVar = $this->getQuery('stateVar'))) {
         if ($files = Yii::app()->user->getState($stateVar)) {
             $filePath = $files[$marker]['path'];
             if (is_file($filePath)) {
                 $success = unlink($filePath);
                 if ($success) {
                     unset($files[$marker]);
                     Yii::app()->user->setState($stateVar, $files);
                 }
             }
         }
     } elseif ($fileID = $this->getQuery('fileID')) {
         if ((int) $fileID) {
             $filePath = urldecode(FPM::getOriginalFilePathById($fileID));
             if (is_file($filePath)) {
                 $success = FPM::deleteFiles($fileID);
             }
         }
     }
     echo json_encode($success);
     return true;
 }
 private function deleteFiles()
 {
     /** @var $owner ActiveRecord */
     $owner = $this->getOwner();
     $files = FPM::m()->getDb()->createCommand()->select(array('file_id'))->from(FPM::m()->relatedTableName)->where('model_id = :mid AND model_class = :mclass')->queryColumn(array(':mid' => $owner->getPrimaryKey(), ':mclass' => $owner->getClassName()));
     foreach ($files as $fileId) {
         FPM::deleteFiles($fileId);
     }
 }
 private function deleteFile()
 {
     /** @var $owner CActiveRecord */
     $owner = $this->getOwner();
     FPM::deleteFiles($owner->{$this->attributeName});
 }