NOUVELLE VERSION !!! Des nouvelles classes de partout, et des supers procédures SQL.
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
class Langage{
|
||||
|
||||
//FIXME const
|
||||
public static $java;
|
||||
public static $vba;
|
||||
|
||||
public static $languages = array();
|
||||
|
||||
protected $ID;
|
||||
protected $name;
|
||||
protected $avalivableFiles;//String "jar xlsx javadoc" in constructor , stored as a string array
|
||||
|
||||
|
||||
public function __construct($ID,$name,$avalivableFiles){
|
||||
$this->ID = $ID;
|
||||
$this->name = $name;
|
||||
$this->avalivableFiles = explode(" ",$avalivableFiles);
|
||||
Langage::$languages[] = $this;
|
||||
}
|
||||
|
||||
public function getID(){
|
||||
return $this->ID;
|
||||
}
|
||||
public function getName(){
|
||||
return $this->name;
|
||||
}
|
||||
public function getAvalivableFiles(){
|
||||
return $this->avalivableFiles;
|
||||
}
|
||||
public function isJarAvalivable(){
|
||||
return in_array("jar",$this->avalivableFiles);
|
||||
}
|
||||
public function isJavaAvalivable(){
|
||||
return in_array("java",$this->avalivableFiles);
|
||||
}
|
||||
public function isJavadocAvalivable(){
|
||||
return in_array("javadoc",$this->avalivableFiles);
|
||||
}
|
||||
public function isXlsmAvalivable(){
|
||||
return in_array("xlsm",$this->avalivableFiles);
|
||||
}
|
||||
public function isVbAvalivable(){
|
||||
return in_array("vb",$this->avalivableFiles);
|
||||
}
|
||||
|
||||
public function isJarAccessible($fileAccessibility){
|
||||
return $this->isJarAvalivable() AND ($fileAccessibility >> array_search("jar",$this->avalivableFiles)) % 2 === 1;
|
||||
}
|
||||
public function isJavaAccessible($fileAccessibility){
|
||||
return $this->isJavaAvalivable() AND ($fileAccessibility >> array_search("java",$this->avalivableFiles)) % 2 === 1;
|
||||
}
|
||||
public function isJavadocAccessible($fileAccessibility){
|
||||
return $this->isJavadocAvalivable() AND ($fileAccessibility >> array_search("javadoc",$this->avalivableFiles)) % 2 === 1;
|
||||
}
|
||||
public function isXlsmAccessible($fileAccessibility){
|
||||
return $this->isXlsmAvalivable() AND ($fileAccessibility >> array_search("xlsm",$this->avalivableFiles)) % 2 === 1;
|
||||
}
|
||||
public function isVbAccessible($fileAccessibility){
|
||||
return $this->isVbAvalivable() AND ($fileAccessibility >> array_search("vb",$this->avalivableFiles)) % 2 === 1;
|
||||
}
|
||||
|
||||
public static function getFromID($ID){
|
||||
foreach(Langage::$languages AS $language){
|
||||
if($language->getID() == $ID)
|
||||
return $language;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
public static function getFromName($name){
|
||||
foreach(Langage::$languages AS $language){
|
||||
if($language->getName() == $name)
|
||||
return $language;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
public static function getLanguagesFromVersions($versions){
|
||||
$languages = array();
|
||||
foreach($versions AS $version)
|
||||
array_push($languages,$version->getLanguage());
|
||||
$languages = array_unique($languages,SORT_REGULAR);
|
||||
return $languages;
|
||||
}
|
||||
|
||||
}
|
||||
Langage::$java = new Langage(0, "Java", "jar java javadoc");
|
||||
Langage::$vba = new Langage(1, "VBA", "xlsm vb");
|
||||
Reference in New Issue
Block a user