gestion_table_tournante_libre/src/interface/libelles/impression.js
Mathieu Benoit 858018323b [ADD] print: preview screen, printable sheet, paper question
Printed pages must show exactly what will come out of the printer. An
Imprimer button in the event header opens a preview screen where each page
is a sheet at paper size, light whatever the theme, with its footer and,
under the strict draft rule, BROUILLON in outline; a proposal shown on a
retained plan prints as a draft. The paper is asked once per machine and
can be changed there. The table sheets offer one sheet per round. A failed
print shows IMPRESSION_ECHEC. The captures are republished with the button.
Checked: red first; 3651 node, 707 browser and 101 long tests green from
the index alone.

--- FR ---

[ADD] impression : aperçu, feuille imprimable, question du papier

Une page imprimée doit montrer exactement ce que l'imprimante rendra. Un
bouton Imprimer de la tête de l'événement ouvre un aperçu où chaque page
est une feuille au format du papier, claire quel que soit le thème, avec
son pied et, sous la règle stricte, BROUILLON au trait ; une proposition
montrée sur un plan retenu s'imprime en brouillon. Le papier se demande une
fois par machine et s'y change. Les feuilles par table offrent une feuille
par tour. Une impression échouée affiche IMPRESSION_ECHEC. Les captures
sont republiées avec le bouton.
Vérifié : rouge d'abord ; 3651 node, 707 navigateur et 101 longues vertes
depuis l'index seul.

Assisted-by: Claude Opus 5.5
2026-10-09 17:11:37 -04:00

58 lines
2.9 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// © 2026 TechnoLibre (http://www.technolibre.ca)
// License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl)
// Les libellés de l'aperçu avant impression et de la feuille imprimée
// (§ 11.7, § 8.5, § 11.2, § 18.6), et ceux de la question du papier, que
// l'aperçu et la section des badges partagent. Chaque clé commence par
// « impression. ». Une donnée — le nom de l'événement, une date, un
// horodatage, la version — n'entre dans aucun de ces textes : la feuille la
// pose dans son propre nœud, à côté.
export const TABLE = new Map([
// --- L'écran et sa barre (§ 11.7) ------------------------------------------
['impression.titre', 'Aperçu avant impression'],
['impression.barre', "Commandes de l'aperçu"],
['impression.commande.ouvrir', 'Imprimer…'],
['impression.commande.imprimer', 'Imprimer'],
['impression.commande.fermer', "Fermer l'aperçu"],
// --- Ce que l'aperçu imprime ----------------------------------------------
['impression.vue.titre', 'Vue imprimée'],
['impression.vue.plan', 'Plan de salle'],
['impression.vue.accueil', "Liste d'accueil"],
['impression.vue.tables', 'Feuilles par table'],
['impression.tour.titre', 'Tour imprimé'],
['impression.tour.option', ({ tour }) => `Tour ${tour}`],
['impression.listes', 'Listes de noms'],
['impression.decoupe.titre', 'Pages du plan'],
['impression.decoupe.auto', 'Découpage proposé'],
['impression.decoupe.unePage', 'Tout sur une page'],
['impression.decoupe.decoupe', 'Découper en pages'],
['impression.parTour', 'Une feuille par tour'],
// --- La question du papier (§ 8.5, § 11.2) -----------------------------------
['impression.papier.question', 'Sur quel papier imprimez-vous ?'],
[
'impression.papier.explication',
"Le format est celui du bac de l'imprimante de cette machine : il est retenu ici, et ne se redemande plus.",
],
['impression.papier.choix.a4', 'A4 (210 × 297 mm)'],
['impression.papier.choix.lettre', 'Lettre (215,9 × 279,4 mm)'],
['impression.papier.titre', 'Papier :'],
['impression.papier.nom.a4', 'A4'],
['impression.papier.nom.lettre', 'Lettre'],
['impression.papier.changer', 'Changer'],
// --- La feuille imprimée (§ 11.7, § 18.6) -----------------------------------
['impression.filigrane', 'BROUILLON'],
['impression.pied.sansDate', 'Date non fixée'],
['impression.pied.tour', ({ tour }) => `Tour ${tour}`],
['impression.pied.tousLesTours', 'Tous les tours'],
['impression.pied.placement', 'Placement du'],
['impression.pied.placementInconnu', 'Placement non daté'],
['impression.pied.version', 'Version'],
// --- Les vues, avant leur mise en page (§ 11.7) ------------------------------
['impression.plan.page', ({ page, total }) => `Plan, page ${page} sur ${total}`],
['impression.accueil.titre', "Liste d'accueil"],
['impression.tables.titre', 'Feuilles par table'],
]);