Dolibarr : externaliser la conversion ODT vers PDF
Si vous avez installé un Dolibarr sur un serveur mutualisé, et que vous ne voulez pas vous prendre la tête pour des modèles de documents en programmation FPDF, voici une solution intéressante.
Ingrédients :
- 1 Dolibarr fraichement cueilli sur un serveur mutualisé
- 1 PC sous Unix (Ubuntu par exemple)
- 1 connexion à Internet
Activation des ODT sous Dolibarr
Pour commencer, il suffit d’activer la gestion des documents ODT dans Dolibarr. Chaque module générant des docs (factures, projets, etc.) dispose de cette option.
PC sous Unix
Installer LibreOffice, JODConverter, UnoConv et LFTP depuis le terminal.
Créer un dossier pour y copier les documents à convertir. Y créer un fichier sync.sh et coller et adapter le code suivant :
#!/bin/bash HOST='ftp.server.com' USER='login' PASS='pass' TARGETFOLDER='/distant/path/to/dolibarr/documents' SOURCEFOLDER='/local/path' #Récupération lftp -f " open $HOST user $USER $PASS lcd $SOURCEFOLDER mirror --reverse --verbose $SOURCEFOLDER $TARGETFOLDER mirror --verbose $TARGETFOLDER $SOURCEFOLDER bye " #Conversion for i in $(find -name *.odt); do PDF=$(echo $i | sed 's/odt/pdf/g') if [ -e "$PDF" ] then echo "$PDF existe" else unoconv -f pdf "$i" fi done #Renvoi lftp -f " open $HOST user $USER $PASS lcd $SOURCEFOLDER mirror --reverse --verbose $SOURCEFOLDER $TARGETFOLDER bye "
Enfin, ajouter une commande dans le crontab du type sh /local/path/sync.sh > /dev/null pour que l’exécution se fasse toutes les X minutes ou X heures, à votre guise.