/** * save all assets * @param PropelPDO $con */ protected function doSave($con = null) { if (null === $con) { $con = $this->getConnection(); } for ($i = 1; $i <= $this->getOption('size'); $i++) { if ($file = $this->getValue('file_' . $i)) { $asset = new sfAsset(); $asset->setFolderId($this->getValue('folder_id')); $asset->setDescription($file->getOriginalName()); $asset->setAuthor($this->getOption('author')); $asset->setFilename($file->getOriginalName()); $asset->create($file->getTempName()); $asset->save(); $this->assets[] = $asset; } } }
public function executeMassUpload() { if ($this->getRequest()->getMethod() == sfRequest::POST) { $folder = sfAssetFolderPeer::retrieveByPath($this->getRequestParameter('parent_folder')); $this->forward404Unless($folder); try { $nbFiles = 0; for ($i = 1; $i <= sfConfig::get('app_sfAssetsLibrary_mass_upload_size', 5); $i++) { if ($filename = $this->getRequest()->getFileName('files[' . $i . ']')) { $asset = new sfAsset(); $asset->setsfAssetFolder($folder); $asset->setDescription($filename); try { $asset->setAuthor($this->getUser()->getUsername()); } catch (sfException $e) { // no getUsername() method in sfUser, all right: do nothing } $asset->setFilename($filename); $asset->create($this->getRequest()->getFilePath('files[' . $i . ']')); $asset->save(); $nbFiles++; } } } catch (sfAssetException $e) { $this->setFlash('warning_message', $e->getMessage()); $this->setFlash('warning_params', $e->getMessageParams()); $this->redirectToPath('sfAsset/list?dir=' . $folder->getRelativePath()); } $this->setFlash('notice', 'Files successfully uploaded'); $this->redirectToPath('sfAsset/list?dir=' . $folder->getRelativePath()); } }
/** * upload many assets * @param sfWebRequest $request */ public function executeMassUpload(sfWebRequest $request) { $this->form = new sfAssetsForm(null, array('size' => sfConfig::get('app_sfAssetsLibrary_mass_upload_size', 5))); if ($request->getMethod() == sfRequest::POST) { $this->form->bind($request->getParameter($this->form->getName()), $request->getFiles($this->form->getName())); if ($this->form->isValid()) { $folder = sfAssetFolderPeer::retrieveByPK($this->form->getValue('folder_id')); $this->forward404Unless($folder, 'folder not found'); try { $nbFiles = 0; for ($i = 1; $i <= sfConfig::get('app_sfAssetsLibrary_mass_upload_size', 5); $i++) { if ($file = $this->form->getValue('file_' . $i)) { $asset = new sfAsset(); $asset->setsfAssetFolder($folder); $asset->setDescription($file->getOriginalName()); try { $asset->setAuthor($this->getUser()->getUsername()); } catch (sfException $e) { // no getUsername() method in sfUser, all right: do nothing } $asset->setFilename($file->getOriginalName()); $asset->create($file->getTempName()); $asset->save(); $this->dispatcher->notify(new sfEvent($this, 'admin.save_object', array('object' => $asset))); $nbFiles++; } } } catch (sfAssetException $e) { $this->getUser()->setFlash('warning_message', $e->getMessage()); $this->getUser()->setFlash('warning_params', $e->getMessageParams()); $this->redirectToPath('@sf_asset_library_dir?dir=' . $folder->getRelativePath()); } $this->getUser()->setFlash('notice', 'Files successfully uploaded'); $this->redirectToPath('@sf_asset_library_dir?dir=' . $folder->getRelativePath()); } } }