n'importe quel type est accepté // null ou false => aucun type. return true; } public static function attributs() { return array( "date_creation" => 0, "date_modification" => 0, "publier" => false, "nom_systeme" => "", "composant_url" => "page", ); } public static function ajouter_type($type) { niy("Page::ajouter_type($type);"); // Insérer la ressource "res_c_style" dans le CSS principal } private $parent = null; public function parent() { return $this->parent; } public function rendu() { // Renvoie un document (classe ElementDocument). niy("rendu"); } public function url($ressource = null) { // Renvoie toute l'url (de la ressource principale ou de $ressource). niy("url"); } public function composant_url() { // renvoie juste la fin de l'url (le composant de l'url qui désigne cette page). niy("composant_url"); } private $uid = -1; public function uid() { // Renvoie l'uid de la page dans la base de données. niy("uid"); } /* public function select($requête) { // Renvoie un objet de la classe CollectionPages. niy("select"); }*/ public function enfants($condition = true, $ordre = "date desc", $limit = 0, $offset = 0) { // Renvoie un objet de la classe CollectionPages. // Si $condition === true, il n'y a pas de condition // ex: $condition = "@apercu = true" // ordre = null => ordre = "date desc" // limit = null || limit = 0 => pas de limite // offset = null => offset = 0 niy("enfants"); } public function __get($nom) { // s'il y a un getter (trigger), on l'appelle, sinon on appelle get_prop_direct(); // le getter fait ce qu'il veut, puis appelle set_prop_direct(); niy("get $name"); } private function get_prop_direct($nom) { // Récupère l'attribut "$nom" depuis la BDD. niy("get direct $name"); } public function __set($nom, $val) { // s'il y a un setter (trigger), on l'appelle, sinon on appelle set_prop_direct(); // le setter fait ce qu'il veut, puis appelle set_prop_direct(); niy("set $name = $val"); } public function set_prop_direct($nom, $val) { // Modifie l'attribut "$nom" dans la BDD. niy("set direct $name = $val"); } } class CollectionPages { function __construct() { niy("CollectionPages"); } function __call($fn, $args) { // appelle la fonction sur tous les objets, et renvoie les résultats // dans un tableau. si les résultats sont des CollectionPages, ils // sont concaténés dans la même collection. niy("CollectionPages"); } function __get($name) { // renvoie un tableau contenant le champ pour chaque objet. niy("CollectionPages"); } function __set($name, $val) { // affecte la valeur sur chaque objet. niy("CollectionPages"); } } ?>