public function getImageWithSize($width, $height) { if ($this->image && file_exists(Yii::app()->params['imagePath'] . $this->image)) { $_image = ImageTool::resize($this->image, $width, $height); } else { $_image = ImageTool::resize('no_image.jpg', $width, $height); } return $_image; }
public function getImageWithSize($width = 0, $height = 0) { if ($width === 0 || $height === 0) { return Yii::app()->getBaseUrl() . DIRECTORY_SEPARATOR . 'image' . DIRECTORY_SEPARATOR . $this->image; } if ($this->image && file_exists(Yii::app()->params['imagePath'] . $this->image)) { $_image = ImageTool::resize($this->image, $width, $height); } else { $_image = ImageTool::resize('no_image.jpg', $width, $height); } return $_image; }
public function actionImage($image) { $imageTool = new ImageTool(); echo $imageTool->resize(html_entity_decode($image, ENT_QUOTES, 'UTF-8'), 100, 100); }
public function admin_perfil($id) { if ($id != $this->Auth->user('id')) { $this->Session->setFlash('No esta autorizado', 'flash/error'); $this->redirect(array('controller' => 'pages', 'action' => 'display', 'home', 'admin' => true)); } $this->Usuario->id = $id; if (!$this->Usuario->exists($id)) { throw new NotFoundException(__('Invalid usuarios table')); } if ($this->request->is('post') || $this->request->is('put')) { App::import('Vendor', 'ImageTool'); // unset ( $this->request->data ['Usuario'] ['nombre_completo'] ); unset($this->request->data['Usuario']['usuario_login']); unset($this->request->data['Usuario']['borrado']); unset($this->request->data['Usuario']['id_anterior']); unset($this->request->data['Grupo']); if (empty($this->request->data['Usuario']['constrasenia'])) { unset($this->request->data['Usuario']['constrasenia']); } $foto = false; $e = false; if ($this->request->data['Usuario']['imagen']['name'] != '') { $foto = true; // ERRORES $error[0] = "El archivo debe estar en formato JPG."; $error[1] = "La imagen no puede sobrepasar los 2 MB."; $error[2] = "La imagen no pudo ser subida correctamente."; // variables $filename = trim($this->data['Usuario']["imagen"]['name']); $tamano_archivo = $this->data['Usuario']["imagen"]['size']; $tmp_name = $this->data['Usuario']["imagen"]['tmp_name']; // SI EL ARCHIVO NO ES JPG $palabra = preg_quote('.jpg'); if (!eregi($palabra, $filename)) { $this->Session->setFlash($error[0], 'flash/error'); $e = true; } // COMPRUEBA QUE EL JPG SEA MENOR DE 2 MB... if ($tamano_archivo > 2048000) { $this->Session->setFlash($error[1], 'flash/error'); $e = true; } } if ($e == false) { if ($this->Usuario->save($this->request->data)) { // Cargo de nuevo el usuario porque sino tengo campos con unset $options = array('conditions' => array('Usuario.' . $this->Usuario->primaryKey => $id)); $this->request->data = $this->Usuario->find('first', $options); if ($foto == true) { $usuario_id = $this->Auth->user('id'); // Recupero la ID del animal $uploaddir = "perfiles/"; // Directorio para guardar la imagen del animal $filename = $usuario_id . "_" . md5($usuario_id) . ".jpg"; $uploadfile = $uploaddir . $filename; // Direccion del archivo subido $status = ImageTool::resize(array('input' => $tmp_name, 'output' => $uploadfile, 'width' => 50, 'height' => 50, 'quality' => 50)); // SI SE SUBE EL ARCHIVO if ($status) { // Si se sube correctamente devuelve verdadero chmod($uploadfile, 0644); $this->Session->setFlash(__('El registro fue guardado correctamente.'), 'flash/success'); // $this->redirect(array('action' => 'index')); } else { // SI HAY ALGUN ERROR BORRO EL ARCHIVO @unlink($uploadfile); $this->Session->setFlash(__('No se pudo editar el registro. Por favor, vuelva a intentarlo.'), 'flash/error'); // $this->redirect(array('action' => 'index')); } } else { $this->Session->setFlash(__('El registro fue guardado correctamente.'), 'flash/success'); // $this->redirect(array('action' => 'index')); } } else { $this->Session->setFlash(__('No se pudo editar el registro. Por favor, vuelva a intentarlo.'), 'flash/error'); } } } else { $options = array('conditions' => array('Usuario.' . $this->Usuario->primaryKey => $id)); $this->request->data = $this->Usuario->find('first', $options); } }