コード例 #1
0
 /**
  * Cria
  */
 public function createAction()
 {
     // Só cria se a requisição for POST
     if (isset($_POST)) {
         // Adiciona as informações do arquivo na requisição
         $name = $_FILES['image']['name']['file'];
         $type = $_FILES['image']['type']['file'];
         $tmp_name = $_FILES['image']['tmp_name']['file'];
         $error = $_FILES['image']['error']['file'];
         $size = $_FILES['image']['size']['file'];
         $_REQUEST['image']['file_name'] = $name;
         $_REQUEST['image']['file_content_type'] = $type;
         $_REQUEST['image']['file_size'] = $size;
         // Nova imagem
         $image = new Image($_REQUEST['image']);
         // Verifica se tem erros de validação
         if ($image->isValidWithTmpName($tmp_name)) {
             // Salva
             $image->save();
             // Faz o upload da imagem
             $imageManager = new ImageManager($image);
             $imageManager->setName($name);
             $imageManager->setType($type);
             $imageManager->setTmpName($tmp_name);
             $imageManager->setError($error);
             $imageManager->setSize($size);
             $imageManager->upload();
             // Cria a variável flash
             $this->setFlash('notice_success', 'Image created successfully.');
             // Redireciona para fazer o crop da imagem
             $this->redirectTo('image', 'list');
         } else {
             // Obteḿ os erros de validação
             $this->errors = $image->getErrors();
         }
         // Passa as variáveis para a view
         $this->image = $image;
     } else {
         // Cria a variável flash
         $this->setFlash('notice_error', 'Create image failed.');
         // Redireciona para a listagem
         $this->redirecTo('image', 'list');
     }
 }