Hacked By AnonymousFox

Current Path : /home/missmand/public_html/learning/lib/class/
Upload File :
Current File : /home/missmand/public_html/learning/lib/class/Upload.class.php

<?php

	class Upload{

		/* Verifier l'extention d'un fichier */
		public static function verifExt($nom, $fichier, $extTrue){

			global $erreur;

			$ext = strtolower(pathinfo($fichier, PATHINFO_EXTENSION));
			if(!in_array($ext,$extTrue)){
				array_push($erreur,$nom.verifExtErreur);	
			}
			
		}	

		/* Restriction de la taille de l'image à une taille minimum */
		public static function tailleMini ($nom, $tmp, $x, $y){
			
			global $erreur;

			$taille = getimagesize($tmp);
			$width = $taille[0];
			$height = $taille[1];
			if( ($height < $y) || ($width < $x) ){
				array_push($erreur,$nom.tailleMiniErreur1.$x.tailleMiniErreur2.$y.tailleMiniErreur3);
			}
				
		}

		/* Restriction de la taille de l'image à une taille maximum */
		public static function tailleMax ($nom, $tmp, $x, $y){
			
			global $erreur;

			$taille = getimagesize($tmp);
			$width = $taille[0];
			$height = $taille[1];
			if( ($height > $y) || ($width > $x) ){
				array_push($erreur,$nom.tailleMaxiErreur1.$x.tailleMaxiErreur2.$y.tailleMaxiErreur3);
			}
				
		}

		/* Restriction de la taille de l'image à une taille  égale */
		public static function tailleEgale ($nom, $tmp, $x, $y){
			
			global $erreur;

			$taille = getimagesize($tmp);
			$width = $taille[0];
			$height = $taille[1];
			if( ($height != $y) || ($width != $x) ){
				array_push($erreur,$nom.tailleEgaleErreur1.$x.tailleEgaleErreur2.$y.tailleEgaleErreur3);
			}
				
		}

		/* Verification du poid de l'image */
		public static function maxPoid ($nom, $fichier, $poid){
		
			global $erreur;
			if($fichier > $poid){
				$erreurPoid = ($poid / 1000000);
				array_push($erreur,$nom.maxPoidErreur1.$erreurPoid.maxPoidErreur2);
			}
			
		}

		/* Upload d'un fichier */
		// Arg 1 : Le fichier 'array'
		// Arg 2 : Le nom 'string'
		// Arg 3 : Le poid maximum 'int'
		// Arg 4 : Les extensions autorisées 'array' 
		// Arg 5 : la taille 'array'
		public static function postFichier($fichier, $nom, $poid, $ext, $taille = array()){

			self::maxPoid($nom, $fichier['tmp_name'], $poid);
			self::verifExt($nom, $fichier['name'], $ext);

			if(!empty($taille)){

				switch ($taille[0]) {
					case "eg":
						self::tailleEgale($nom, $fichier['tmp_name'], $taille[1],$taille[2]);
					break;
					case "ma":
						self::tailleMax($nom, $fichier['tmp_name'], $taille[1],$taille[2]);
					break;
					case "mi":
						self::tailleMini($nom, $fichier['tmp_name'], $taille[1],$taille[2]);
					break;
				}

			}

			return time().'.'.strtolower(pathinfo($fichier['name'], PATHINFO_EXTENSION));

		}

		/* Création d'une miniature Jpg, jpeg */
		public static function miniatureJpg ($ratio, $tmp, $ext, $dossier){
			
			$time = time();
			
			$taille = getimagesize($tmp);
			$width = $taille[0];
			$height = $taille[1];
			
			// 16/9
			if($taille[0] > $taille[1]) {
				$largeur = round(($ratio/$taille[1])*$taille[0]);
				$hauteur = $ratio;
			}
			
			// 4/3
			if ($taille[0] == $taille[1]){
				$largeur = $ratio;
				$hauteur = $ratio;
			}
			

			$fichierSource = imagecreatefromjpeg($tmp);
			$img_ressource = imagecreatetruecolor($largeur,$hauteur);
			imagecopyresampled($img_ressource,$fichierSource,0,0,0,0,$largeur,$hauteur,$width,$height);
			imagejpeg($img_ressource, $dossier.$time.'.'.$ext);
			
		}

		/* Création d'une miniature png */
		public static function miniaturePng ($ratio, $tmp, $ext, $dossier){
			
			$time = time();
			
			$taille = getimagesize($tmp);
			$width = $taille[0];
			$height = $taille[1];
			
			// 16/9
			if($taille[0] > $taille[1]) {
				$largeur = round(($ratio/$taille[1])*$taille[0]);
				$hauteur = $ratio;
			}
			
			// 4/3
			if ($taille[0] == $taille[1]){
				$largeur = $ratio;
				$hauteur = $ratio;
			}
			
			$fichierSource = imagecreatefrompng($tmp);
			$img_ressource = imagecreatetruecolor($largeur,$hauteur);
			imagealphablending($img_ressource,false);
			imagesavealpha($img_ressource,true);
			imagecopyresampled($img_ressource,$fichierSource,0,0,0,0,$largeur,$hauteur,$width,$height);
			imagepng($img_ressource, $dossier.$time.'.'.$ext);
			
		}

		/* Croper une image au format jpg, jpeg */
		public static function cropJpg ($tmp, $w, $h, $x1, $y1, $x2, $y2, $dossier){
			
			$time = time();
			$ext = pathinfo($tmp, PATHINFO_EXTENSION);

			$image = $time.'.'.strtolower($ext);
			
			$taille = getimagesize($tmp);
			$width = $taille[0];
			$height = $taille[1];

			if($width > 600){			

				$ratio = 600/$width;
				
				$w=($x2-$x1)/$ratio;
				$h=($y2-$y1)/$ratio;
				
				$x1=$x1/$ratio;
				$y1=$y1/$ratio;

			}
			
			$nouvelle = imagecreatetruecolor($w,$h);
			$source = imagecreatefromjpeg($tmp);
			imagecopyresampled($nouvelle,$source,0,0,$x1,$y1,$width,$height,$width,$height);
			imagejpeg($nouvelle, $dossier.$image,60);

			return $image;
			
		}


		/* Croper une image au format png */
		public static function cropPng ($tmp, $w, $h, $x1, $y1, $x2, $y2, $dossier){
			
			$time = time();
			$ext = pathinfo($tmp, PATHINFO_EXTENSION);
			
			$image = $time.'.'.strtolower($ext);

			$taille = getimagesize($tmp);
			$width = $taille[0];
			$height = $taille[1];

			if($width > 600){
				
				$ratio = 600/$width;
				
				$w=($x2-$x1)/$ratio;
				$h=($y2-$y1)/$ratio;
				
				$x1=$x1/$ratio;
				$y1=$y1/$ratio;

			}
			
			$nouvelle = imagecreatetruecolor($w,$h);
			$source = imagecreatefrompng($tmp);		
			imagealphablending($nouvelle,false);
			imagesavealpha($nouvelle,true);
			imagecopyresampled($nouvelle,$source,0,0,$x1,$y1,$width,$height,$width,$height);
			imagepng($nouvelle, $dossier.$image,6);

			return $image;
			
		}

	}

?>

Hacked By AnonymousFox1.0, Coded By AnonymousFox