Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function saveAction()
- {
- $id = $this->getRequest()->getParam('id');
- $model = Mage::getModel('amshopby/page');
- $data = $this->getRequest()->getPost();
- if (!$data) {
- }
- //upload images
- $path = Mage::getBaseDir('media') . DS . 'amshopby' . DS;
- $imagesTypes = array('big', 'small', 'medium', 'small_hover', 'page');
- foreach ($imagesTypes as $type){
- $field = 'img_' . $type;
- $isRemove = isset($data['remove_' . $field]);
- $hasNew = !empty($_FILES[$field]['name']);
- try {
- // remove the old file
- if ($isRemove || $hasNew){
- $oldName = $model->getData($field);
- if ($oldName){
- @unlink($path . $oldName);
- $data[$field] = '';
- }
- }
- // upload a new if any
- if (!$isRemove && $hasNew){
- $newName = $type . $id;
- $newName .= '.' . strtolower(substr(strrchr($_FILES[$field]['name'], '.'), 1));
- $uploader = new Varien_File_Uploader($field);
- $uploader->setFilesDispersion(false);
- $uploader->setAllowRenameFiles(false);
- $uploader->setAllowedExtensions(array('png','gif', 'jpg', 'jpeg'));
- $uploader->save($path, $newName);
- $data[$field] = $newName;
- }
- }
- catch (Exception $e) {
- Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
- }
- }
- try {
- $model->setData($data)->setId($id);
- $this->prepareForSave($model);
- $cond = array();
- for ($i=0; $i < $model->getNum(); ++$i){
- $cond[] = array(
- 'attribute_code' => $model->getData('attr_' . $i),
- 'attribute_value' => $model->getData('option_' . $i)
- );
- }
- $model->setCond(serialize($cond));
- $model->save();
- Mage::getSingleton('adminhtml/session')->setFormData(false);
- $msg = Mage::helper('amshopby')->__('Page has been successfully saved');
- Mage::getSingleton('adminhtml/session')->addSuccess($msg);
- if ($this->getRequest()->getParam('continue')){
- $this->_redirect('*/*/edit', array('id' => $model->getId()));
- }
- else {
- $this->_redirect('*/*');
- }
- }
- catch (Exception $e) {
- Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
- Mage::getSingleton('adminhtml/session')->setFormData($data);
- $this->_redirect('*/*/edit', array('id' => $id));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement