====== Bibliothèque de classes Zend Framework ====== ===== Introduction ===== La novalib est une bibliothèque de classes servant à apporter des fonctionnalités de base à XNova:Legacies. C'est une bibliothèque qui se superpose au Zend Framework et crée un squelette d'application, en y ajoutant des fonctionnalités plus proches des besoins de XNova, sans pour autant casser les fonctionnalités de ce framework. Son implémentation est faite en PHP 5.1, et certaines fonctionnalités nécessitent l'installation d'extensions PHP et/ou l'activation de certaines directives dans le fichier ''php.ini''. Les nouvelles fonctionnalités objet apportées par la version 5.3 de PHP (namespaces, closures, fonctions anonymes, ect...) ne seront pas utilisées, mais l'utilisation des extensions telles que ''mysqlnd'' et ''phar'' est envisagée dans un futur proche. L'intégralité de la bibliothèque suit les [[http://framework.zend.com/wiki/display/ZFDEV/ZF+Coding+Standards+%28RC%29|règles de mise en forme du code]] du Zend Framework, ce qui assure une compatibilité des outils de ce framework. ===== Installation ===== L'installation de la novalib se fait très simplement en ajoutant le dossier ''src/'' de l'archive dans les chemins d'inclusions de PHP, par exemple dans le fichier ''php.ini'' : ; Pour les systèmes de type UNIX : include_path="/usr/lib/novalib/src:." ; Pour les systèmes de type Windows : include_path="C:\\wamp\\lib\\novalib\\src;." ou bien directement dans votre code source si vous n'avez pas accès au fichier ''php.ini'' ((Cette dernière méthode est déconseillée pour des raisons de performances)) : ini_set('include_path', "/usr/lib/novalib/src" . PATH_SEPARATOR . ini_get('include_path')); ===== Liste des fonctionnalités ===== ==== Fonctionnalités de base ==== * [[novalib:fr:db|Accès aux bases de données]] * [[novalib:fr:config|Fichiers de configuration]] * [[novalib:fr:session|Sessions]] * [[novalib:fr:locales|Localisation et Internationalisation]] * [[novalib:fr:templating|Templates: Des Layouts et des Blocks]] ==== Fonctionnalités avancées ==== * [[novalib:fr:autoload|Chargement automatique des classes]] * [[novalib:fr:rest|Accès aux services web REST]] * [[novalib:fr:url|Gestion d'URL]] * [[novalib:fr:registry|Registre de données]] * [[novalib:fr:cache|Moteur de cache]] * [[novalib:fr:rad|Outils RAD (Rapid Application Development)]] * [[novalib:fr:ajax|Outils Ajax]] ==== Fonctionnalités optionnelles ==== * [[novalib:fr:antispam|Antispam]] * [[novalib:fr:blacklist|Blacklist globale]] * [[novalib:fr:setup|Installeur]] ===== Développement, bugs, demande de fonctionnalités ===== L'ensemble du développement est gérée par l'équipe XNova, envoyer un message à [[http://board.xnova-ng.org/index.php?showuser=152|Greg]] pour toute demande ou correctif de bug.