diff options
| author | polo <ordipolo@gmx.fr> | 2023-08-30 12:20:39 +0200 |
|---|---|---|
| committer | polo <ordipolo@gmx.fr> | 2023-08-30 12:20:39 +0200 |
| commit | 6f4cc3afffde36a13618458ffda72e6104624f36 (patch) | |
| tree | fbf77181dee390e048bc5fa340ca60bd078ab22b /src/view | |
| parent | 747674b450d6840ce9bd9aecd765cf31445ef8d3 (diff) | |
| download | AppliGestionPHP-6f4cc3afffde36a13618458ffda72e6104624f36.tar.gz AppliGestionPHP-6f4cc3afffde36a13618458ffda72e6104624f36.tar.bz2 AppliGestionPHP-6f4cc3afffde36a13618458ffda72e6104624f36.zip | |
section client à part, section modif en cours, bug dans Dates,
Diffstat (limited to 'src/view')
| -rw-r--r-- | src/view/Zenity.php | 30 | ||||
| -rw-r--r-- | src/view/ZenitySetup.php | 28 |
2 files changed, 42 insertions, 16 deletions
diff --git a/src/view/Zenity.php b/src/view/Zenity.php index 73c8c3e..858dfa9 100644 --- a/src/view/Zenity.php +++ b/src/view/Zenity.php | |||
| @@ -26,6 +26,11 @@ abstract class ZenityCmd | |||
| 26 | { | 26 | { |
| 27 | return($this->command); | 27 | return($this->command); |
| 28 | } | 28 | } |
| 29 | // pré-remlir un formulaire zenity --forms | ||
| 30 | //~ public function formSet() | ||
| 31 | //~ { | ||
| 32 | //~ return($this->command); | ||
| 33 | //~ } | ||
| 29 | } | 34 | } |
| 30 | 35 | ||
| 31 | 36 | ||
| @@ -37,7 +42,7 @@ class ZenityList extends ZenityCmd | |||
| 37 | { | 42 | { |
| 38 | $this->command_type = ' --list'; | 43 | $this->command_type = ' --list'; |
| 39 | parent::__construct($text, $rows); | 44 | parent::__construct($text, $rows); |
| 40 | $this->columns = 1; | 45 | //$this->columns = 1; |
| 41 | $this->command .= ' --hide-header'; // ligne inutile, il y a déjà le --text | 46 | $this->command .= ' --hide-header'; // ligne inutile, il y a déjà le --text |
| 42 | if($this->rows !== []) | 47 | if($this->rows !== []) |
| 43 | { | 48 | { |
| @@ -48,25 +53,29 @@ class ZenityList extends ZenityCmd | |||
| 48 | } | 53 | } |
| 49 | } | 54 | } |
| 50 | 55 | ||
| 51 | // cas ou $this->rows est renseignée après | 56 | // cas ou $this->rows n'est pas renseignée dans le constructeur |
| 52 | // la valeur de $columns n'est plus nécessairement celle apr défaut | 57 | // la valeur de $columns n'est plus nécessairement celle par défaut |
| 53 | public function setListRows(array $rows, string $table) | 58 | public function setListRows(array $rows, int $columns, float $widen = 1) |
| 54 | { | 59 | { |
| 60 | // si 1 colonne, $rows = tableau à une dimension | ||
| 61 | // si 2 colonnes ou plus, $rows = tableau à deux dimensions | ||
| 55 | $this->rows = $rows; | 62 | $this->rows = $rows; |
| 56 | $this->columns = count(StructTablesDB::$structureOfTables[$table]); | 63 | $this->columns = $columns; |
| 57 | $this->width = 800; | 64 | |
| 65 | $this->width = $this->columns * 120 * $widen; | ||
| 66 | $this->height = 91 + count($this->rows) * 25; // inclut les lignes et la barre de défilement horizontale | ||
| 67 | |||
| 58 | $this->command .= ' --width=' . $this->width; | 68 | $this->command .= ' --width=' . $this->width; |
| 59 | $this->height = 80 + count($this->rows) * 25; | ||
| 60 | $this->command .= ' --height=' . $this->height; | 69 | $this->command .= ' --height=' . $this->height; |
| 61 | $this->fillZenityList(); | 70 | $this->fillZenityList(); |
| 62 | } | 71 | } |
| 63 | 72 | ||
| 64 | // noter que la syntaxe de zentity --list est déroutante! | 73 | // noter que la syntaxe de zenity --list est déroutante! |
| 65 | // le remplissage est horizontal et le nombre de colonne dépend du nombre d'occurence de --column="" | 74 | // le remplissage est horizontal et le nombre de colonne dépend du nombre d'occurence de --column="" |
| 66 | public function fillZenityList() | 75 | public function fillZenityList() |
| 67 | { | 76 | { |
| 68 | $output = ''; | 77 | $output = ''; |
| 69 | if($this->columns === 1) | 78 | if($this->columns === 1) // $this->rows doit être un tableau |
| 70 | { | 79 | { |
| 71 | $output .= ' --column=""'; | 80 | $output .= ' --column=""'; |
| 72 | // remplissage vertical | 81 | // remplissage vertical |
| @@ -75,7 +84,8 @@ class ZenityList extends ZenityCmd | |||
| 75 | $output .= ' "' . $one_row . '"'; // forme: ' "choix 1" "choix 2"' | 84 | $output .= ' "' . $one_row . '"'; // forme: ' "choix 1" "choix 2"' |
| 76 | } | 85 | } |
| 77 | } | 86 | } |
| 78 | elseif($this->columns >= 2) // marche quelque soit le nombre de colonnes | 87 | elseif($this->columns >= 2) // $this->rows doit être un tableau à deux dimensions |
| 88 | // marche quelque soit le nombre de colonnes | ||
| 79 | { | 89 | { |
| 80 | for($i = 0; $i < $this->columns; $i++) | 90 | for($i = 0; $i < $this->columns; $i++) |
| 81 | { | 91 | { |
diff --git a/src/view/ZenitySetup.php b/src/view/ZenitySetup.php index d0b785c..32648ea 100644 --- a/src/view/ZenitySetup.php +++ b/src/view/ZenitySetup.php | |||
| @@ -1,10 +1,14 @@ | |||
| 1 | <?php | 1 | <?php |
| 2 | // src/view/ZenitySetup.php | 2 | // src/view/ZenitySetup.php |
| 3 | // | 3 | // |
| 4 | // ces variables sont des paramètres de la commande zenity (--text, --add-entry, --column) | 4 | // données pour les paramètres de la commande zenity comme: --text, --add-entry, --column |
| 5 | // les utiliser à l'instanciation des objets Zenity à la manière de l'exemple suivant: | 5 | // les utiliser à l'instanciation des objets Zenity à la manière de l'exemple suivant: |
| 6 | // $MenuPrincipal = new ZenityList(ZenitySetup::$menu_principal_text, ZenitySetup::$menu_principal_entrees); | 6 | // $MenuPrincipal = new ZenityList(ZenitySetup::$menu_principal_text, ZenitySetup::$menu_principal_entrees); |
| 7 | 7 | ||
| 8 | // pense-bête | ||
| 9 | // rassembler les 'text' et 'entrées' | ||
| 10 | // ce serait plus logique que ce fichier soit en JSON | ||
| 11 | |||
| 8 | class ZenitySetup | 12 | class ZenitySetup |
| 9 | { | 13 | { |
| 10 | static public $menu_principal_text = "Gestion d'une micro-entreprise"; | 14 | static public $menu_principal_text = "Gestion d'une micro-entreprise"; |
| @@ -13,16 +17,17 @@ class ZenitySetup | |||
| 13 | static public $type_client_text = "Client ou prospect?"; | 17 | static public $type_client_text = "Client ou prospect?"; |
| 14 | static public $type_client_entrees = ["Client", "Prospect"]; | 18 | static public $type_client_entrees = ["Client", "Prospect"]; |
| 15 | static public $menu_enregistrement_text = "Type d\'enregistrement?"; | 19 | static public $menu_enregistrement_text = "Type d\'enregistrement?"; |
| 16 | //static public $menu_enregistrement_entrees = ["Devis", "Facture", "CESU", "Location", "Prestation non vendue"]; | 20 | static public $menu_enregistrement_entrees = ["Devis", "Facture", "Facture à partir d'un devis", "CESU", "Location", "Prestation non vendue"]; |
| 17 | static public $menu_enregistrement_entrees = ["Facture", "CESU", "Location", "Prestation non vendue"]; | 21 | //~ static public $menu_enregistrement_entrees = ["Devis", "Facture", "CESU", "Location", "Prestation non vendue"]; |
| 18 | static public $menu_documents_text = "Consulter, imprimer un document LaTeX"; | 22 | static public $menu_documents_text = "Consulter, imprimer un document LaTeX"; |
| 19 | static public $menu_documents_entrees = ["Devis", "Facture", "Lettre avec adresse", "Livre des recettes", "Registre des achats", "Bilan annuel"]; | 23 | static public $menu_documents_entrees = ["Devis", "Facture", "Lettre avec adresse", "Livre des recettes", "Registre des achats", "Bilan annuel"]; |
| 20 | static public $menu_communication_text = "Imprimer un support de communication"; | 24 | static public $menu_communication_text = "Imprimer un support de communication"; |
| 21 | static public $menu_communication_entrees = ["Flyer (nécessite gimp)", "Carte de visite (nécessite scribus)", "Explorateur de fichiers"]; | 25 | static public $menu_communication_entrees = ["Flyer (nécessite gimp)", "Carte de visite (nécessite scribus)", "Explorateur de fichiers"]; |
| 22 | static public $recherche_client_text = "Recherche d'un client avec son nom ou son code client"; | 26 | static public $recherche_client_text = "Recherche d'un client avec son nom ou son code client"; |
| 23 | static public $resultats_recherche_client_text = "Résultats de la recherche, sélectionner un client"; | 27 | static public $resultats_recherche_client_text = "Résultats de la recherche, sélectionner un client"; |
| 28 | static public $resultats_recherche_presta_text = "Sélectionner une prestation"; | ||
| 24 | static public $nouveau_client_text = "Nouveau client"; | 29 | static public $nouveau_client_text = "Nouveau client"; |
| 25 | static public $nouveau_client_entrees = ["Prénom Nom:", "Code client, exemple: J.P.Duchmol:", "Adresse:", "Code postal:", "Ville:", "Telephone:", "Courriel:", "À propos:"]; | 30 | static public $nouveau_client_entrees = ["Prénom Nom:", "Code client (J.C.Dusse):", "Adresse:", "Code postal:", "Ville:", "Telephone:", "Courriel:", "À propos:"]; |
| 26 | static public $calendar_text = 'Nouvelle prestation étape 1/3 - Choisir une date'; | 31 | static public $calendar_text = 'Nouvelle prestation étape 1/3 - Choisir une date'; |
| 27 | static public $formulaire_text = 'Nouvelle prestation 2/3 - Détail des travaux'; | 32 | static public $formulaire_text = 'Nouvelle prestation 2/3 - Détail des travaux'; |
| 28 | static public $formulaire_devis_entrees = ["Tâches effectuées:", "Total main d\'oeuvre (euros):", "Détail des pièces:", "Total pièces (euros):", "Déplacement (euros)", "Total HT (euros):", "Delai de livraison", "Durée de validite du devis:"]; | 33 | static public $formulaire_devis_entrees = ["Tâches effectuées:", "Total main d\'oeuvre (euros):", "Détail des pièces:", "Total pièces (euros):", "Déplacement (euros)", "Total HT (euros):", "Delai de livraison", "Durée de validite du devis:"]; |
| @@ -30,8 +35,19 @@ class ZenitySetup | |||
| 30 | static public $formulaire_cesu_entrees = ["Tâches effectuées:", "Duree de travail:", "Salaire net", "Mode de paiement"]; // en fait je pourrais ajouter plein d'autres trucs | 35 | static public $formulaire_cesu_entrees = ["Tâches effectuées:", "Duree de travail:", "Salaire net", "Mode de paiement"]; // en fait je pourrais ajouter plein d'autres trucs |
| 31 | static public $formulaire_location_entrees = ["Désignation du bien", "Modèle, numéro de série, description:", "Valeur", "État des lieux du début:", "État des lieux de fin:", "Durée de la location en mois:", "Loyer mensuel:", "Nombre de loyers déjà payés:", "Montant du chèque de caution:"]; | 36 | static public $formulaire_location_entrees = ["Désignation du bien", "Modèle, numéro de série, description:", "Valeur", "État des lieux du début:", "État des lieux de fin:", "Durée de la location en mois:", "Loyer mensuel:", "Nombre de loyers déjà payés:", "Montant du chèque de caution:"]; |
| 32 | static public $commentaire_prestation_text = 'Nouvelle prestation 3/3 - Commentaires'; | 37 | static public $commentaire_prestation_text = 'Nouvelle prestation 3/3 - Commentaires'; |
| 33 | static public $recapitulatif_text = "voici toutes les informations enregistrées"; | 38 | |
| 34 | static public $recapitulatif_entrees = []; | 39 | static public $modification_client = ['text' => 'Modifier une information concernant un client', |
| 40 | //'lignes' => ["Prénom Nom:", "Code client (J.C.Dusse):", "Adresse:", "Code postal:", "Ville:", "Telephone:", "Courriel:", "À propos:", "Client ou Prospect?"], // inutile, obtenu par $Client->getAll() | ||
| 41 | 'service' => "Modifier une prestation", | ||
| 42 | 'return' => "Retour menu principal"]; | ||
| 43 | static public $modification_presta = ['text' => 'Modifier une prestation', | ||
| 44 | 'devis_facture' => "Changer ce devis en facture", | ||
| 45 | 'service' => "Modifier une autre prestation", | ||
| 46 | 'return' => "Retour menu précédent"]; | ||
| 47 | |||
| 48 | //~ static public $recapitulatif_text = "voici toutes les informations enregistrées"; | ||
| 49 | //~ static public $recapitulatif_entrees = []; | ||
| 50 | |||
| 35 | //static public $question_modification_text = "Prestation enregistrée. Modifier les informations?"; | 51 | //static public $question_modification_text = "Prestation enregistrée. Modifier les informations?"; |
| 36 | 52 | ||
| 37 | static public $fin_section_1_text = "Client enregistré"; | 53 | static public $fin_section_1_text = "Client enregistré"; |
