public function createFromUpload ($filename = FALSE, $newX = FALSE, $newY = FALSE, $method = self::RESIZE_MAX, $proportional = FALSE, $replace = FALSE)
	{
		
		// If there is no absolute path
		
		if (!$this->path)
		{
			new \Sonic\Message ('error', 'No absolute path set!');
			return FALSE;
		}
		
		// Load image
		
		if (!($objImage = self::_Load ($this->tmpPath ())))
		{
			return FALSE;
		}
		
		// If a new image width and height hae been passed rezize image
		
		if ($newX !== FALSE && $newY !== FALSE)
		{
			$objImage	= self::_Resize ($objImage, $newX, $newY, $method, $proportional);
		}
		
		// If there is no new filename set to the old one
		
		if (!$filename)
		{
			$filename	= $this->getFilename ();
		}
		
		// Save image
		
		if (!self::_Save ($objImage, $this->getPath () . $filename, $replace))
		{
			new \Sonic\Message ('error', 'Could not save image: ' . $filename);
			return FALSE;
		}
		
		// Destroy image
		
		imagedestroy ($objImage);
		
		// Return TRUE
		
		return TRUE;
		
	}