/** * Save action * * @return void */ public function saveAction() { $event = Mage::getModel('enterprise_catalogevent/event')->setStoreId($this->getRequest()->getParam('store', 0)); /* @var $event Enterprise_CatalogEvent_Model_Event */ if ($eventId = $this->getRequest()->getParam('id', false)) { $event->load($eventId); } else { $event->setCategoryId($this->getRequest()->getParam('category_id')); } $postData = $this->_filterPostData($this->getRequest()->getPost()); if (!isset($postData['catalogevent'])) { $this->_getSession()->addError(Mage::helper('enterprise_catalogevent')->__('An error occurred while saving this event.')); $this->_redirect('*/*/edit', array('_current' => true)); return; } $data = new Varien_Object($postData['catalogevent']); $event->setDisplayState($data->getDisplayState())->setStoreDateStart($data->getDateStart())->setStoreDateEnd($data->getDateEnd())->setSortOrder($data->getSortOrder()); $isUploaded = true; try { $uploader = new Mage_Core_Model_File_Uploader('image'); $uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png')); $uploader->setAllowRenameFiles(true); $uploader->setAllowCreateFolders(true); $uploader->setFilesDispersion(false); } catch (Exception $e) { $isUploaded = false; } $validateResult = $event->validate(); if ($validateResult !== true) { foreach ($validateResult as $errorMessage) { $this->_getSession()->addError($errorMessage); } $this->_getSession()->setEventData($event->getData()); $this->_redirect('*/*/edit', array('_current' => true)); return; } try { if ($data->getData('image/is_default')) { $event->setImage(null); } elseif ($data->getData('image/delete')) { $event->setImage(''); } elseif ($isUploaded) { try { $event->setImage($uploader); } catch (Exception $e) { Mage::throwException(Mage::helper('enterprise_catalogevent')->__('Image was not uploaded.')); } } $event->save(); $this->_getSession()->addSuccess(Mage::helper('enterprise_catalogevent')->__('Event has been saved.')); if ($this->getRequest()->getParam('_continue')) { $this->_redirect('*/*/edit', array('_current' => true, 'id' => $event->getId())); } else { $this->_redirect('*/*/'); } } catch (Exception $e) { $this->_getSession()->addError($e->getMessage()); $this->_getSession()->setEventData($event->getData()); $this->_redirect('*/*/edit', array('_current' => true)); } }
/** * Attach uploaded image to wrapping * * @param string $imageFieldName * @param bool $isTemporary * @return Enterprise_GiftWrapping_Model_Wrapping */ public function attachUploadedImage($imageFieldName, $isTemporary = false) { $isUploaded = true; try { $uploader = new Mage_Core_Model_File_Uploader($imageFieldName); $uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png')); $uploader->setAllowRenameFiles(true); $uploader->setAllowCreateFolders(true); $uploader->setFilesDispersion(false); } catch (Exception $e) { $isUploaded = false; } if ($isUploaded) { if ($isTemporary) { $this->setTmpImage($uploader); } else { $this->setImage($uploader); } } return $this; }
/** * Upload new file * * @param string $targetPath Target directory * @throws Mage_Core_Exception * @return array File info Array */ public function uploadFile($targetPath) { try { $imageName = $_FILES['store_logo']['name']; //file name $uploader = new Mage_Core_Model_File_Uploader('store_logo'); //load class $uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png')); //Allowed extension for file $uploader->setAllowCreateFolders(true); //for creating the directory if not exists $uploader->setAllowRenameFiles(true); //if true, uploaded file's name will be changed, if file with the same name already exists directory. $uploader->setFilesDispersion(false); $result = $uploader->save($targetPath, $imageName); //save the file on the specified path if (!$result) { Mage::throwException(Mage::helper('bluehorse_storelocator')->__('Cannot upload file.')); } return $result; } catch (Exception $e) { $this->_getSession()->addException($e, $e->getMessage()); } }