#!/bin/php setPrenom_nom('Jean Némar')->setAdresse('10, rue des douves')->setCode_client('464653476')->setCommentaires('un peu chiant'); $Client->create(); // même chose avec un tableau en entrée au lieu d'écrire toutes les méthodes $input = ['prenom_nom' => 'Eva Casquer', 'adresse' => "2, place d'Écosse", 'code_client' => '958465875', 'commentaires' => 'bonne vache à lait']; $Client->hydrate($input); $Client->create(); $input = ['prenom_nom' => 'Eva Paparla', 'commentaires' => 'grosse nunuche']; $Client->hydrate($input); $Client->update(2); $Client->delete(3); //$Date = new Dates; require('view/Zenity.php'); // commande système zenity require('view/zenity_setup.php'); // texte dans les fenêtres ET instanciation (un objet = une commande) require('Latex.php'); // générer le code LaTeX // injection de variables dans le document // problème à régler: et si je veux faire une deuxième facture? //~ include('latex_templates/devis.php'); //~ include('latex_templates/facture.php'); //~ include('latex_templates/enveloppe_recto.php'); //~ include('latex_templates/enveloppe_verso.php'); //~ include('latex_templates/location.php'); // boucle principale $boucle = true; while($boucle) { // menu principal $choix_niv1 = exec($MenuPrincipal->get()); // enregistrement if($choix_niv1 === $menu_principal_entrees[0]) // = Nouvelle prestation { // est ce que le client est déjà dans la base? if(exec($QuestionNouveauClient->get()) === 0) // $? = 0 signifie oui { // saisie du nom du client et recherche $client_saisie = exec($RechercheClient->get()); // sélection parmi les résultats $ResultatsRechercheClient->setEntries(recherche_client($client_saisie)); $choix_niv2 = exec($ResultatsRechercheClient->get()); if($choix_niv2 !== '') { echo "client trouvé\n"; } else // chaîne vide { echo "client pas trouvé\n"; exec($NouveauClient->get()); // enregistrement dans la BDD } // récupération des infos dans la BDD } else { echo "nouveau client\n"; exec($NouveauClient->get()); // enregistrement dans la BDD } // choix type comptable: devis, facture, cesu $choix_niv2 = exec($MenuEnregistrement->get()); $continuer = true; if($choix_niv2 === $menu_enregistrement_entrees[0]) { // } elseif($choix_niv2 === $menu_enregistrement_entrees[1]) { // } elseif($choix_niv2 === $menu_enregistrement_entrees[2]) { // } elseif($choix_niv2 === $menu_enregistrement_entrees[3]) { // } else { $continuer = false; // retour menu principal } // détail de la prestation if($continuer) { exec($Calendrier->get()); exec($FormulairePrestation->get()); // enregistrement date et prestation en BDD exec($CommentairePrestation->get()); // enregistrement commentaire en BDD // vérification? // tableau récaptilatif et demande de confirmation des informations // création fichiers LaTeX et PDF // imprimer? //~ $imprimer_facture = exec('zenity --question --width=250 --title="Base de données mise à jour" --text="Imprimer la facture?"'); //~ $imprimer_enveloppe = exec('zenity --question --width=250 --title="Base de données mise à jour" --text="Imprimer l\'adresse sur une enveloppe? (insérer une enveloppe DL sans fenêtre dans l\'imprimante"'); } } elseif($choix_niv1 === $menu_principal_entrees[1]) // = Modifier un enregistrement {} elseif($choix_niv1 === $menu_principal_entrees[2]) // = Fichier clients { // quel affichage? un grand tableau avec zenity? une page web? un document LaTeX? } // documents à imprimer elseif($choix_niv1 === $menu_principal_entrees[3]) // = Créer/imprimer un document { $choix_niv2 = exec($MenuDocuments->get()); if($choix_niv2 === $menu_documents_entrees[0]) { } elseif($choix_niv2 === $menu_documents_entrees[1]) // = Facture { } elseif($choix_niv2 === $menu_documents_entrees[2]) // = Lettre avec adresse { } elseif($choix_niv2 === $menu_documents_entrees[3]) // = Livre des recettes { } elseif($choix_niv2 === $menu_documents_entrees[4]) // = Registre des achats { } elseif($choix_niv2 === $menu_documents_entrees[5]) // = Bilan annuel { } else { // retour menu principal } } // Supports de communication elseif($choix_niv1 === $menu_principal_entrees[4]) // = Communication { $choix_niv2 = exec($MenuCommunication->get()); if($choix_niv2 === $menu_communication_entrees[0]) // = Flyer (nécessite gimp) { exec(window_app_command($image_editor, $flyer)); } elseif($choix_niv2 === $menu_communication_entrees[1]) // = Carte de visite (nécessite scribus) { exec(window_app_command($publishing, $business_card)); } elseif($choix_niv2 === $menu_communication_entrees[2]) // = Explorateur de fichiers { exec(window_app_command($file_explorer, $pub)); } else { // retour menu principal } } // BDD elseif($choix_niv1 === $menu_principal_entrees[5]) // = Base de données { if($sqlitebrowser_enable) { exec(window_app_command($sqlite_gui, $db_place)); } else { exec($x_term_command . ' ' . $sqlite_cli . ' ' . $db_place); // correpond à priori à: xterm -e sqlite3 ~/ORDIPOLO/Appli_PHP/ordipolo.sqlite } } // arrêt else { $boucle = false; } }