mirror of
				https://github.com/pierre42100/ComunicAPI
				synced 2025-11-04 12:14:12 +00:00 
			
		
		
		
	Created account image class
This commit is contained in:
		@@ -5,21 +5,102 @@
 | 
			
		||||
 * @author Pierre HUBERT
 | 
			
		||||
 */
 | 
			
		||||
class accountImage{
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * @var String $accountImageURL URL path pointing on image accounts
 | 
			
		||||
	 */
 | 
			
		||||
	private $accountImageURL;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * @var String $accountImagePath URL path pointing on image accounts
 | 
			
		||||
	 */
 | 
			
		||||
	private $accountImagePath;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * @var String $defaultAccountImage name of the default account image
 | 
			
		||||
	 */
 | 
			
		||||
	private $defaultAccountImage = "0Reverse.png";
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * @var String $defaultAccountImage name of the error account image
 | 
			
		||||
	 */
 | 
			
		||||
	private $errorAccountImage = "0Red.png";
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Public constructor
 | 
			
		||||
	 */
 | 
			
		||||
	public function __construct(){
 | 
			
		||||
		//Nothing now
 | 
			
		||||
		//Set values
 | 
			
		||||
		$this->accountImageURL = path_user_data(CS::get()->config->get("imageAccountPath"), false);
 | 
			
		||||
		$this->accountImagePath = path_user_data(CS::get()->config->get("imageAccountPath"), true);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Returns the path of an account image
 | 
			
		||||
	 *
 | 
			
		||||
	 * @param Integer $userID The ID of the user on which we perform research
 | 
			
		||||
	 * @return String The URL pointing on the avatar
 | 
			
		||||
	 * @return String The URL pointing on the account image
 | 
			
		||||
	 */
 | 
			
		||||
	public function getPath($userID){
 | 
			
		||||
		return path_account_image("0Reverse.png");
 | 
			
		||||
		//First, check if the account image exists
 | 
			
		||||
		$accountImageFileName = $this->accountImagePath."adresse_avatars/".$userID.".txt";
 | 
			
		||||
		if(file_exists($accountImageFileName)){
 | 
			
		||||
 | 
			
		||||
			//Get account image path
 | 
			
		||||
			$accountImageFile = $this->accountImageURL.file_get_contents($accountImageFileName);
 | 
			
		||||
 | 
			
		||||
			//Get account image visibility level
 | 
			
		||||
			$visibilityLevel = $this->visibilityLevel($userID);
 | 
			
		||||
 | 
			
		||||
			//If account image is open
 | 
			
		||||
			if($visibilityLevel == 3)
 | 
			
		||||
				//Account image is OPEN
 | 
			
		||||
				return $accountImageFile;
 | 
			
		||||
			
 | 
			
		||||
			//If the user just requires user to be in
 | 
			
		||||
			if($visibilityLevel == 2){
 | 
			
		||||
				if(userID != 0)
 | 
			
		||||
					return $accountImageFile;
 | 
			
		||||
				else
 | 
			
		||||
					return $this->accountImageURL.$this->errorAccountImage;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			//Else users must be friends
 | 
			
		||||
			if($visibilityLevel == 1){
 | 
			
		||||
				//Level not implemented yet
 | 
			
		||||
				return $this->accountImageURL.$this->errorAccountImage;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		else
 | 
			
		||||
			//Return default account image
 | 
			
		||||
			return $this->accountImageURL.$this->defaultAccountImage;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Get visibilty level of the account image
 | 
			
		||||
	 *
 | 
			
		||||
	 * 1. The user and his friend ONLY
 | 
			
		||||
	 * 2. User, friends, and logged in users
 | 
			
		||||
	 * 3. Everybody
 | 
			
		||||
	 *
 | 
			
		||||
	 * @param Integer $userID The ID of the user on which we perform researchs
 | 
			
		||||
	 * @return Integer The visibility level of the account image
 | 
			
		||||
	 */
 | 
			
		||||
	private function visibilityLevel($userID){
 | 
			
		||||
		$filePath = $this->accountImagePath."adresse_avatars/limit_view_".$userID.".txt";
 | 
			
		||||
		
 | 
			
		||||
		//Check restriction file
 | 
			
		||||
		if(!file_exists($filePath))
 | 
			
		||||
			return 3; //Everybody by default
 | 
			
		||||
		
 | 
			
		||||
		//Check for personnalized level
 | 
			
		||||
		$fileContent = file_get_contents($filePath);
 | 
			
		||||
		if($fileContent == 1 || $fileContent == 2){
 | 
			
		||||
			//Return new visibility level
 | 
			
		||||
			return $fileContent*1;
 | 
			
		||||
		}
 | 
			
		||||
		else
 | 
			
		||||
			return 3; //Everybody by default
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -23,7 +23,7 @@ $config->set("storage_url", "http://devweb.local/comunic/current/user_data/");
 | 
			
		||||
 *
 | 
			
		||||
 * The path (on the server) pointing of the user_data folder
 | 
			
		||||
 */
 | 
			
		||||
$config->set("storage_path", "/home/pierre/Documents/projets_web/comunic/current/user_data");
 | 
			
		||||
$config->set("storage_path", "/home/pierre/Documents/projets_web/comunic/current/user_data/");
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Database credentials
 | 
			
		||||
 
 | 
			
		||||
@@ -17,15 +17,4 @@ function path_user_data($fileURI = "", $systemPath = false){
 | 
			
		||||
		return CS::get()->config->get("storage_url").$fileURI;
 | 
			
		||||
	else
 | 
			
		||||
		return CS::get()->config->get("storage_path").$fileURI;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Get and return the URL path to a specified account image
 | 
			
		||||
 *
 | 
			
		||||
 * @param String $imageURI Optionnal, defines URI of the image
 | 
			
		||||
 * @param Boolean $systemPath Optionnal, defines if system path is required instead of URL
 | 
			
		||||
 * @return String The full URL to the image account file
 | 
			
		||||
 */
 | 
			
		||||
function path_account_image($imageURI="", $systemPath = false){
 | 
			
		||||
	return path_user_data(CS::get()->config->get("imageAccountPath").$imageURI, $systemPath);
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										10
									
								
								init.php
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								init.php
									
									
									
									
									
								
							@@ -13,11 +13,6 @@ foreach(glob(PROJECT_PATH."classes/*.php") as $classFile){
 | 
			
		||||
    require_once $classFile;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//Include components
 | 
			
		||||
foreach(glob(PROJECT_PATH."classes/components/*.php") as $classFile){
 | 
			
		||||
    require_once $classFile;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//Include functions
 | 
			
		||||
foreach(glob(PROJECT_PATH."functions/*.php") as $funcFile){
 | 
			
		||||
    require_once $funcFile;
 | 
			
		||||
@@ -60,6 +55,11 @@ $user = new User();
 | 
			
		||||
$cs->register("user", $user);
 | 
			
		||||
unset($user);
 | 
			
		||||
 | 
			
		||||
//Include components
 | 
			
		||||
foreach(glob(PROJECT_PATH."classes/components/*.php") as $classFile){
 | 
			
		||||
    require_once $classFile;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//Add components object
 | 
			
		||||
$components = new Components();
 | 
			
		||||
$cs->register("components", $components);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user