<?

class Upload
{
	var $arquivo = "";
	var $erro = array ( "0" => "Denuncia feita com sucesso!",
                        "1" => "O arquivo é maior que o permitido!",
                        "2" => "O arquivo é maior que o permitido!",
                        "3" => "A denuncia foi feita parcialmente tente denovo!",     
					    "4" => "Não foi feito a denuncia, por favor tente novamente!"
	                   );
		
	function Verificar_Upload()
	{
		$this->arquivo = isset($_FILES['arquivo']) ? $_FILES['arquivo'] : FALSE;
		return is_uploaded_file($this->arquivo['tmp_name']) ? true : false;		
	}

	function Envia_Arquivo()
	{
		if($this->Verificar_Upload() == 1)
		{
			set_time_limit(0); 
			$diretorio = "DenUser/";
			if(!file_exists($diretorio))
			{
				mkdir($diretorio);
			}	
			
			while ( file_exists ( $diretorio.$this->arquivo['name'] )) 
			{
				$this->arquivo['name'] = preg_replace ( "/^(.+?)(_?)(\d*)(\.[^.]+)?$/e", "'\$1_'.(\$3+1).'\$4'", $this->arquivo['name']);
			}
			$pasta = $diretorio . $this->arquivo['name'];
			if($this->Checa_imagem($this->arquivo['tmp_name']) == 1)
			{
				move_uploaded_file($this->arquivo['tmp_name'], $pasta);
				echo "<span style=\"color: white; border: solid 1px; background: blue;\">".$this->erro[$this->arquivo['error']]."</span>";
			}	
			
		}
		elseif( isset($this->arquivo['tmp_name']) )
		{
			echo "<span style=\"color: white; border: solid 1px ; background: red;\">".$this->erro[$this->arquivo['error']]."</span>";
		}
	}
	
	function Checa_Imagem($img)
	{
		$get = getimagesize($img);
		if($get["mime"] == false)
		{	
			echo "<span style=\"color: white; border: solid 1px ; background: red;\">Esse arquivo não é uma imagem!</span>";
			return false;
		}		
		return true;
	}
}

?>