public function handleUpdateUploads($id, array $stored) { try { $upload = new Sitengine_Upload(self::FILE1ORIGINAL_ID); if ($upload->isFile()) { if ($stored[self::FILE1ORIGINAL_ID . self::FILETAG_NAME]) { $this->_removeFile(self::FILE1ORIGINAL_ID, $stored[self::FILE1ORIGINAL_ID . self::FILETAG_NAME]); } if ($stored[self::FILE1THUMBNAIL_ID . self::FILETAG_NAME]) { $this->_removeFile(self::FILE1THUMBNAIL_ID, $stored[self::FILE1THUMBNAIL_ID . self::FILETAG_NAME]); } } if ($upload->isFile()) { if (Sitengine_Mime_Type::isJpg($upload->getMime()) || Sitengine_Mime_Type::isGif($upload->getMime()) || Sitengine_Mime_Type::isPng($upload->getMime())) { $this->_resizeSaveUploadedImage(self::FILE1THUMBNAIL_ID, $upload, $id); } $name = $this->makeFileName(self::FILE1ORIGINAL_ID, $id, Sitengine_Mime_Type::getSuffix($upload->getMime())); $this->_saveUploadedFile(self::FILE1ORIGINAL_ID, $upload, $name); } } catch (Exception $exception) { require_once 'Sitengine/Sitemap/Backend/Exception.php'; throw new Sitengine_Sitemap_Backend_Exception('handle insert upload error', $exception); } }
public function handleUpdateUploads($id, array $stored) { try { $upload = new Sitengine_Upload(self::AVATAR_ORIGINAL); $avatarDelete = isset($_POST[self::AVATAR_ORIGINAL . 'Delete']) && $_POST[self::AVATAR_ORIGINAL . 'Delete'] == 1; if ($avatarDelete || $upload->isFile()) { if ($stored[self::AVATAR_ORIGINAL . self::FILETAG_NAME]) { $this->_removeFile(self::AVATAR_ORIGINAL, $stored[self::AVATAR_ORIGINAL . self::FILETAG_NAME]); } if ($stored[self::AVATAR_THUMB . self::FILETAG_NAME]) { $this->_removeFile(self::AVATAR_THUMB, $stored[self::AVATAR_THUMB . self::FILETAG_NAME]); } } if ($upload->isFile()) { if (Sitengine_Mime_Type::isJpg($upload->getMime()) || Sitengine_Mime_Type::isGif($upload->getMime()) || Sitengine_Mime_Type::isPng($upload->getMime())) { $this->_resizeSaveUploadedImage(self::AVATAR_THUMB, $upload, $id); } $name = $this->makeFileName(self::AVATAR_ORIGINAL, $id, Sitengine_Mime_Type::getSuffix($upload->getMime())); $this->_saveUploadedFile(self::AVATAR_ORIGINAL, $upload, $name); } } catch (Exception $exception) { require_once 'Sitengine/Permiso/Exception.php'; throw new Sitengine_Permiso_Exception('handle insert upload error', $exception); } }
protected function _checkInput() { if ($this->_payloads->isMain()) { $name = 'titleLang' . $this->_controller->getRecord()->getTranscripts()->getDefaultIndex(); if (Sitengine_Validator::nada($this->_controller->getRequest()->getPost($name))) { $message = $this->_controller->getTranslate()->translate('hintsTitleRequired'); $this->_controller->getStatus()->addHint($name, $message); } $name = 'gid'; if ($this->_controller->getRequest()->getPost($name) == Sitengine_Blog_Frontend_Blogs_Posts_Files_Controller::VALUE_NONESELECTED) { $message = $this->_controller->getTranslate()->translate('hintsGidRequired'); $this->_controller->getStatus()->addHint($name, $message); } $fileId = 'file1Original'; $upload = new Sitengine_Upload($fileId); if ($upload->isFile()) { $type = $this->_controller->getEntity()->getAncestorType(); if ($type == Sitengine_Blog_Posts_Table::TYPE_GALLERY) { $typesPattern = '/(gif|jpg|jpeg|png)/i'; } else { $typesPattern = '/(gif|jpg|jpeg|png|pdf|mpeg|quicktime|msword|excel)/i'; } $messages = array(); if (!preg_match($typesPattern, $upload->getMime())) { $messages[] = $this->_controller->getTranslate()->translate('hintsFile1OriginalFiletype'); } if ($upload->getSize() > 1024 * 1024 * 15) { $messages[] = $this->_controller->getTranslate()->translate('hintsFile1OriginalFilesize'); } if (sizeof($messages)) { $this->_controller->getStatus()->addHint($fileId, $messages); } } } return !$this->_controller->getStatus()->hasHints(); }
protected function _checkInput() { $table = $this->_controller->getFrontController()->getProtoPackage()->getGoodiesTable(); $transcripts = $table->getTranscripts(); /* require_once 'Zend/Validate/StringLength.php'; $validator = new Zend_Validate_StringLength(4); $val = $this->_controller->getRequest()->getPost($name); $validator->setMessage( $this->_controller->getTranslate()->translate('hintsTest'), Zend_Validate_StringLength::TOO_SHORT ); if(!$validator->isValid($val)) { $this->_controller->getStatus()->addHint($name, $validator->getMessages(), $validator->getErrors()); Sitengine_Debug::print_r($this->_controller->getStatus()); } exit; */ if ($this->_payloads->isMain() || $this->_payloads->isDefaultTranscript()) { $name = 'titleLang' . $transcripts->getDefaultIndex(); if (Sitengine_Validator::nada($this->_controller->getRequest()->getPost($name))) { $message = $this->_controller->getTranslate()->translate('hintsTitleRequired'); $this->_controller->getStatus()->addHint($name, $message); } } if ($this->_payloads->isMain()) { $name = 'gid'; if ($this->_controller->getRequest()->getPost($name) == Sitengine_Proto_Backend_Goodies_Controller::VALUE_NONESELECTED) { $message = $this->_controller->getTranslate()->translate('hintsGidRequired'); $this->_controller->getStatus()->addHint($name, $message); } $name = 'type'; if (Sitengine_Validator::nada($this->_controller->getRequest()->getPost($name), Sitengine_Proto_Backend_Goodies_Controller::VALUE_NONESELECTED)) { $message = $this->_controller->getTranslate()->translate('hintsTypeRequired'); $this->_controller->getStatus()->addHint($name, $message); } $fileId = 'file1Original'; $upload = new Sitengine_Upload($fileId); if ($upload->isFile()) { /* $name = 'transColor'; $val = $this->_controller->getRequest()->getPost($name); if($val && !Sitengine_Validator::rgbColor($val)) { $message = $this->_controller->getTranslate()->translate('hintsTransColorInvalid'); $this->_controller->getStatus()->addHint($name, $messages); } */ $messages = array(); if (!preg_match('/(gif|jpg|jpeg|png|pdf|mpeg|quicktime|msword|excel)/i', $upload->getMime())) { $messages[] = $this->_controller->getTranslate()->translate('hintsFile1OriginalFiletype'); } if ($upload->getSize() > '1048576') { # 1M $messages[] = $this->_controller->getTranslate()->translate('hintsFile1OriginalFilesize'); } if (sizeof($messages)) { $this->_controller->getStatus()->addHint($fileId, $messages); } } } return !$this->_controller->getStatus()->hasHints(); }
protected function _saveUploadedFile($fileId, Sitengine_Upload $upload, $name) { try { $width = 0; $height = 0; if (Sitengine_Mime_Type::isImage($upload->getMime())) { $info = getimagesize($upload->getTempName()); if (!$info) { $this->_rollback(); throw new Sitengine_Exception('uploaded file is not an image'); } $width = $info[0]; $height = $info[1]; } $data = array('name' => $name, 'source' => $upload->getName(), 'mime' => $upload->getMime(), 'size' => $upload->getSize(), 'width' => $width, 'height' => $height); $upload->save($this->_configs[$fileId]['dir'] . '/' . $name); chmod($this->_configs[$fileId]['dir'] . '/' . $name, $this->_configs[$fileId]['mode']); $this->_newFiles[$fileId] = $name; $this->_files[$fileId] = $data; } catch (Exception $exception) { $this->_rollback(); throw new Sitengine_Exception('save uploaded file failed', $exception); } }
protected function _checkUpload($required = false) { $name = 'file1Original'; $upload = new Sitengine_Upload($name); if ($required && !$upload->isFile()) { $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($name) . 'Required'); $this->_controller->getStatus()->addHint($name, $message); return null; } else { if ($upload->isFile()) { $n = 'transColor'; $v = $this->_controller->getRequest()->getPost($n); if ($v && !Sitengine_Validator::rgbColor($v)) { $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($n) . 'Invalid'); $this->_controller->getStatus()->addHint($n, $message); } #print $upload->getMime(); if (!preg_match($this->_allowedTypes, $upload->getMime())) { $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($name) . 'Filetype'); $this->_controller->getStatus()->addHint($name, $message); } if ($upload->getSize() > $this->_maxSize) { $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($name) . 'Filesize'); $this->_controller->getStatus()->addHint($name, $message); } } } }
public function handleUpdateUploads($id, array $stored) { try { $upload = new Sitengine_Upload(self::FILE1ORIGINAL_ID); if ($upload->isFile()) { require_once 'Sitengine/Mime/Type.php'; $suffix = Sitengine_Mime_Type::getSuffix($upload->getMime()); $file1OriginalName = $this->makeFileName(self::FILE1ORIGINAL_ID, $id, $suffix); if ($stored[self::FILE1ORIGINAL_ID . 'Name'] != $file1OriginalName) { if ($stored[self::FILE1ORIGINAL_ID . 'Name']) { $this->_removeFile(self::FILE1ORIGINAL_ID, $stored[self::FILE1ORIGINAL_ID . self::FILETAG_NAME]); } } $this->_saveUploadedFile(self::FILE1ORIGINAL_ID, $upload, $file1OriginalName); } } catch (Exception $exception) { $this->_rollback(); require_once 'Sitengine/Newsletter/Exception.php'; throw new Sitengine_Newsletter_Exception('handle update upload error', $exception); } }
public function handleUpdateUploads($id, array $stored) { try { $upload = new Sitengine_Upload(self::FILE1ORIGINAL_ID); if ($upload->isFile()) { $suffix = Sitengine_Mime_Type::getSuffix($upload->getMime()); $file1OriginalName = $this->makeFileName(self::FILE1ORIGINAL_ID, $id, $suffix); if ($stored[self::FILE1ORIGINAL_ID . 'Name'] != $file1OriginalName) { if ($stored[self::FILE1ORIGINAL_ID . 'Name']) { $this->_removeFile(self::FILE1ORIGINAL_ID, $stored[self::FILE1ORIGINAL_ID . self::FILETAG_NAME]); } if ($stored[self::FILE1THUMBNAIL_ID . 'Name']) { $this->_removeFile(self::FILE1THUMBNAIL_ID, $stored[self::FILE1THUMBNAIL_ID . self::FILETAG_NAME]); } } if (Sitengine_Mime_Type::isJpg($upload->getMime()) || Sitengine_Mime_Type::isGif($upload->getMime()) || Sitengine_Mime_Type::isPng($upload->getMime())) { $this->_resizeSaveUploadedImage(self::FILE1THUMBNAIL_ID, $upload, $id); } $this->_saveUploadedFile(self::FILE1ORIGINAL_ID, $upload, $file1OriginalName); } } catch (Exception $exception) { $this->_rollback(); require_once 'Sitengine/Blog/Exception.php'; throw new Sitengine_Blog_Exception('handle update upload error', $exception); } }
public function handleUpdateUploads($id, array $stored) { try { # upload 1 $upload = new Sitengine_Upload(self::FILE1ORIGINAL_ID); $file1Delete = isset($_POST[self::FILE1ORIGINAL_ID . 'Delete']) && $_POST[self::FILE1ORIGINAL_ID . 'Delete'] == 1; if ($file1Delete || $upload->isFile()) { if ($stored[self::FILE1ORIGINAL_ID . self::FILETAG_NAME]) { $this->_removeFile(self::FILE1ORIGINAL_ID, $stored[self::FILE1ORIGINAL_ID . self::FILETAG_NAME]); } if ($stored[self::FILE1THUMBNAIL_ID . self::FILETAG_NAME]) { $this->_removeFile(self::FILE1THUMBNAIL_ID, $stored[self::FILE1THUMBNAIL_ID . self::FILETAG_NAME]); } if ($stored[self::FILE1FITTED_ID . self::FILETAG_NAME]) { $this->_removeFile(self::FILE1FITTED_ID, $stored[self::FILE1FITTED_ID . self::FILETAG_NAME]); } } if ($upload->isFile()) { if (Sitengine_Mime_Type::isJpg($upload->getMime()) || Sitengine_Mime_Type::isGif($upload->getMime()) || Sitengine_Mime_Type::isPng($upload->getMime())) { $this->_resizeSaveUploadedImage(self::FILE1THUMBNAIL_ID, $upload, $id); $this->_resizeSaveUploadedImage(self::FILE1FITTED_ID, $upload, $id); } $name = $this->makeFileName(self::FILE1ORIGINAL_ID, $id, Sitengine_Mime_Type::getSuffix($upload->getMime())); $this->_saveUploadedFile(self::FILE1ORIGINAL_ID, $upload, $name); } # upload 2 $upload = new Sitengine_Upload(self::FILE2ORIGINAL_ID); $file2Delete = isset($_POST[self::FILE2ORIGINAL_ID . 'Delete']) && $_POST[self::FILE2ORIGINAL_ID . 'Delete'] == 1; if ($file2Delete || $upload->isFile()) { if ($stored[self::FILE2ORIGINAL_ID . self::FILETAG_NAME]) { $this->_removeFile(self::FILE2ORIGINAL_ID, $stored[self::FILE2ORIGINAL_ID . self::FILETAG_NAME]); } if ($stored[self::FILE2THUMBNAIL_ID . self::FILETAG_NAME]) { $this->_removeFile(self::FILE2THUMBNAIL_ID, $stored[self::FILE2THUMBNAIL_ID . self::FILETAG_NAME]); } if ($stored[self::FILE2FITTED_ID . self::FILETAG_NAME]) { $this->_removeFile(self::FILE2FITTED_ID, $stored[self::FILE2FITTED_ID . self::FILETAG_NAME]); } } if ($upload->isFile()) { if (Sitengine_Mime_Type::isJpg($upload->getMime()) || Sitengine_Mime_Type::isGif($upload->getMime()) || Sitengine_Mime_Type::isPng($upload->getMime())) { $this->_resizeSaveUploadedImage(self::FILE2THUMBNAIL_ID, $upload, $id); $this->_resizeSaveUploadedImage(self::FILE2FITTED_ID, $upload, $id); } $name = $this->makeFileName(self::FILE2ORIGINAL_ID, $id, Sitengine_Mime_Type::getSuffix($upload->getMime())); $this->_saveUploadedFile(self::FILE2ORIGINAL_ID, $upload, $name); } } catch (Exception $exception) { require_once 'Sitengine/Proto/Exception.php'; throw new Sitengine_Proto_Exception('handle insert upload error', $exception); } }
protected function _insertAudioPost($blogId) { try { $this->_payloads->start(); $input = $this->_controller->getRequest()->getPost(null); $fields = $this->_getAudioPostFields(); $id = Sitengine_String::createId(); $data = array(); $name = 'file1Original'; $upload = new Sitengine_Upload($name); if (!$upload->isFile()) { $message = $this->_controller->getTranslate()->translate('audioposthintsFile1OriginalRequired'); $this->_controller->getStatus()->addHint($name, $message); return null; } if (!$this->_checkAudioPostInput()) { return null; } $this->_controller->getRecord()->handleInsertUploads($id); foreach ($fields[self::FIELDS_ONOFF] as $k => $v) { $data[$k] = array_key_exists($k, $input) ? 1 : 0; } foreach ($fields[self::FIELDS_NORMAL] as $k => $v) { $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v; } $date = new Zend_Date(); $date->setTimezone('UTC'); $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN); $data['mdate'] = $data['cdate']; $data['id'] = $id; $data['blogId'] = $blogId; $data['type'] = Sitengine_Blog_Posts_Table::TYPE_AUDIO; #$data[Sitengine_Permiso::FIELD_OID] = $this->_controller->getPermiso()->getOrganization()->getId(); $data = array_merge($data, $this->_controller->getRecord()->getFileData()); #Sitengine_Debug::print_r($data); $affectedRows = $this->_controller->getRecord()->insert($data); if (!$affectedRows) { $error = $this->_controller->getRecord()->getError(); if ($error === null) { return null; } $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error)); $this->_controller->getStatus()->addHint('record', $message); return null; } return $data; } catch (Exception $exception) { require_once 'Sitengine/Blog/Frontend/Blogs/Posts/Exception.php'; throw new Sitengine_Blog_Frontend_Blogs_Posts_Exception('insert error', $exception); } }
protected function _saveUploadedFile($fileId, Sitengine_Upload $upload, $name) { try { require_once 'Sitengine/Mime/Type.php'; $width = 0; $height = 0; $mime = $upload->getMime(); if ($mime == 'application/octet-stream') { #if(preg_match('/.*\.(gif|jpg|jpeg|png|mp3|pdf|wav|doc|xls|zip|aif|tif|css|sit|tar)$/i', $name)) #{ # try to fix mimetype if file is being uploaded through a flash app require_once 'Sitengine/Mime/Type.php'; $mime = Sitengine_Mime_Type::get($name); #} } if (Sitengine_Mime_Type::isImage($mime)) { $info = getimagesize($upload->getTempName()); if (!$info) { require_once 'Sitengine/Exception.php'; throw new Sitengine_Exception('uploaded file is not an image'); } $width = $info[0]; $height = $info[1]; } $data = array('name' => $name, 'source' => $upload->getName(), 'mime' => $mime, 'size' => $upload->getSize(), 'width' => $width, 'height' => $height); #$key = $this->_configs[$fileId]['prefix'].'/'.$name; #$object = $this->_configs[$fileId]['object']; require_once 'Sitengine/Amazon/S3/Object.php'; $object = new Sitengine_Amazon_S3_Object($this->_configs[$fileId]['connection'], $this->_configs[$fileId]['bucket'], $this->_configs[$fileId]['prefix'] . '/' . $name, $this->_configs[$fileId]['cname'], $this->_configs[$fileId]['ssl']); $amzHeaders = $this->_configs[$fileId]['amzHeaders']; $response = $object->put($upload->getTempName(), array(), $amzHeaders); if ($response->getHttpResponse()->isError()) { require_once 'Sitengine/Exception.php'; throw new Sitengine_Exception('file could not be uploaded to s3'); } $this->_newFiles[$fileId] = $name; $this->_files[$fileId] = $data; } catch (Exception $exception) { $this->_rollback(); throw $exception; } }
protected function _checkInput() { $name = 'title'; if (Sitengine_Validator::nada($this->_controller->getRequest()->getPost($name))) { $message = $this->_controller->getTranslate()->translate('hintsTitleRequired'); $this->_controller->getStatus()->addHint($name, $message); } $fileId = 'file1Original'; $upload = new Sitengine_Upload($fileId); if ($upload->isFile()) { $messages = array(); if (!preg_match('/(gif|jpg|jpeg|png|pdf|mpeg|mpg|quicktime|msword|excel)/i', $upload->getMime())) { $messages[] = $this->_controller->getTranslate()->translate('hintsFile1OriginalFiletype'); } if ($upload->getSize() > 1024 * 1024 * 5) { $messages[] = $this->_controller->getTranslate()->translate('hintsFile1OriginalFilesize'); } if (sizeof($messages)) { $this->_controller->getStatus()->addHint($fileId, $messages); } } return !$this->_controller->getStatus()->hasHints(); }