Git Product home page Git Product logo

poulpe2's Introduction

MonsieurPoulpe2 (alias Poulpe2)

Un framework modulaire en php.

Pré-requis

Serveur

  • PHP 7.0+
  • Mysql 5.5+
  • Serveur Linux (testé sous Ubuntu seulement)
  • Serveur web Apache, lighttpd ou autre (testé seulement sous Apache et lighttpd)

Serveur Linux

Les pretty URL (du type http://poulpe2/module/FileBrowser) sont disponibles seulement sous Apache. Pour les activer, il faut modifier la constante MODULE_URL dans le fichier config.php en module/.

Client

  • Javascript recommandé (c'est activé par défaut) mais pas obligatoire
  • L'utilisation d'un cookie (c'est permis par défaut) et c'est obligatoire
  • Un navigateur décent : Firefox, Opera, Chrome et IE8 minimum (mais pour un visuel plus sympa, prenez IE9+)
  • Des yeux (ça aussi c'est fourni par défaut)
  • Un peu d'amour

Composants externes

  • Twitter Bootstrap 3.3.7 : est un framework html, css et javascript. En clair il peut gérer toute la partie affichage dès lors qu'on lui file quelque chose à afficher.
  • Yeti 3.3.6 : Thème pour Bootstrap
  • Font Awesome 4.7.0 : ensemble d'icônes contenues dans une police d'écriture, remplaçant Glyphicon de Bootstrap.
  • jQuery 1.11.0 : framework Javascript utilisé par Bootstrap.
  • Bootstrap Switch 3.3.4 : plugin jQuery qui change les cases à cocher en switch d'activation (similaire à ce qu'on voit sur les smartphones).
  • PNotify Plugin 1.3.1 : plugin jQuery de notifications flottantes.
  • Bootstrap Confirmation 2.0 : plugin de jQuery et Bootstrap qui gère les confirmations via popover.
  • Bootstrap 3 Typeahead : Plugin d'auto-completion qui a été supprimé de Bootstrap 3.
  • Pagedown Bootstrap : Editeur gérant la syntaxe Markdown
  • Highlight.js : Plugin de coloration syntaxique de code
  • DataTables 1.10.15 : Plugin jQuery d'organisation de tables HTML avec tri, recherche et pagination
  • Bootstrap Validator 0.11.9 : plugin jQuery et Bootstrap qui gère la validation des champs de formulaires
  • Autosize 3.0.5 : Plugin jQuery permettant de changer dynamiquement la hauteur des Textareas pour qu'ils s'adaptent à leurs contenus
  • bootstrap-waitingfor Affiche un modal pour patienter un peu pendant un chargement
  • php-markdown 1.7.0 : Gestion de la syntaxe Markdown en PHP

Installation

  • Clonez poulpe2

  • Clonez les modules dans un sous répertoire de Poulpe2. Par exemple, en étant dans le répertoire d'install de Poulpe2 :

      git clone https://github.com/Dric/Poulpe2_Modules.git Modules
    
  • Accédez à Poulpe2 au sein de votre navigateur internet, l'installeur va se lancer.

Pour une installation manuelle, voir Le fichier install.md.

TODO

  • Compléter le script d'installation avec l'installation automatique des modules
  • Doc de développement de modules (en cours)
  • Gérer la barre de menu avec JS désactivé

Bugs connus

  • L'affichage des mots de passe ne permet plus au champ de mot de passe de passer la validation.

Documentation

  • Activer le module ModuleCreator qui donne les liens vers les différentes documentations disponibles
  • Voir le répertoire Docs
  • Documentation générée avec phpDocumentor

Paramètres de génération de doc (commande lancée à partir du répertoire racine de Poulpe2) :

composer require --dev phpdocumentor/phpdocumentor dev-master
php vendor/bin/phpdoc run --title "Doc du code de Poulpe2" -t Docs/Code -d . -i "classes/Settings.php,Docs/,Modules/Charts/,Modules_CHGS/,Modules_Lisia/,Modules_Salsifis/,vendor/,fonts/,img/,js/,cache/"

Divers

Evolutions majeures depuis la v1

  • Le script reste fonctionnel même avec Javascript désactivé (à l'exception de la barre de menus)
  • Utilisation de PHP5 et de la programmation orientée objet
  • Utilisation de Bootstrap 3 - le site est maintenant adaptatif aux différentes résolutions (PC, tablettes, smartphones)
  • Meilleure cohérence entre les modules
  • Design revu
  • Les autorisations ne sont plus basées sur des groupes mais directement sur les utilisateurs. Elles sont en revanche plus détaillées, un utilisateur pouvant être admin d'un module sans être admin du site complet.
  • Meilleure fiabilité
  • Sécurité améliorée

Régressions depuis la v1

  • Faible utilisation des requêtes asynchrones, rendant la navigation potentiellement moins légère

Troubleshooting

  • Si les interrogations à LDAP mettent 5s à se faire, c'est qu'il y a un problème de résolution DNS sur le serveur. Le plus simple est d'indiquer les adresses IP des serveurs LDAP au lieu de leur nom.

poulpe2's People

Contributors

dric avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.