[{"data":1,"prerenderedAt":5802},["Reactive",2],{"navigation":3,"/dodock/fonctionnalites/personnalisations/server_script":2071,"/dodock/fonctionnalites/personnalisations/server_script-surround":5797},[4,1149,1811,1953,1979],{"title":5,"_path":6,"children":7,"icon":1148},"Dokos","/dokos",[8,11,93,121,154,215,245,284,302,394,439,467,491,738,794,806,822,875,898,902,906,1114,1116],{"title":9,"_path":6,"icon":10},"Bienvenue sur l'écosystème Dokos","i-icon-park-outline-fireworks",{"title":12,"_path":13,"children":14,"icon":92},"Paramétrage","/dokos/parametrage",[15,16,19,22,25,28,31,34],{"title":12,"_path":13},{"title":17,"_path":18},"La société","/dokos/parametrage/societe",{"title":20,"_path":21},"Le plan comptable","/dokos/parametrage/plan-comptable",{"title":23,"_path":24},"Les articles","/dokos/parametrage/articles",{"title":26,"_path":27},"Les prix","/dokos/parametrage/prix",{"title":29,"_path":30},"Les clients","/dokos/parametrage/clients",{"title":32,"_path":33},"Les fournisseurs","/dokos/parametrage/fournisseurs",{"title":35,"_path":36,"children":37},"Démarrage","/dokos/parametrage/demarrage",[38,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84],{"title":35,"_path":36},{"title":40,"_path":41},"Importateur de plans de comptes","/dokos/parametrage/demarrage/plan-comptable",{"title":43,"_path":44},"Configuration de la société","/dokos/parametrage/demarrage/societe",{"title":46,"_path":47},"Configurer les taxes","/dokos/parametrage/demarrage/taxes",{"title":49,"_path":50},"Paramètres de nommage des documents","/dokos/parametrage/demarrage/masques-numerotation",{"title":52,"_path":53},"Outil d'importation de données","/dokos/parametrage/demarrage/import-de-donnees",{"title":55,"_path":56},"Export de données","/dokos/parametrage/demarrage/export-de-donnees",{"title":58,"_path":59},"Les paramètres système","/dokos/parametrage/demarrage/parametres-systeme",{"title":61,"_path":62},"Valeurs par défaut globales","/dokos/parametrage/demarrage/valeurs-globales",{"title":64,"_path":65},"Termes et conditions","/dokos/parametrage/demarrage/termes-et-conditions",{"title":67,"_path":68},"Utilisateurs, rôles et autorisations","/dokos/parametrage/demarrage/utilisateurs-et-autorisations",{"title":70,"_path":71},"Définition de l'objectif de vente de l'entreprise","/dokos/parametrage/demarrage/objectifs-de-vente",{"title":73,"_path":74},"Téléchargement de sauvegardes","/dokos/parametrage/demarrage/sauvegardes",{"title":76,"_path":77},"Notifications","/dokos/parametrage/demarrage/notifications",{"title":79,"_path":80},"Imprimer les titres","/dokos/parametrage/demarrage/titres",{"title":82,"_path":83},"Modèle d'adresse","/dokos/parametrage/demarrage/modele-adresse",{"title":85,"_path":86,"children":87},"Flux de travail","/dokos/parametrage/demarrage/workflows",[88,89],{"title":85,"_path":86},{"title":90,"_path":91},"Règle d'attribution","/dokos/parametrage/demarrage/workflows/assignment-rule","i-icon-park-outline-ad-product",{"title":94,"_path":95,"children":96,"icon":120},"Achats","/dokos/achats",[97,99,102,105,108,111,114,117],{"title":98,"_path":95},"Introduction",{"title":100,"_path":101},"Paramètres des achats","/dokos/achats/parametres-achats",{"title":103,"_path":104},"Devis Fournisseur","/dokos/achats/devis-fournisseurs",{"title":106,"_path":107},"Commande Fournisseur","/dokos/achats/commandes-fournisseur",{"title":109,"_path":110},"Facture d'achat","/dokos/achats/factures-achats",{"title":112,"_path":113},"Appel d'offre","/dokos/achats/appel-offre",{"title":115,"_path":116},"Carte de pointage des fournisseurs","/dokos/achats/evaluation-fournisseurs",{"title":118,"_path":119},"Modèle de taxes et frais d'achat","/dokos/achats/taxes","i-icon-park-outline-buy",{"title":122,"_path":123,"children":124,"icon":153},"Immobilisations","/dokos/actifs",[125,126,129,132,135,138,141,144,147,150],{"title":98,"_path":123},{"title":127,"_path":128},"Premiers pas avec les actifs","/dokos/actifs/demarrer",{"title":130,"_path":131},"Les actifs","/dokos/actifs/actif",{"title":133,"_path":134},"Amortissement des actifs","/dokos/actifs/depreciation-actif",{"title":136,"_path":137},"Ajustement de la valeur de l'actif","/dokos/actifs/ajustment-de-la-valeur-des-actifs",{"title":139,"_path":140},"Achat d'un actif","/dokos/actifs/acheter-un-actif",{"title":142,"_path":143},"Réparation d'actifs","/dokos/actifs/reparation-actifs",{"title":145,"_path":146},"Vendre un actif","/dokos/actifs/vendre-un-actif",{"title":148,"_path":149},"Mouvement d'actif","/dokos/actifs/mouvements-actifs",{"title":151,"_path":152},"Maintenance des actifs","/dokos/actifs/maintenance-des-actifs","i-carbon-asset",{"title":155,"_path":156,"children":157,"icon":214},"Comptabilité","/dokos/comptabilite",[158,159,162,165,168,171,174,177,180,183,186,189,192,195,198],{"title":98,"_path":156},{"title":160,"_path":161},"Paramètres de comptabilité","/dokos/comptabilite/parametres-comptabilite",{"title":163,"_path":164},"Exercice fiscal","/dokos/comptabilite/exercice-fiscal",{"title":166,"_path":167},"Période comptable","/dokos/comptabilite/periode-comptable",{"title":169,"_path":170},"Journal Comptable","/dokos/comptabilite/journal-comptable",{"title":172,"_path":173},"Modes de paiement","/dokos/comptabilite/mode-de-paiement",{"title":175,"_path":176},"Compte bancaire","/dokos/comptabilite/compte-bancaire",{"title":178,"_path":179},"Dimensions comptables","/dokos/comptabilite/dimensions-comptables",{"title":181,"_path":182},"Écriture de journal","/dokos/comptabilite/ecriture-journal",{"title":184,"_path":185},"Ecriture de paiement","/dokos/comptabilite/ecriture-paiements",{"title":187,"_path":188},"Passerelles de paiement","/dokos/comptabilite/passerelles-paiements",{"title":190,"_path":191},"Rapprochement bancaire","/dokos/comptabilite/rapprochement-bancaire",{"title":193,"_path":194},"Synchronisation bancaire","/dokos/comptabilite/synchronisation-bancaire",{"title":196,"_path":197},"Prélèvement Sepa","/dokos/comptabilite/prelevement-sepa",{"title":199,"_path":200,"children":201},"Rapports","/dokos/comptabilite/rapports",[202,205,208,211],{"title":203,"_path":204},"Balance Générale","/dokos/comptabilite/rapports/balance-generale",{"title":206,"_path":207},"Bilan","/dokos/comptabilite/rapports/bilan",{"title":209,"_path":210},"Compte de résultat","/dokos/comptabilite/rapports/compte-de-resultat",{"title":212,"_path":213},"Grand Livre","/dokos/comptabilite/rapports/grand-livre","i-uil-balance-scale",{"title":216,"_path":217,"children":218,"icon":244},"CRM","/dokos/crm",[219,220,223,226,229,232,235,238,241],{"title":98,"_path":217},{"title":221,"_path":222},"Piste","/dokos/crm/piste",{"title":224,"_path":225},"Prospect","/dokos/crm/prospect",{"title":227,"_path":228},"Opportunité","/dokos/crm/opportunite",{"title":230,"_path":231},"Campagne","/dokos/crm/campagne",{"title":233,"_path":234},"Campagne d'emailing","/dokos/crm/email-campaign",{"title":236,"_path":237},"Contrat","/dokos/crm/contrat",{"title":239,"_path":240},"Newsletter","/dokos/crm/newsletter",{"title":242,"_path":243},"Rendez-vous","/dokos/crm/rendez-vous","i-carbon-chart-relationship",{"title":246,"_path":247,"children":248,"icon":283},"Ventes","/dokos/ventes",[249,250,253,256,259,262,265,268,271,274,277,280],{"title":246,"_path":247},{"title":251,"_path":252},"Paramètres de vente","/dokos/ventes/parametres-vente",{"title":254,"_path":255},"Devis Client","/dokos/ventes/devis",{"title":257,"_path":258},"Commande client","/dokos/ventes/commande-client",{"title":260,"_path":261},"Facture de vente","/dokos/ventes/facture-de-vente",{"title":263,"_path":264},"Modèle de taxes de vente et frais","/dokos/ventes/taxes",{"title":266,"_path":267},"Abonnements","/dokos/ventes/abonnements",{"title":269,"_path":270},"Partenaire commercial","/dokos/ventes/partenaire-commercial",{"title":272,"_path":273},"Code promotionnel","/dokos/ventes/code-promotionnel",{"title":275,"_path":276},"Vendeur","/dokos/ventes/commercial",{"title":278,"_path":279},"Demande de paiement","/dokos/ventes/demande-de-paiement",{"title":281,"_path":282},"Faq","/dokos/ventes/faq","i-ep-sell",{"title":285,"_path":286,"children":287,"icon":301},"Projets","/dokos/projets",[288,289,292,295,298],{"title":98,"_path":286},{"title":290,"_path":291},"Projet","/dokos/projets/projets",{"title":293,"_path":294},"Tâche","/dokos/projets/taches",{"title":296,"_path":297},"Feuille de temps","/dokos/projets/feuilles-de-temps",{"title":299,"_path":300},"Type d'activité","/dokos/projets/types-activite","i-eos-icons-project-outlined",{"title":303,"_path":304,"children":305,"icon":393},"Stocks","/dokos/stocks",[306,307,310,312,318,321,324,327,330,333,336,339,342,345,348,351,354,357,360,363,366,369,372,375,378,381,384,387,390],{"title":98,"_path":304},{"title":308,"_path":309},"Reçu d'achat","/dokos/stocks/recus-achats",{"title":281,"_path":311},"/dokos/stocks/faq",{"title":199,"_path":313,"children":314},"/dokos/stocks/rapports",[315],{"title":316,"_path":317},"Solde du stock","/dokos/stocks/rapports/solde-du-stock",{"title":319,"_path":320},"Remise supplémentaire","/dokos/stocks/applying-discount",{"title":322,"_path":323},"N° de Lot","/dokos/stocks/batch",{"title":325,"_path":326},"Bordereau de colis","/dokos/stocks/bordereau-colis",{"title":328,"_path":329},"Bon de livraison","/dokos/stocks/delivery-note",{"title":331,"_path":332},"Demande de matériel","/dokos/stocks/demande-materiel",{"title":334,"_path":335},"Ensemble de produit","/dokos/stocks/ensembles-de-produits",{"title":337,"_path":338},"Fabricant","/dokos/stocks/fabricant",{"title":340,"_path":341},"Attribut d'article","/dokos/stocks/item-attribute",{"title":343,"_path":344},"Groupe d'article","/dokos/stocks/item-group",{"title":346,"_path":347},"Informations sur les articles","/dokos/stocks/item-info",{"title":349,"_path":350},"Variantes d'article","/dokos/stocks/item-variants",{"title":352,"_path":353},"Stock d'ouverture","/dokos/stocks/opening-stock",{"title":355,"_path":356},"Retour d'achat","/dokos/stocks/purchase-return",{"title":358,"_path":359},"Inspection de la qualité","/dokos/stocks/quality-inspection",{"title":361,"_path":362},"Règle de livraison","/dokos/stocks/regle-de-livraison",{"title":364,"_path":365},"Règles de prix","/dokos/stocks/regles-de-prix",{"title":367,"_path":368},"Conservation du stock d'échantillons","/dokos/stocks/retain-sample-stock",{"title":370,"_path":371},"Retour des ventes","/dokos/stocks/sales-return",{"title":373,"_path":374},"Schéma promotionnel","/dokos/stocks/schemas-promotionnels",{"title":376,"_path":377},"Numéro de série","/dokos/stocks/serial-no",{"title":379,"_path":380},"Écriture de stock","/dokos/stocks/stock-entry",{"title":382,"_path":383},"Rapport sur le niveau de stock","/dokos/stocks/stock-level-report",{"title":385,"_path":386},"Paramètres de stock","/dokos/stocks/stock-settings",{"title":388,"_path":389},"Unité de mesure (UDM)","/dokos/stocks/uom",{"title":391,"_path":392},"Entrepôt","/dokos/stocks/warehouse","i-vaadin-stock",{"title":395,"_path":396,"children":397,"icon":438},"Production","/dokos/production",[398,399,402,405,411,414,417,420,423,426,429,432,435],{"title":98,"_path":396},{"title":400,"_path":401},"Paramètres de production","/dokos/production/parametres-de-production",{"title":403,"_path":404},"Introduction à la production","/dokos/production/demarrer",{"title":199,"_path":406,"children":407},"/dokos/production/rapports",[408],{"title":409,"_path":410},"Tableau de bord de production","/dokos/production/rapports/manufacturing",{"title":412,"_path":413},"Écriture de temps d'arrêt","/dokos/production/arret-de-production",{"title":415,"_path":416},"Carte de travail","/dokos/production/carte-travail",{"title":418,"_path":419},"Nomenclature","/dokos/production/nomenclature",{"title":421,"_path":422},"Opération","/dokos/production/operation",{"title":424,"_path":425},"Ordre de travail","/dokos/production/ordre-de-travail",{"title":427,"_path":428},"Plan de production","/dokos/production/plan-production",{"title":430,"_path":431},"Routage","/dokos/production/routage",{"title":433,"_path":434},"Sous-traitance","/dokos/production/sous-traitance",{"title":436,"_path":437},"Station de travail","/dokos/production/station-de-travail","i-fluent-manufacturer-24-regular",{"title":440,"_path":441,"children":442,"icon":466},"Qualité","/dokos/qualite",[443,445,448,451,454,457,460,463],{"title":444,"_path":441},"Gestion de la qualité",{"title":446,"_path":447},"Action de qualité","/dokos/qualite/action-de-qualite",{"title":449,"_path":450},"Non-conformité","/dokos/qualite/non-conformite",{"title":452,"_path":453},"Objectif de qualité","/dokos/qualite/objectif-de-qualite",{"title":455,"_path":456},"Procédure de qualité","/dokos/qualite/procedure-de-qualite",{"title":458,"_path":459},"Retours de qualité","/dokos/qualite/retour-experience-qualite",{"title":461,"_path":462},"Réunion qualité","/dokos/qualite/reunion-de-qualite",{"title":464,"_path":465},"Revue de la qualité","/dokos/qualite/revue-de-qualite","i-carbon-rule-data-quality",{"title":468,"_path":469,"children":470,"icon":490},"Support","/dokos/support",[471,472,475,478,481,484,487],{"title":98,"_path":469},{"title":473,"_path":474},"Paramètres du support","/dokos/support/parametres-du-support",{"title":476,"_path":477},"Ticket","/dokos/support/ticket",{"title":479,"_path":480},"Échéancier d'entretien","/dokos/support/calendrier-de-maintenance",{"title":482,"_path":483},"Accord de niveau de service","/dokos/support/garantie-de-niveau-de-service",{"title":485,"_path":486},"Réclamation de garantie","/dokos/support/garantie",{"title":488,"_path":489},"Visite d'entretien","/dokos/support/visites-de-maintenance","i-ri-customer-service-2-line",{"title":492,"_path":493,"children":494,"icon":737},"Ressources Humaines","/dokos/hrms",[495,497,500,512,515,550,603,622,625,651,654,719,723],{"title":496,"_path":493,"icon":10},"Bienvenue",{"title":498,"_path":499},"Paramètres RH","/dokos/hrms/parametres-rh",{"title":12,"_path":501,"children":502},"/dokos/hrms/parametrage",[503,506,509],{"title":504,"_path":505},"Département","/dokos/hrms/parametrage/departement",{"title":507,"_path":508},"Branche","/dokos/hrms/parametrage/branche",{"title":510,"_path":511},"Désignation","/dokos/hrms/parametrage/poste",{"title":513,"_path":514},"Évaluations","/dokos/hrms/evaluations",{"title":516,"_path":517,"children":518},"Quarts et présences","/dokos/hrms/quarts-et-presences",[519,520,523,526,529,532,535,538,541,544,547],{"title":516,"_path":517},{"title":521,"_path":522},"Gestion des présences","/dokos/hrms/quarts-et-presences/attendance",{"title":524,"_path":525},"Demande de validation de présence","/dokos/hrms/quarts-et-presences/attendance-request",{"title":527,"_path":528},"Outil de gestion des présences des employés","/dokos/hrms/quarts-et-presences/employee-attendance-tool",{"title":530,"_path":531},"Enregistrement des employés","/dokos/hrms/quarts-et-presences/employee-checkin",{"title":533,"_path":534},"Outil de présence des employés","/dokos/hrms/quarts-et-presences/employment-attendance-tool",{"title":536,"_path":537},"Affectation de quart","/dokos/hrms/quarts-et-presences/shift-assignment",{"title":539,"_path":540},"Sélection de quart","/dokos/hrms/quarts-et-presences/shift-request",{"title":542,"_path":543},"Type de quart","/dokos/hrms/quarts-et-presences/shift-type",{"title":545,"_path":546},"Plan de dotation","/dokos/hrms/quarts-et-presences/staffing-plan",{"title":548,"_path":549},"Outil de chargement de présence","/dokos/hrms/quarts-et-presences/upload-attendance",{"title":551,"_path":552,"children":553},"Cycle de vie des employés","/dokos/hrms/cycle-de-vie",[554,555,558,561,564,567,570,573,576,579,582,585,588,591,594,597,600],{"title":551,"_path":552},{"title":556,"_path":557},"Chauffeur","/dokos/hrms/cycle-de-vie/driver",{"title":559,"_path":560},"Employé","/dokos/hrms/cycle-de-vie/employee",{"title":562,"_path":563},"Échelon de l'employé","/dokos/hrms/cycle-de-vie/employee-grade",{"title":565,"_path":566},"Groupe d'employés","/dokos/hrms/cycle-de-vie/employee-group",{"title":568,"_path":569},"Assurance maladie des employés","/dokos/hrms/cycle-de-vie/employee-health-insurance",{"title":571,"_path":572},"Promotion des employés","/dokos/hrms/cycle-de-vie/employee-promotion",{"title":574,"_path":575},"Départ des employés","/dokos/hrms/cycle-de-vie/employee-separation",{"title":577,"_path":578},"Carte des compétences des employés","/dokos/hrms/cycle-de-vie/employee-skill-map",{"title":580,"_path":581},"Transfert des employés","/dokos/hrms/cycle-de-vie/employee-transfer",{"title":583,"_path":584},"Type d'emploi","/dokos/hrms/cycle-de-vie/employment-type",{"title":586,"_path":587},"Événement de la formation","/dokos/hrms/cycle-de-vie/training-event",{"title":589,"_path":590},"Programme de formation","/dokos/hrms/cycle-de-vie/training-program",{"title":592,"_path":593},"Résultat de la formation","/dokos/hrms/cycle-de-vie/training-result",{"title":595,"_path":596},"Demande de déplacement","/dokos/hrms/cycle-de-vie/travel-request",{"title":598,"_path":599},"Véhicule","/dokos/hrms/cycle-de-vie/vehicle",{"title":601,"_path":602},"Journal du véhicule","/dokos/hrms/cycle-de-vie/vehicle-log",{"title":604,"_path":605,"children":606},"Recrutement","/dokos/hrms/recrutement",[607,610,613,616,619],{"title":608,"_path":609},"Entretiens","/dokos/hrms/recrutement/job-interview",{"title":611,"_path":612},"Candidatures et recommandations","/dokos/hrms/recrutement/job-applicant",{"title":614,"_path":615},"Promesse d'embauche et proposition de poste","/dokos/hrms/recrutement/job-offer",{"title":617,"_path":618},"Offre d'emploi","/dokos/hrms/recrutement/job-opening",{"title":620,"_path":621},"Gestion des plans de dotation et des demandes de création de poste","/dokos/hrms/recrutement/staffing-plan",{"title":623,"_path":624},"Notes de frais","/dokos/hrms/notes-de-frais",{"title":626,"_path":627,"children":628},"Congés","/dokos/hrms/conges",[629,630,633,636,639,642,645,648],{"title":626,"_path":627},{"title":631,"_path":632},"Paramètres des congés","/dokos/hrms/conges/parametres-des-conges",{"title":634,"_path":635},"Allocation de congé","/dokos/hrms/conges/allocation-conges",{"title":637,"_path":638},"Demande de congé","/dokos/hrms/conges/demande-conges",{"title":640,"_path":641},"Demande de congé compensatoire","/dokos/hrms/conges/conges-compensatoires",{"title":643,"_path":644},"Période de congés","/dokos/hrms/conges/periode-conges",{"title":646,"_path":647},"Politique de congés","/dokos/hrms/conges/politique-conges",{"title":649,"_path":650},"Congés accumulés à encaisser","/dokos/hrms/conges/encaissement-conges",{"title":652,"_path":653},"Application mobile RH","/dokos/hrms/application-mobile-rh",{"title":655,"_path":656,"children":657},"Paie","/dokos/hrms/paie",[658,659,662,665,668,671,674,677,680,683,686,689,692,695,698,701,704,707,710,713,716],{"title":655,"_path":656},{"title":660,"_path":661},"Salaire supplémentaire","/dokos/hrms/paie/additional-salary",{"title":663,"_path":664},"Avance versées aux employés","/dokos/hrms/paie/employee-advance",{"title":666,"_path":667},"Demande d'avantages sociaux","/dokos/hrms/paie/employee-benefit-application",{"title":669,"_path":670},"Requête d'avantages sociaux","/dokos/hrms/paie/employee-benefit-claim",{"title":672,"_path":673},"Intéressement des employés","/dokos/hrms/paie/employee-incentive",{"title":675,"_path":676},"Autres revenus de l'employé","/dokos/hrms/paie/employee-other-income",{"title":678,"_path":679},"Catégorie d'exonération fiscale des employés","/dokos/hrms/paie/employee-tax-exemption-category",{"title":681,"_path":682},"Déclaration d'exemption de taxe","/dokos/hrms/paie/employee-tax-exemption-declaration",{"title":684,"_path":685},"Soumission d'une preuve d'exemption de taxe","/dokos/hrms/paie/employee-tax-exemption-proof-submission",{"title":687,"_path":688},"Sous-catégorie d'exonération de taxe","/dokos/hrms/paie/employee-tax-exemption-sub-category",{"title":690,"_path":691},"Tranche d'impôt sur le revenu","/dokos/hrms/paie/income-tax-slab",{"title":693,"_path":694},"Entrée de la paie","/dokos/hrms/paie/payroll-entry",{"title":696,"_path":697},"Gestion de la paie","/dokos/hrms/paie/payroll-intro",{"title":699,"_path":700},"Période de paie","/dokos/hrms/paie/payroll-period",{"title":702,"_path":703},"Paramètres de Paie","/dokos/hrms/paie/payroll-settings",{"title":705,"_path":706},"Prime de fidélisation","/dokos/hrms/paie/retention-bonus",{"title":708,"_path":709},"Composante salariale","/dokos/hrms/paie/salary-component",{"title":711,"_path":712},"Fiche de paie","/dokos/hrms/paie/salary-slip",{"title":714,"_path":715},"Grille des salaires","/dokos/hrms/paie/salary-structure",{"title":717,"_path":718},"Attribution de la structure salariale","/dokos/hrms/paie/salary-structure-assignment",{"title":720,"_path":721,"icon":722},"API","/dokos/hrms/api","i-carbon-api-1",{"title":724,"_path":725,"children":726},"Versions","/dokos/hrms/versions",[727],{"title":728,"_path":729,"children":730},"Version 4","/dokos/hrms/versions/v2.x.x",[731,734],{"title":732,"_path":733},"v2.0.0","/dokos/hrms/versions/v2.x.x/v2_0_0",{"title":735,"_path":736},"v2.1.0","/dokos/hrms/versions/v2.x.x/v2_1_0","i-mdi-human-capacity-increase",{"title":739,"_path":740,"children":741,"icon":793},"Lieu","/dokos/lieu",[742,744,747,758,761,764,767,770,773,776,790],{"title":743,"_path":740},"Gestion d'un lieu",{"title":745,"_path":746},"Paramètres du lieu","/dokos/lieu/parametres-lieu",{"title":748,"_path":749,"children":750},"Réservations","/dokos/lieu/reservations",[751,752,755],{"title":748,"_path":749},{"title":753,"_path":754},"Réservations de ressources","/dokos/lieu/reservations/reservations-articles",{"title":756,"_path":757},"Contrats","/dokos/lieu/reservations/contrats-bookings",{"title":759,"_path":760},"Crédits de réservation","/dokos/lieu/credit-reservation",{"title":762,"_path":763},"Événements","/dokos/lieu/evenements",{"title":765,"_path":766},"Poste d'événement","/dokos/lieu/poste-evenement",{"title":768,"_path":769},"Badges","/dokos/lieu/badges",{"title":771,"_path":772},"Abonnements et réservations limitées","/dokos/lieu/abonnement-reservation",{"title":774,"_path":775},"Gestion de lieux multiples","/dokos/lieu/multi-societe",{"title":777,"_path":778,"children":779},"Portail utilisateur","/dokos/lieu/portails",[780,781,784,787],{"title":777,"_path":778},{"title":782,"_path":783},"Formulaire Inscription Lieu","/dokos/lieu/portails/formulaire-inscription-lieu",{"title":785,"_path":786},"Trombinoscope","/dokos/lieu/portails/trombinoscope",{"title":788,"_path":789},"Formulaire d'adhésion à une association","/dokos/lieu/portails/formulaire-adhesion",{"title":791,"_path":792},"Exemple de cas d'usage","/dokos/lieu/cas-usage","i-material-symbols-location-on-outline-rounded",{"title":795,"_path":796,"children":797,"icon":805},"Portail & eCommerce","/dokos/e-commerce",[798,799,802],{"title":98,"_path":796},{"title":800,"_path":801},"Site e-commerce","/dokos/e-commerce/parametres",{"title":803,"_path":804},"Portail","/dokos/e-commerce/portal-settings","i-gg-website",{"title":807,"_path":808,"children":809,"icon":821},"Chantiers","/dokos/chantiers",[810,812,815,818],{"title":811,"_path":808},"Gestion de chantiers",{"title":813,"_path":814},"Vue Chantiers dédiée pour les tables d'articles","/dokos/chantiers/vue-chantiers",{"title":816,"_path":817},"Factures de situation","/dokos/chantiers/factures-situation",{"title":819,"_path":820},"Outils","/dokos/chantiers/outils","i-healthicons-construction-worker",{"title":823,"_path":824,"children":825,"icon":874},"Intégrations","/dokos/integrations",[826,829,832,835,838,841,844,847,850,853,856,859,862,865,868,871],{"title":827,"_path":824,"icon":828},"Intégrations Dokos","i-mdi-star-outline",{"title":830,"_path":831},"Intégration Agicap","/dokos/integrations/agicap",{"title":833,"_path":834},"Amazon MWS","/dokos/integrations/amazon-mws",{"title":836,"_path":837},"Amazon S3","/dokos/integrations/amazon-s3",{"title":839,"_path":840},"Discord","/dokos/integrations/discord",{"title":842,"_path":843},"Dropbox","/dokos/integrations/dropbox",{"title":845,"_path":846},"Google","/dokos/integrations/google",{"title":848,"_path":849},"Google Agenda","/dokos/integrations/google-calendar",{"title":851,"_path":852},"Google Chat","/dokos/integrations/google-chat",{"title":854,"_path":855},"Google Contacts","/dokos/integrations/google-contacts",{"title":857,"_path":858},"Google Drive","/dokos/integrations/google-drive",{"title":860,"_path":861},"Mattermost","/dokos/integrations/mattermost",{"title":863,"_path":864},"Rocket Chat","/dokos/integrations/rocket-chat",{"title":866,"_path":867},"Shopify","/dokos/integrations/shopify",{"title":869,"_path":870},"Slack","/dokos/integrations/slack",{"title":872,"_path":873},"Zapier","/dokos/integrations/zapier","i-mdi-connection",{"title":876,"_path":877,"children":878,"icon":897},"Cas d'usage","/dokos/cas-usage",[879,882,885,888,891,894],{"title":880,"_path":881},"Ajouter / Masquer un champ dans un formulaire","/dokos/cas-usage/customization-form",{"title":883,"_path":884},"Ajouter un champ -- Statut envoi d'email","/dokos/cas-usage/email-sent",{"title":886,"_path":887},"Exonération de TVA","/dokos/cas-usage/exemption-vat",{"title":889,"_path":890},"Rapports SQL","/dokos/cas-usage/query-report",{"title":892,"_path":893},"Revue de Presse","/dokos/cas-usage/revue-de-presse",{"title":895,"_path":896},"Rapport de type Script","/dokos/cas-usage/script-report","i-iconoir-cinema-old",{"title":899,"_path":900,"icon":901},"Tutoriels en vidéo","/dokos/tutoriels","i-ic-round-ondemand-video",{"title":903,"_path":904,"icon":905},"Comparaison entre Dokos et ERPNext","/dokos/comparaison-erpnext","i-mdi-vector-difference",{"title":724,"_path":907,"children":908,"icon":1113},"/dokos/versions",[909,921,1033,1094],{"title":728,"_path":910,"children":911},"/dokos/versions/v4.x.x",[912,915,918],{"title":913,"_path":914},"v4.0.0","/dokos/versions/v4.x.x/v4_0_0",{"title":916,"_path":917},"v4.1.0","/dokos/versions/v4.x.x/v4_1_0",{"title":919,"_path":920},"v4.2.0","/dokos/versions/v4.x.x/v4_2_0",{"title":922,"_path":923,"children":924},"Version 3","/dokos/versions/v3.x.x",[925,928,931,934,937,940,943,946,949,952,955,958,961,964,967,970,973,976,979,982,985,988,991,994,997,1000,1003,1006,1009,1012,1015,1018,1021,1024,1027,1030],{"title":926,"_path":927},"v3.0.0","/dokos/versions/v3.x.x/v3_0_0",{"title":929,"_path":930},"v3.1.0","/dokos/versions/v3.x.x/v3_1_0",{"title":932,"_path":933},"v3.2.0","/dokos/versions/v3.x.x/v3_2_0",{"title":935,"_path":936},"v3.3.0","/dokos/versions/v3.x.x/v3_3_0",{"title":938,"_path":939},"v3.4.0","/dokos/versions/v3.x.x/v3_4_0",{"title":941,"_path":942},"v3.5.0","/dokos/versions/v3.x.x/v3_5_0",{"title":944,"_path":945},"v3.6.0","/dokos/versions/v3.x.x/v3_6_0",{"title":947,"_path":948},"v3.7.0","/dokos/versions/v3.x.x/v3_7_0",{"title":950,"_path":951},"v3.8.0","/dokos/versions/v3.x.x/v3_8_0",{"title":953,"_path":954},"v3.9.0","/dokos/versions/v3.x.x/v3_9_0",{"title":956,"_path":957},"v3.10.0","/dokos/versions/v3.x.x/v3_10_0",{"title":959,"_path":960},"v3.11.0","/dokos/versions/v3.x.x/v3_11_0",{"title":962,"_path":963},"v3.12.0","/dokos/versions/v3.x.x/v3_12_0",{"title":965,"_path":966},"v3.13.0","/dokos/versions/v3.x.x/v3_13_0",{"title":968,"_path":969},"v3.14.0","/dokos/versions/v3.x.x/v3_14_0",{"title":971,"_path":972},"v3.15.0","/dokos/versions/v3.x.x/v3_15_0",{"title":974,"_path":975},"v3.16.0","/dokos/versions/v3.x.x/v3_16_0",{"title":977,"_path":978},"v3.17.0","/dokos/versions/v3.x.x/v3_17_0",{"title":980,"_path":981},"v3.18.0","/dokos/versions/v3.x.x/v3_18_0",{"title":983,"_path":984},"v3.19.0","/dokos/versions/v3.x.x/v3_19_0",{"title":986,"_path":987},"v3.20.0","/dokos/versions/v3.x.x/v3_20_0",{"title":989,"_path":990},"v3.21.0","/dokos/versions/v3.x.x/v3_21_0",{"title":992,"_path":993},"v3.22.0","/dokos/versions/v3.x.x/v3_22_0",{"title":995,"_path":996},"v3.23.0","/dokos/versions/v3.x.x/v3_23_0",{"title":998,"_path":999},"v3.24.0","/dokos/versions/v3.x.x/v3_24_0",{"title":1001,"_path":1002},"v3.25.0","/dokos/versions/v3.x.x/v3_25_0",{"title":1004,"_path":1005},"v3.26.0","/dokos/versions/v3.x.x/v3_26_0",{"title":1007,"_path":1008},"v3.27.0","/dokos/versions/v3.x.x/v3_27_0",{"title":1010,"_path":1011},"v3.28.0","/dokos/versions/v3.x.x/v3_28_0",{"title":1013,"_path":1014},"v3.29.0","/dokos/versions/v3.x.x/v3_29_0",{"title":1016,"_path":1017},"v3.30.0","/dokos/versions/v3.x.x/v3_30_0",{"title":1019,"_path":1020},"v3.31.0","/dokos/versions/v3.x.x/v3_31_0",{"title":1022,"_path":1023},"v3.32.0","/dokos/versions/v3.x.x/v3_32_0",{"title":1025,"_path":1026},"v3.33.0","/dokos/versions/v3.x.x/v3_33_0",{"title":1028,"_path":1029},"v3.34.0","/dokos/versions/v3.x.x/v3_34_0",{"title":1031,"_path":1032},"v3.35.0","/dokos/versions/v3.x.x/v3_35_0",{"title":1034,"_path":1035,"children":1036},"Version 2","/dokos/versions/v2.x.x",[1037,1040,1043,1046,1049,1052,1055,1058,1061,1064,1067,1070,1073,1076,1079,1082,1085,1088,1091],{"title":1038,"_path":1039},"V2.0.0","/dokos/versions/v2.x.x/v2_0_0",{"title":1041,"_path":1042},"V2.1.0","/dokos/versions/v2.x.x/v2_1_0",{"title":1044,"_path":1045},"V2.2.0","/dokos/versions/v2.x.x/v2_2_0",{"title":1047,"_path":1048},"V2.3.0","/dokos/versions/v2.x.x/v2_3_0",{"title":1050,"_path":1051},"V2.4.0","/dokos/versions/v2.x.x/v2_4_0",{"title":1053,"_path":1054},"V2.5.0","/dokos/versions/v2.x.x/v2_5_0",{"title":1056,"_path":1057},"V2.6.0","/dokos/versions/v2.x.x/v2_6_0",{"title":1059,"_path":1060},"V2.7.0","/dokos/versions/v2.x.x/v2_7_0",{"title":1062,"_path":1063},"V2.8.0","/dokos/versions/v2.x.x/v2_8_0",{"title":1065,"_path":1066},"V2.9.0","/dokos/versions/v2.x.x/v2_9_0",{"title":1068,"_path":1069},"V2.10.0","/dokos/versions/v2.x.x/v2_10_0",{"title":1071,"_path":1072},"V2.11.0","/dokos/versions/v2.x.x/v2_11_0",{"title":1074,"_path":1075},"V2.12.0","/dokos/versions/v2.x.x/v2_12_0",{"title":1077,"_path":1078},"V2.13.0","/dokos/versions/v2.x.x/v2_13_0",{"title":1080,"_path":1081},"V2.14.0","/dokos/versions/v2.x.x/v2_14_0",{"title":1083,"_path":1084},"V2.15.0","/dokos/versions/v2.x.x/v2_15_0",{"title":1086,"_path":1087},"V2.16.0","/dokos/versions/v2.x.x/v2_16_0",{"title":1089,"_path":1090},"V2.17.0","/dokos/versions/v2.x.x/v2_17_0",{"title":1092,"_path":1093},"V2.18.0","/dokos/versions/v2.x.x/v2_18_0",{"title":1095,"_path":1096,"children":1097},"Version 1","/dokos/versions/v1.x.x",[1098,1101,1104,1107,1110],{"title":1099,"_path":1100},"v1.0.0","/dokos/versions/v1.x.x/v1_0_0",{"title":1102,"_path":1103},"v1.1.0","/dokos/versions/v1.x.x/v1_1_0",{"title":1105,"_path":1106},"v1.2.0","/dokos/versions/v1.x.x/v1_2_0",{"title":1108,"_path":1109},"v1.3.0","/dokos/versions/v1.x.x/v1_3_0",{"title":1111,"_path":1112},"v1.4.0","/dokos/versions/v1.x.x/v1_4_0","i-system-uicons-versions",{"title":720,"_path":1115,"icon":722},"/dokos/api",{"title":1117,"_path":1118,"children":1119},"Généralités","/dokos/generalites",[1120,1121,1124,1127,1130,1133,1136,1139,1142,1145],{"title":1117,"_path":1118},{"title":1122,"_path":1123},"Les outils pratiques","/dokos/generalites/administration_outils_pratiques",{"title":1125,"_path":1126},"Les documents","/dokos/generalites/les_documents",{"title":1128,"_path":1129},"Les espaces de travail","/dokos/generalites/les_espaces_de_travail",{"title":1131,"_path":1132},"Les outils diagnostic","/dokos/generalites/les_outils_diagnostic",{"title":1134,"_path":1135},"Les paramètres systèmes","/dokos/generalites/les_parametres_systemes",{"title":1137,"_path":1138},"Les utilisateurs","/dokos/generalites/les_utilisateurs",{"title":1140,"_path":1141},"Personnalisation de l'interface","/dokos/generalites/personnaliser_l_interface",{"title":1143,"_path":1144},"La gestion des utilisateurs","/dokos/generalites/roles_et_autorisations",{"title":1146,"_path":1147},"Le tableau de bord Administratif","/dokos/generalites/tableau_de_bord_administratif","i-ic-twotone-area-chart",{"title":1150,"_path":1151,"children":1152,"icon":1482},"Framework","/dodock",[1153,1154,1158,1187,1226,1483,1582,1595,1778],{"title":496,"_path":1151,"icon":10},{"title":1155,"_path":1156,"icon":1157},"Architecture","/dodock/architecture","i-icon-park-outline-building-four",{"title":1159,"_path":1160,"children":1161,"icon":1186},"Installation","/dodock/installation",[1162,1163,1166,1169,1172],{"title":1159,"_path":1160},{"title":1164,"_path":1165},"Installation standard","/dodock/installation/manuelle",{"title":1167,"_path":1168},"Installation Docker","/dodock/installation/docker",{"title":1170,"_path":1171},"Installation Ubuntu 22","/dodock/installation/ubuntu-22",{"title":1173,"_path":1174,"children":1175,"icon":1185},"Plus de méthodes","/dodock/installation/plus",[1176,1179,1182],{"title":1177,"_path":1178},"Docker personnalisé","/dodock/installation/plus/docker-personnalise",{"title":1180,"_path":1181},"Installation sur RHEL","/dodock/installation/plus/installation-rhel-8-9",{"title":1183,"_path":1184},"Installation par script","/dodock/installation/plus/script-bash","i-icon-park-outline-add-four","i-icon-park-outline-install",{"title":1188,"_path":1189,"children":1190,"icon":1225},"Administration","/dodock/administration",[1191,1192,1195,1198,1201,1204,1207,1210,1213,1216,1219,1222],{"title":1188,"_path":1189},{"title":1193,"_path":1194},"Bench","/dodock/administration/bench",{"title":1196,"_path":1197},"Multi-tenant","/dodock/administration/domaine",{"title":1199,"_path":1200},"Installer une application","/dodock/administration/installer-une-application",{"title":1202,"_path":1203},"Mises à jour","/dodock/administration/mises-a-jour",{"title":1205,"_path":1206},"Configuration des emails","/dodock/administration/emails",{"title":1208,"_path":1209},"Certificat SSL","/dodock/administration/certificat",{"title":1211,"_path":1212},"Migrer vers la version 3 de Dokos","/dodock/administration/migration-v3",{"title":1214,"_path":1215},"Migrer vers la version 4 de Dokos","/dodock/administration/migration-v4",{"title":1217,"_path":1218},"Migrer vers la version 5 de Dokos","/dodock/administration/migration-v5",{"title":1220,"_path":1221},"Migrer depuis ERPNext","/dodock/administration/migration-erpnext",{"title":1223,"_path":1224},"Commandes","/dodock/administration/commandes","i-clarity-administrator-line",{"title":1227,"_path":1228,"children":1229,"icon":1482},"Fonctionnalités","/dodock/fonctionnalites",[1230,1232,1262,1264,1298,1332,1362,1396,1412,1415,1435,1458,1461,1463,1466],{"title":1231,"_path":1228},"Fonctionnalités de base",{"title":1233,"_path":1234,"children":1235},"Utilisateurs","/dodock/fonctionnalites/utilisateurs",[1236,1238,1241,1244,1247,1250,1253,1256,1259],{"title":1233,"_path":1237},"/dodock/fonctionnalites/utilisateurs/utilisateurs",{"title":1239,"_path":1240},"Rôle et profil de rôle","/dodock/fonctionnalites/utilisateurs/roles",{"title":1242,"_path":1243},"Autorisations basées sur les rôles","/dodock/fonctionnalites/utilisateurs/role-et-autorisations",{"title":1245,"_path":1246},"Autorisations des utilisateurs","/dodock/fonctionnalites/utilisateurs/autorisations-utilisateur",{"title":1248,"_path":1249},"Autorisation de rôle pour la page et le rapport","/dodock/fonctionnalites/utilisateurs/autorisations-pages-rapports",{"title":1251,"_path":1252},"Administrateur","/dodock/fonctionnalites/utilisateurs/administrateur",{"title":1254,"_path":1255},"Configurer l'authentification à double facteur","/dodock/fonctionnalites/utilisateurs/2fa",{"title":1257,"_path":1258},"Partager un document","/dodock/fonctionnalites/utilisateurs/partager-un-document",{"title":1260,"_path":1261},"Utilisateur limité","/dodock/fonctionnalites/utilisateurs/utilisateurs-limites",{"title":85,"_path":1263},"/dodock/fonctionnalites/workflows",{"title":1265,"_path":1266,"children":1267},"Personnalisations","/dodock/fonctionnalites/personnalisations",[1268,1271,1274,1277,1280,1283,1286,1289,1292,1295],{"title":1269,"_path":1270},"Personnalisation des documents","/dodock/fonctionnalites/personnalisations/doctype",{"title":1272,"_path":1273},"Workspaces","/dodock/fonctionnalites/personnalisations/workspaces",{"title":1275,"_path":1276},"Tableau de bord","/dodock/fonctionnalites/personnalisations/dashboard",{"title":1278,"_path":1279},"Scripts Python","/dodock/fonctionnalites/personnalisations/server_script",{"title":1281,"_path":1282},"Scripts Client","/dodock/fonctionnalites/personnalisations/client_script",{"title":1284,"_path":1285},"Modèles Jinja","/dodock/fonctionnalites/personnalisations/jinja_templates",{"title":1287,"_path":1288},"Packages","/dodock/fonctionnalites/personnalisations/packages",{"title":1290,"_path":1291},"Vue du Calendrier","/dodock/fonctionnalites/personnalisations/vue-calendrier",{"title":1293,"_path":1294},"Traductions personnalisées","/dodock/fonctionnalites/personnalisations/traductions-personnalisees",{"title":1296,"_path":1297},"Paquets","/dodock/fonctionnalites/personnalisations/paquets",{"title":819,"_path":1299,"children":1300},"/dodock/fonctionnalites/outils",[1301,1304,1307,1309,1312,1315,1317,1320,1323,1326,1329],{"title":1302,"_path":1303},"Liste à faire","/dodock/fonctionnalites/outils/todo",{"title":1305,"_path":1306},"Notes","/dodock/fonctionnalites/outils/note",{"title":762,"_path":1308},"/dodock/fonctionnalites/outils/evenement",{"title":1310,"_path":1311},"Fichier","/dodock/fonctionnalites/outils/fichier",{"title":1313,"_path":1314},"Groupe Email","/dodock/fonctionnalites/outils/groupe-email",{"title":239,"_path":1316},"/dodock/fonctionnalites/outils/newsletter",{"title":1318,"_path":1319},"Répétition automatique","/dodock/fonctionnalites/outils/repetition-automatique",{"title":1321,"_path":1322},"Regle Attribution","/dodock/fonctionnalites/outils/regle-attribution",{"title":1324,"_path":1325},"Jalons","/dodock/fonctionnalites/outils/jalons",{"title":1327,"_path":1328},"Mise à jour en masse","/dodock/fonctionnalites/outils/mise-a-jour-en-masse",{"title":1330,"_path":1331},"Points d'énergie","/dodock/fonctionnalites/outils/points-energie",{"title":1333,"_path":1334,"children":1335},"Site Web","/dodock/fonctionnalites/site-web",[1336,1339,1342,1345,1348,1351,1354,1357,1359],{"title":1337,"_path":1338},"Paramètres du site web","/dodock/fonctionnalites/site-web/parametres-site-web",{"title":1340,"_path":1341},"Page web","/dodock/fonctionnalites/site-web/page-web",{"title":1343,"_path":1344},"Thème du site web","/dodock/fonctionnalites/site-web/theme-site-web",{"title":1346,"_path":1347},"Formulaires web","/dodock/fonctionnalites/site-web/formulaire-web",{"title":1349,"_path":1350},"Pages \"À Propos\" et \"Formulaire de Contact\"","/dodock/fonctionnalites/site-web/pages-standard",{"title":1352,"_path":1353},"Blog","/dodock/fonctionnalites/site-web/blog",{"title":1355,"_path":1356},"Articles Aide","/dodock/fonctionnalites/site-web/articles-aide",{"title":803,"_path":1358},"/dodock/fonctionnalites/site-web/portail",{"title":1360,"_path":1361},"Donnees Personnelles","/dodock/fonctionnalites/site-web/donnees-personnelles",{"title":1363,"_path":1364,"children":1365},"Bureau","/dodock/fonctionnalites/bureau",[1366,1369,1381,1384,1387,1390,1393],{"title":1367,"_path":1368},"Espaces Travail","/dodock/fonctionnalites/bureau/espaces-travail",{"title":1370,"_path":1371,"children":1372},"Tableaux de bord","/dodock/fonctionnalites/bureau/tableaux-de-bord",[1373,1375,1378],{"title":1275,"_path":1374},"/dodock/fonctionnalites/bureau/tableaux-de-bord/vue-tableau-bord",{"title":1376,"_path":1377},"Graphiques Tableau Bord","/dodock/fonctionnalites/bureau/tableaux-de-bord/graphiques-tableau-bord",{"title":1379,"_path":1380},"Cartes Statistiques","/dodock/fonctionnalites/bureau/tableaux-de-bord/cartes-statistiques",{"title":1382,"_path":1383},"Onboarding","/dodock/fonctionnalites/bureau/onboarding",{"title":1385,"_path":1386},"Vue Calendrier","/dodock/fonctionnalites/bureau/vue-calendrier",{"title":1388,"_path":1389},"Console Systeme","/dodock/fonctionnalites/bureau/console-systeme",{"title":1391,"_path":1392},"Cartes de résumé","/dodock/fonctionnalites/bureau/carte-de-resume",{"title":1394,"_path":1395},"Visites Guidées","/dodock/fonctionnalites/bureau/visites-guidees",{"title":1397,"_path":1398,"children":1399},"Adresses & Contacts","/dodock/fonctionnalites/contacts-adresses",[1400,1403,1406,1409],{"title":1401,"_path":1402},"Contact","/dodock/fonctionnalites/contacts-adresses/contacts",{"title":1404,"_path":1405},"Genres","/dodock/fonctionnalites/contacts-adresses/genres",{"title":1407,"_path":1408},"Salutation","/dodock/fonctionnalites/contacts-adresses/salutation",{"title":1410,"_path":1411},"Adresses","/dodock/fonctionnalites/contacts-adresses/addresses",{"title":1413,"_path":1414},"Référentiel","/dodock/fonctionnalites/referentiel-pays-et-devises",{"title":1416,"_path":1417,"children":1418},"Impressions","/dodock/fonctionnalites/impression",[1419,1420,1423,1426,1429,1432],{"title":1416,"_path":1417},{"title":1421,"_path":1422},"Formats d'impression","/dodock/fonctionnalites/impression/format-impression",{"title":1424,"_path":1425},"En-tête de lettre","/dodock/fonctionnalites/impression/en-tete",{"title":1427,"_path":1428},"Paramètres d'impression","/dodock/fonctionnalites/impression/parametres-impression",{"title":1430,"_path":1431},"Style d'impression","/dodock/fonctionnalites/impression/style-impression",{"title":1433,"_path":1434},"Impression Brute","/dodock/fonctionnalites/impression/impression-brute",{"title":823,"_path":1436,"children":1437},"/dodock/fonctionnalites/integrations",[1438,1439,1442,1445,1448,1451,1453,1456],{"title":823,"_path":1436},{"title":1440,"_path":1441},"Oauth","/dodock/fonctionnalites/integrations/oauth",{"title":1443,"_path":1444},"Connecteurs Sociaux","/dodock/fonctionnalites/integrations/connecteurs-sociaux",{"title":1446,"_path":1447},"Ldap","/dodock/fonctionnalites/integrations/ldap",{"title":1449,"_path":1450},"Demandes Integrations","/dodock/fonctionnalites/integrations/demandes-integrations",{"title":845,"_path":1452},"/dodock/fonctionnalites/integrations/google",{"title":1454,"_path":1455},"S3","/dodock/fonctionnalites/integrations/s3",{"title":842,"_path":1457},"/dodock/fonctionnalites/integrations/dropbox",{"title":1459,"_path":1460},"Webhooks","/dodock/fonctionnalites/webhooks",{"title":76,"_path":1462},"/dodock/fonctionnalites/notifications",{"title":1464,"_path":1465},"Nommage des Documents","/dodock/fonctionnalites/nommage",{"title":1467,"_path":1468,"children":1469},"Concepts","/dodock/fonctionnalites/concepts",[1470,1473,1476,1479],{"title":1471,"_path":1472},"Espace de travail","/dodock/fonctionnalites/concepts/espace-de-travail",{"title":1474,"_path":1475},"Page","/dodock/fonctionnalites/concepts/page",{"title":1477,"_path":1478},"Rapport","/dodock/fonctionnalites/concepts/rapport",{"title":1480,"_path":1481},"Type De Document","/dodock/fonctionnalites/concepts/type-de-document","i-carbon-container-software",{"title":1484,"_path":1485,"children":1486,"icon":1581},"Développement","/dodock/ressources",[1487,1541,1552,1563,1571,1578],{"title":720,"_path":1488,"children":1489},"/dodock/ressources/api",[1490,1493,1496,1499,1502,1538],{"title":1491,"_path":1492},"API de documents","/dodock/ressources/api/document_api",{"title":1494,"_path":1495},"API Base de données","/dodock/ressources/api/database_api",{"title":1497,"_path":1498},"API Rest","/dodock/ressources/api/rest_api",{"title":1500,"_path":1501},"API Jinja","/dodock/ressources/api/jinja_api",{"title":1503,"_path":1504,"children":1505},"Exemples","/dodock/ressources/api/exemples",[1506,1509,1512,1515,1518,1521,1524,1527,1529,1532,1535],{"title":1507,"_path":1508},"Créer une réservation d'article via l'API avec Postman","/dodock/ressources/api/exemples/order_item",{"title":1510,"_path":1511},"Créer une commande client via l'API avec Postman","/dodock/ressources/api/exemples/make_order",{"title":1513,"_path":1514},"Contacts","/dodock/ressources/api/exemples/get_contact_list",{"title":1516,"_path":1517},"Récupérer la liste des contacts et adresses associées à un client","/dodock/ressources/api/exemples/get-contacts-addresses",{"title":1519,"_path":1520},"Créer une réservation d'article via l'API","/dodock/ressources/api/exemples/item-booking-call",{"title":1522,"_path":1523},"Python Database API","/dodock/ressources/api/exemples/python-database-api",{"title":1525,"_path":1526},"Python Documents API","/dodock/ressources/api/exemples/python-documents-api",{"title":1500,"_path":1528},"/dodock/ressources/api/exemples/python-jinja-api",{"title":1530,"_path":1531},"Table of content","/dodock/ressources/api/exemples/readme",{"title":1533,"_path":1534},"REST API","/dodock/ressources/api/exemples/rest-api",{"title":1536,"_path":1537},"Création d'une commande client via l'API","/dodock/ressources/api/exemples/sales-order-call",{"title":1539,"_path":1540,"icon":722},"Ressources","/dodock/ressources/api/ressources",{"title":1467,"_path":1542,"children":1543},"/dodock/ressources/concepts",[1544,1547,1549],{"title":1545,"_path":1546},"Type de document","/dodock/ressources/concepts/doctype",{"title":1284,"_path":1548},"/dodock/ressources/concepts/modeles-jinja",{"title":1550,"_path":1551},"Scripts serveur Python","/dodock/ressources/concepts/scripts-python",{"title":1553,"_path":1554,"children":1555},"Champs (DocField)","/dodock/ressources/docfield",[1556,1559],{"title":1557,"_path":1558},"Joindre/Joindre une image","/dodock/ressources/docfield/attach",{"title":1560,"_path":1561,"icon":1562},"Tous les DocFields","/dodock/ressources/docfield/frappe","i-mdi-arrow-up-right",{"title":1564,"_path":1565,"children":1566},"Applications personnalisées","/dodock/ressources/custom-app",[1567,1568],{"title":1564,"_path":1565},{"title":1569,"_path":1570},"Champs additionels","/dodock/ressources/custom-app/custom-fields",{"title":1572,"_path":1573,"children":1574},"Questions fréquentes","/dodock/ressources/faq",[1575],{"title":1576,"_path":1577},"Filtres","/dodock/ressources/faq/filtres",{"title":1579,"_path":1580},"Frappe","/dodock/ressources/frappe","i-heroicons-code-bracket-16-solid",{"title":1583,"_path":1584,"children":1585,"icon":1594},"Contribuer","/dodock/contribuer",[1586,1588,1591],{"title":1587,"_path":1584},"Un logiciel Open-source",{"title":1589,"_path":1590},"Traductions","/dodock/contribuer/traductions",{"title":1592,"_path":1593},"Documentation","/dodock/contribuer/documentation","i-mdi-open-source-initiative",{"title":724,"_path":1596,"children":1597,"icon":1113},"/dodock/versions",[1598,1613,1730,1765],{"title":728,"_path":1599,"children":1600},"/dodock/versions/v4.x.x",[1601,1603,1605,1607,1610],{"title":913,"_path":1602},"/dodock/versions/v4.x.x/v4_0_0",{"title":916,"_path":1604},"/dodock/versions/v4.x.x/v4_1_0",{"title":919,"_path":1606},"/dodock/versions/v4.x.x/v4_2_0",{"title":1608,"_path":1609},"v4.3.0","/dodock/versions/v4.x.x/v4_3_0",{"title":1611,"_path":1612},"v4.4.0","/dodock/versions/v4.x.x/v4_4_0",{"title":922,"_path":1614,"children":1615},"/dodock/versions/v3.x.x",[1616,1619,1622,1625,1628,1631,1634,1637,1640,1643,1646,1649,1652,1655,1658,1661,1664,1667,1670,1673,1676,1679,1682,1685,1688,1691,1694,1697,1700,1703,1706,1709,1712,1715,1718,1721,1724,1727],{"title":1617,"_path":1618},"V3.0.0","/dodock/versions/v3.x.x/v3_0_0",{"title":1620,"_path":1621},"V3.1.0","/dodock/versions/v3.x.x/v3_1_0",{"title":1623,"_path":1624},"V3.2.0","/dodock/versions/v3.x.x/v3_2_0",{"title":1626,"_path":1627},"V3.3.0","/dodock/versions/v3.x.x/v3_3_0",{"title":1629,"_path":1630},"V3.4.0","/dodock/versions/v3.x.x/v3_4_0",{"title":1632,"_path":1633},"V3.5.0","/dodock/versions/v3.x.x/v3_5_0",{"title":1635,"_path":1636},"V3.6.0","/dodock/versions/v3.x.x/v3_6_0",{"title":1638,"_path":1639},"V3.7.0","/dodock/versions/v3.x.x/v3_7_0",{"title":1641,"_path":1642},"V3.8.0","/dodock/versions/v3.x.x/v3_8_0",{"title":1644,"_path":1645},"V3.9.0","/dodock/versions/v3.x.x/v3_9_0",{"title":1647,"_path":1648},"V3.10.0","/dodock/versions/v3.x.x/v3_10_0",{"title":1650,"_path":1651},"V3.11.0","/dodock/versions/v3.x.x/v3_11_0",{"title":1653,"_path":1654},"V3.12.0","/dodock/versions/v3.x.x/v3_12_0",{"title":1656,"_path":1657},"V3.13.0","/dodock/versions/v3.x.x/v3_13_0",{"title":1659,"_path":1660},"V3.14.0","/dodock/versions/v3.x.x/v3_14_0",{"title":1662,"_path":1663},"V3.15.0","/dodock/versions/v3.x.x/v3_15_0",{"title":1665,"_path":1666},"V3.16.0","/dodock/versions/v3.x.x/v3_16_0",{"title":1668,"_path":1669},"V3.17.0","/dodock/versions/v3.x.x/v3_17_0",{"title":1671,"_path":1672},"V3.18.0","/dodock/versions/v3.x.x/v3_18_0",{"title":1674,"_path":1675},"V3.19.0","/dodock/versions/v3.x.x/v3_19_0",{"title":1677,"_path":1678},"V3.20.0","/dodock/versions/v3.x.x/v3_20_0",{"title":1680,"_path":1681},"V3.21.0","/dodock/versions/v3.x.x/v3_21_0",{"title":1683,"_path":1684},"V3.22.0","/dodock/versions/v3.x.x/v3_22_0",{"title":1686,"_path":1687},"V3.23.0","/dodock/versions/v3.x.x/v3_23_0",{"title":1689,"_path":1690},"V3.24.0","/dodock/versions/v3.x.x/v3_24_0",{"title":1692,"_path":1693},"V3.25.0","/dodock/versions/v3.x.x/v3_25_0",{"title":1695,"_path":1696},"V3.26.0","/dodock/versions/v3.x.x/v3_26_0",{"title":1698,"_path":1699},"V3.27.0","/dodock/versions/v3.x.x/v3_27_0",{"title":1701,"_path":1702},"V3.28.0","/dodock/versions/v3.x.x/v3_28_0",{"title":1704,"_path":1705},"V3.29.0","/dodock/versions/v3.x.x/v3_29_0",{"title":1707,"_path":1708},"V3.30.0","/dodock/versions/v3.x.x/v3_30_0",{"title":1710,"_path":1711},"V3.31.0","/dodock/versions/v3.x.x/v3_31_0",{"title":1713,"_path":1714},"V3.32.0","/dodock/versions/v3.x.x/v3_32_0",{"title":1716,"_path":1717},"V3.33.0","/dodock/versions/v3.x.x/v3_33_0",{"title":1719,"_path":1720},"V3.34.0","/dodock/versions/v3.x.x/v3_34_0",{"title":1722,"_path":1723},"V3.35.0","/dodock/versions/v3.x.x/v3_35_0",{"title":1725,"_path":1726},"V3.36.0","/dodock/versions/v3.x.x/v3_36_0",{"title":1728,"_path":1729},"V3.37.0","/dodock/versions/v3.x.x/v3_37_0",{"title":1034,"_path":1731,"children":1732},"/dodock/versions/v2.x.x",[1733,1735,1737,1739,1741,1743,1745,1747,1749,1751,1753,1755,1757,1759,1761,1763],{"title":1038,"_path":1734},"/dodock/versions/v2.x.x/v2_0_0",{"title":1041,"_path":1736},"/dodock/versions/v2.x.x/v2_1_0",{"title":1044,"_path":1738},"/dodock/versions/v2.x.x/v2_2_0",{"title":1047,"_path":1740},"/dodock/versions/v2.x.x/v2_3_0",{"title":1050,"_path":1742},"/dodock/versions/v2.x.x/v2_4_0",{"title":1053,"_path":1744},"/dodock/versions/v2.x.x/v2_5_0",{"title":1056,"_path":1746},"/dodock/versions/v2.x.x/v2_6_0",{"title":1059,"_path":1748},"/dodock/versions/v2.x.x/v2_7_0",{"title":1062,"_path":1750},"/dodock/versions/v2.x.x/v2_8_0",{"title":1065,"_path":1752},"/dodock/versions/v2.x.x/v2_9_0",{"title":1068,"_path":1754},"/dodock/versions/v2.x.x/v2_10_0",{"title":1071,"_path":1756},"/dodock/versions/v2.x.x/v2_11_0",{"title":1077,"_path":1758},"/dodock/versions/v2.x.x/v2_13_0",{"title":1080,"_path":1760},"/dodock/versions/v2.x.x/v2_14_0",{"title":1083,"_path":1762},"/dodock/versions/v2.x.x/v2_15_0",{"title":1086,"_path":1764},"/dodock/versions/v2.x.x/v2_16_0",{"title":1095,"_path":1766,"children":1767},"/dodock/versions/v1.x.x",[1768,1770,1772,1774,1776],{"title":1099,"_path":1769},"/dodock/versions/v1.x.x/v1_0_0",{"title":1102,"_path":1771},"/dodock/versions/v1.x.x/v1_1_0",{"title":1105,"_path":1773},"/dodock/versions/v1.x.x/v1_2_0",{"title":1108,"_path":1775},"/dodock/versions/v1.x.x/v1_3_0",{"title":1111,"_path":1777},"/dodock/versions/v1.x.x/v1_4_0",{"title":1779,"_path":1780,"children":1781,"icon":1784},"Ecosystème Frappe","/dodock/frappe-products",[1782,1785,1789,1793,1796,1799,1802,1805,1808],{"title":1783,"_path":1780,"icon":1784},"Applications et compatibilité","i-icon-park-outline-reverse-rotation",{"title":1786,"_path":1787,"icon":1788},"Frappe Builder","/dodock/frappe-products/builder","i-icon-park-outline-application-two",{"title":1790,"_path":1791,"icon":1792},"Frappe CRM","/dodock/frappe-products/crm","flowbite:chart-solid",{"title":1794,"_path":1795},"Frappe Helpdesk","/dodock/frappe-products/helpdesk",{"title":1797,"_path":1798},"Frappe Insights","/dodock/frappe-products/insights",{"title":1800,"_path":1801},"Frappe Learning","/dodock/frappe-products/learning",{"title":1803,"_path":1804},"Print Designer","/dodock/frappe-products/print-designer",{"title":1806,"_path":1807},"Frappe Wiki","/dodock/frappe-products/wiki",{"title":1809,"_path":1810},"Raven","/dodock/frappe-products/raven",{"title":823,"_path":1812,"children":1813,"icon":874},"/integrations",[1814,1815,1854,1875,1907,1927,1943,1946],{"title":823,"_path":1812},{"title":1816,"_path":1817,"children":1818,"icon":1853},"Paiements","/integrations/payments",[1819,1821,1825,1829,1833,1837,1840,1842],{"title":1820,"_path":1817},"Payments",{"title":1822,"_path":1823,"icon":1824},"Stripe","/integrations/payments/stripe","i-fa6-brands-cc-stripe",{"title":1826,"_path":1827,"icon":1828},"Paypal","/integrations/payments/paypal","i-fa6-brands-cc-paypal",{"title":1830,"_path":1831,"icon":1832},"GoCardless","/integrations/payments/gocardless","i-simple-icons-sepa",{"title":1834,"_path":1835,"icon":1836},"Stancer","/integrations/payments/stancer","i-simple-icons-contactlesspayment",{"title":1838,"_path":1839,"icon":1836},"HelloAsso","/integrations/payments/helloasso",{"title":720,"_path":1841,"icon":722},"/integrations/payments/api",{"title":724,"_path":1843,"children":1844,"icon":1113},"/integrations/payments/versions",[1845],{"title":1095,"_path":1846,"children":1847},"/integrations/payments/versions/v1.x.x",[1848,1851],{"title":1849,"_path":1850},"v1.0.1","/integrations/payments/versions/v1.x.x/v1_0_0",{"title":1102,"_path":1852},"/integrations/payments/versions/v1.x.x/v1_1_0","i-fluent-payment-20-filled",{"title":1855,"_path":1856,"children":1857,"icon":1874},"Signature Electronique","/integrations/esignature",[1858,1860,1864,1866],{"title":1859,"_path":1856},"eSignature",{"title":1861,"_path":1862,"icon":1863},"Adobe Sign","/integrations/esignature/adobe-sign","i-ic-outline-adobe",{"title":720,"_path":1865,"icon":722},"/integrations/esignature/api",{"title":724,"_path":1867,"children":1868,"icon":1113},"/integrations/esignature/versions",[1869],{"title":1095,"_path":1870,"children":1871},"/integrations/esignature/versions/v1.x.x",[1872],{"title":1099,"_path":1873},"/integrations/esignature/versions/v1.x.x/v1_0_0","i-fluent-signature-20-filled",{"title":1876,"_path":1877,"children":1878,"icon":1906},"WooCommerce","/integrations/woocommerce",[1879,1880,1882,1885,1887],{"title":98,"_path":1877},{"title":12,"_path":1881},"/integrations/woocommerce/woocommerce_settings",{"title":1883,"_path":1884},"WooCommerce Bookings","/integrations/woocommerce/woocommerce-bookings",{"title":720,"_path":1886,"icon":722},"/integrations/woocommerce/api",{"title":724,"_path":1888,"children":1889,"icon":1113},"/integrations/woocommerce/versions",[1890],{"title":1095,"_path":1891,"children":1892},"/integrations/woocommerce/versions/v1.x.x",[1893,1895,1897,1899,1901,1903],{"title":1099,"_path":1894},"/integrations/woocommerce/versions/v1.x.x/v1_0_0",{"title":1102,"_path":1896},"/integrations/woocommerce/versions/v1.x.x/v1_1_0",{"title":1105,"_path":1898},"/integrations/woocommerce/versions/v1.x.x/v1_2_0",{"title":1108,"_path":1900},"/integrations/woocommerce/versions/v1.x.x/v1_3_0",{"title":1111,"_path":1902},"/integrations/woocommerce/versions/v1.x.x/v1_4_0",{"title":1904,"_path":1905},"v1.5.0","/integrations/woocommerce/versions/v1.x.x/v1_5_0","i-devicon-plain-woocommerce",{"title":1908,"_path":1909,"children":1910,"icon":1926},"Hiboutik","/integrations/hiboutik",[1911,1912,1914],{"title":1908,"_path":1909},{"title":720,"_path":1913,"icon":722},"/integrations/hiboutik/api",{"title":724,"_path":1915,"children":1916,"icon":1113},"/integrations/hiboutik/versions",[1917],{"title":1095,"_path":1918,"children":1919},"/integrations/hiboutik/versions/v1.x.x",[1920,1922,1924],{"title":1099,"_path":1921},"/integrations/hiboutik/versions/v1.x.x/v1_0_0",{"title":1102,"_path":1923},"/integrations/hiboutik/versions/v1.x.x/v1_1_0",{"title":1105,"_path":1925},"/integrations/hiboutik/versions/v1.x.x/v1_2_0","i-material-symbols-point-of-sale-rounded",{"title":1928,"_path":1929,"children":1930,"icon":1942},"Banques","/integrations/banks",[1931,1934,1938],{"title":1932,"_path":1929,"icon":1933},"Open Banking","i-fluent-building-bank-16-filled",{"title":1935,"_path":1936,"icon":1937},"Bank","/integrations/banks/bank","i-fluent-building-bank-toolbox-24-regular",{"title":1939,"_path":1940,"icon":1941},"Bank API","/integrations/banks/bank-api","i-fluent-building-bank-link-16-filled","i-fa6-solid-bridge-lock",{"title":872,"_path":1944,"icon":1945},"/integrations/zapier","i-cib-zapier",{"title":1947,"_path":1948,"children":1949,"icon":1952},"Extraction de données","/integrations/extraction-donnees",[1950],{"title":1951,"_path":1948},"Extraction de données (OCR)","i-mdi-ocr",{"title":1954,"_path":1955,"children":1956,"icon":1978},"Badge inter-lieux","/federation-lieux",[1957,1959,1968],{"title":1958,"_path":1955},"Badge Inter-Lieux",{"title":1960,"_path":1961,"children":1962},"Fédération","/federation-lieux/federation-de-lieux",[1963,1966],{"title":1964,"_path":1965},"Annuaire","/federation-lieux/federation-de-lieux/annuaire",{"title":720,"_path":1967},"/federation-lieux/federation-de-lieux/api",{"title":1969,"_path":1970,"children":1971},"Lieux","/federation-lieux/lieux",[1972,1975],{"title":1973,"_path":1974},"Lieux utilisant Dokos","/federation-lieux/lieux/application-dokos",{"title":1976,"_path":1977},"Participation sans Dokos","/federation-lieux/lieux/autres-applications","i-material-symbols-add-location-alt-outline",{"title":1980,"_path":1981,"children":1982,"icon":2070},"Toobibpro","/toobibpro",[1983,1984,1987,2000,2019,2043,2052,2055,2058,2061,2064,2067],{"title":496,"_path":1981,"icon":10},{"title":1985,"_path":1986},"Démarrer rapidement","/toobibpro/demarrer-rapidement",{"title":1988,"_path":1989,"children":1990},"Dossiers","/toobibpro/dossiers",[1991,1994,1997],{"title":1992,"_path":1993},"La consultation de grossesse","/toobibpro/dossiers/consultation-grossesse",{"title":1995,"_path":1996},"Le dossier de grossesse","/toobibpro/dossiers/dossier-grossesse",{"title":1998,"_path":1999},"Le dossier patient·e","/toobibpro/dossiers/dossier-patiente",{"title":2001,"_path":2002,"children":2003},"Rendez Vous","/toobibpro/rendez-vous",[2004,2007,2010,2013,2016],{"title":2005,"_path":2006},"Comment vos patientes prennent-elles rendez-vous ?","/toobibpro/rendez-vous/comment-vos-patientes-prennent-rendez-vous",{"title":2008,"_path":2009},"Configurer la plateforme de prise de rendez-vous en ligne","/toobibpro/rendez-vous/configurer-la-plateforme-en-ligne",{"title":2011,"_path":2012},"Créer des ateliers","/toobibpro/rendez-vous/creer-des-ateliers",{"title":2014,"_path":2015},"Donner accès à votre plateforme en ligne à vos patientes","/toobibpro/rendez-vous/donner-acces-a-vos-patientes",{"title":2017,"_path":2018},"Prendre un rendez-vous","/toobibpro/rendez-vous/rendez-vous",{"title":2020,"_path":2021,"children":2022},"Gestion","/toobibpro/gestion",[2023,2025,2028,2031,2034,2037,2040],{"title":94,"_path":2024},"/toobibpro/gestion/achats",{"title":2026,"_path":2027},"Dépôt d'espèces","/toobibpro/gestion/depot-especes",{"title":2029,"_path":2030},"Enregistrer une recette","/toobibpro/gestion/enregistrer-une-recette",{"title":2032,"_path":2033},"Les codifications","/toobibpro/gestion/les-codifications",{"title":2035,"_path":2036},"Enregistrer un paiement","/toobibpro/gestion/paiements",{"title":2038,"_path":2039},"Prélèvements et apports personnels","/toobibpro/gestion/prelevement-apport-personnel",{"title":2041,"_path":2042},"Réconcilier un paiement avec son relevé bancaire","/toobibpro/gestion/reconciliation-bancaire",{"title":2044,"_path":2045,"children":2046},"Remplacements","/toobibpro/remplacements",[2047,2049],{"title":2044,"_path":2048},"/toobibpro/remplacements/remplacements",{"title":2050,"_path":2051},"Rétrocession d'Honoraires","/toobibpro/remplacements/retrocessions-honoraires",{"title":2053,"_path":2054},"Lettres Types","/toobibpro/lettres-types",{"title":2056,"_path":2057},"Modifier un champ existant","/toobibpro/modifier-un-champ-existant",{"title":2059,"_path":2060},"Les ordonnances","/toobibpro/ordonnances",{"title":2062,"_path":2063},"Personnaliser ses dossiers et fiches de consultation","/toobibpro/personnaliser-ses-dossiers-et-consultations",{"title":2065,"_path":2066},"Créer son site web","/toobibpro/site-web",{"title":2068,"_path":2069},"Synchronisation avec Google Agenda","/toobibpro/synchronisation_avec_google_agenda","i-healthicons-doctor-female-outline",{"_path":1279,"_dir":2072,"_draft":2073,"_partial":2073,"_locale":2074,"title":1278,"description":2075,"body":2076,"_type":5792,"_id":5793,"_source":5794,"_file":5795,"_extension":5796},"personnalisations",false,"fr","Un script python vous permet d'écrire un script exécuté sur le server et généré via un événement de document ou via l'API",{"type":2077,"children":2078,"toc":5776},"root",[2079,2090,2097,2102,2146,2152,2159,2164,2174,2180,2185,2234,2240,2253,2258,2269,2275,2280,3322,3328,3334,3343,3435,3441,3450,3519,3525,3533,3694,3700,3722,3786,3797,3803,3814,3819,3824,3829,5771],{"type":2080,"tag":2081,"props":2082,"children":2083},"element","p",{},[2084],{"type":2080,"tag":2085,"props":2086,"children":2087},"strong",{},[2088],{"type":2089,"value":2075},"text",{"type":2080,"tag":2091,"props":2092,"children":2094},"h2",{"id":2093},"_1-comment-créer-un-script-python",[2095],{"type":2089,"value":2096},"1. Comment créer un script python",{"type":2080,"tag":2081,"props":2098,"children":2099},{},[2100],{"type":2089,"value":2101},"Pour créer un script python",{"type":2080,"tag":2103,"props":2104,"children":2105},"ol",{},[2106,2121,2131,2136,2141],{"type":2080,"tag":2107,"props":2108,"children":2109},"li",{},[2110,2112,2119],{"type":2089,"value":2111},"Vous devez ajouter la clé ",{"type":2080,"tag":2113,"props":2114,"children":2116},"code",{"className":2115},[],[2117],{"type":2089,"value":2118},"server_script_enabled",{"type":2089,"value":2120}," et la définir comme étant vrai (ou 1) dans le fichier site_config.json de votre site.",{"type":2080,"tag":2107,"props":2122,"children":2123},{},[2124,2126],{"type":2089,"value":2125},"Pour ajouter / modifier un script python, assurez-vous d'avoir le rôle ",{"type":2080,"tag":2085,"props":2127,"children":2128},{},[2129],{"type":2089,"value":2130},"Gestionnaire de script",{"type":2080,"tag":2107,"props":2132,"children":2133},{},[2134],{"type":2089,"value":2135},"Créez un nouveau script python vis \"Nouveau script python\" dans la barre d'outils",{"type":2080,"tag":2107,"props":2137,"children":2138},{},[2139],{"type":2089,"value":2140},"Choisissez le type de script python (Evénement de document / API)",{"type":2080,"tag":2107,"props":2142,"children":2143},{},[2144],{"type":2089,"value":2145},"Choisissez le type de document de référence et le nom de l'événement, ou le nom de la méthode, ajoutez votre script et enregistrez.",{"type":2080,"tag":2091,"props":2147,"children":2149},{"id":2148},"_2-fonctionnalités",[2150],{"type":2089,"value":2151},"2. Fonctionnalités",{"type":2080,"tag":2153,"props":2154,"children":2156},"h3",{"id":2155},"_21-autoriser-les-scripts-python",[2157],{"type":2089,"value":2158},"2.1 Autoriser les scripts python",{"type":2080,"tag":2081,"props":2160,"children":2161},{},[2162],{"type":2089,"value":2163},"Les scripts python doivent être activés via le fichier site_config.json",{"type":2080,"tag":2165,"props":2166,"children":2168},"pre",{"code":2167},"bench --site {votre_site} set-config server_script_enabled true\n",[2169],{"type":2080,"tag":2113,"props":2170,"children":2172},{"__ignoreMap":2171},"",[2173],{"type":2089,"value":2167},{"type":2080,"tag":2153,"props":2175,"children":2177},{"id":2176},"_22-evénements-de-document",[2178],{"type":2089,"value":2179},"2.2 Evénements de document",{"type":2080,"tag":2081,"props":2181,"children":2182},{},[2183],{"type":2089,"value":2184},"Pour les scripts qui sont lancés via des événements de documents, vous devez définir le type de document de référence et nom de l'événement générateur",{"type":2080,"tag":2186,"props":2187,"children":2188},"ul",{},[2189,2194,2199,2204,2209,2214,2219,2224,2229],{"type":2080,"tag":2107,"props":2190,"children":2191},{},[2192],{"type":2089,"value":2193},"Avant l'insertion",{"type":2080,"tag":2107,"props":2195,"children":2196},{},[2197],{"type":2089,"value":2198},"Avant l'enregistrement",{"type":2080,"tag":2107,"props":2200,"children":2201},{},[2202],{"type":2089,"value":2203},"Après l'enregistrement",{"type":2080,"tag":2107,"props":2205,"children":2206},{},[2207],{"type":2089,"value":2208},"Avant la validation",{"type":2080,"tag":2107,"props":2210,"children":2211},{},[2212],{"type":2089,"value":2213},"Après la validation",{"type":2080,"tag":2107,"props":2215,"children":2216},{},[2217],{"type":2089,"value":2218},"Avant l'annulation",{"type":2080,"tag":2107,"props":2220,"children":2221},{},[2222],{"type":2089,"value":2223},"Après l'annulation",{"type":2080,"tag":2107,"props":2225,"children":2226},{},[2227],{"type":2089,"value":2228},"Avant la suppression",{"type":2080,"tag":2107,"props":2230,"children":2231},{},[2232],{"type":2089,"value":2233},"Après la suppression",{"type":2080,"tag":2153,"props":2235,"children":2237},{"id":2236},"_23-scripts-api",[2238],{"type":2089,"value":2239},"2.3 Scripts API",{"type":2080,"tag":2081,"props":2241,"children":2242},{},[2243,2245,2251],{"type":2089,"value":2244},"Vous pouvez créer une nouvelle API qui sera accessible via ",{"type":2080,"tag":2113,"props":2246,"children":2248},{"className":2247},[],[2249],{"type":2089,"value":2250},"api/method/[methodname]",{"type":2089,"value":2252}," en sélectionnant le type de script \"API\"",{"type":2080,"tag":2081,"props":2254,"children":2255},{},[2256],{"type":2089,"value":2257},"Si vous voulez qu'un utilisateur invité (non connecté) accède à l'API, cochez la case \"Autoriser les invités\".",{"type":2080,"tag":2081,"props":2259,"children":2260},{},[2261,2263],{"type":2089,"value":2262},"La réponse sera envoyés dans un objet de type ",{"type":2080,"tag":2113,"props":2264,"children":2266},{"className":2265},[],[2267],{"type":2089,"value":2268},"frappe.response[\"message\"]",{"type":2080,"tag":2153,"props":2270,"children":2272},{"id":2271},"_23-securité",[2273],{"type":2089,"value":2274},"2.3 Securité",{"type":2080,"tag":2081,"props":2276,"children":2277},{},[2278],{"type":2089,"value":2279},"dokos utilise la librairie RestrictedPython pour restreindre l'accès aux méthodes disponibles pour les scripts python. Seules les méthodes sûres, listées ci-dessous sont disponibles dans les scripts serveur.",{"type":2080,"tag":2165,"props":2281,"children":2285},{"code":2282,"language":2283,"meta":2171,"className":2284,"style":2171},"json # module json\ndict # dict interne\nfrappe._ # méthode de traduction\nfrappe._dict # méthode interne frappe._dict\nfrappe.flags # flags globaux\n\n# FORMATTAGE\nfrappe.format # frappe.format_value(value, dict(fieldtype='Currency'))\nfrappe.format_value # frappe.format_value(value, dict(fieldtype='Currency'))\nfrappe.date_format # format de date par défaut\nfrappe.format_date # retourne une date sous la forme \"1er septembre 2019\"\n\n# SESSION\nfrappe.form_dict # paramètres de requêtes / formulaires\nfrappe.request # objet de requête\nfrappe.response # objet de réponse\nfrappe.session.user # utilisateur actuel\nfrappe.session.csrf_token # jeton CSRF de la session en cours\nfrappe.user  # utilisateur actuel\nfrappe.get_fullname # nom complet de l'utilisateur actuel\nfrappe.get_gravatar # frappe.utils.get_gravatar_url\nfrappe.full_name = # nom complet de l'utilisateur actuel\n\n# ACCES AUX DONNEES\nfrappe.get_meta # obtenir l'objet de métadonnées\nfrappe.get_doc\nfrappe.get_cached_doc\nfrappe.get_list\nfrappe.get_all\nfrappe.get_system_settings\n\n# BASE DE DONNEE\nfrappe.db.get_list\nfrappe.db.get_all\nfrappe.db.get_value\nfrappe.db.get_single_value\nfrappe.db.get_default\nfrappe.db.escape\n\n# UTILITAIRES\nfrappe.msgprint # msgprint\nlog # création d'un log dans la console du navigateur\nfrappe.log_error # création d'un log d'erreur\nfrappe.get_hooks # hooks de l'application\nfrappe.utils # méthodes de frappe.utils\nfrappe.render_template # frappe.render_template,\nfrappe.get_url # frappe.utils.get_url\nfrappe.socketio_port # port pour socketio\nfrappe.sanitize_html # Assainissement du HTML\nstyle.border_color # '#d1d8dd'\nguess_mimetype = mimetypes.guess_type,\nhtml2text = html2text,\ndev_server # Vrai si en mode développeur\n","py","language-py shiki shiki-themes material-theme-lighter material-theme material-theme-palenight",[2286],{"type":2080,"tag":2113,"props":2287,"children":2288},{"__ignoreMap":2171},[2289,2307,2322,2348,2370,2392,2402,2411,2433,2454,2476,2498,2506,2515,2537,2559,2581,2612,2642,2663,2685,2707,2733,2741,2750,2772,2789,2806,2823,2840,2857,2865,2874,2899,2923,2948,2973,2998,3023,3031,3040,3062,3076,3098,3120,3142,3164,3186,3208,3230,3253,3286,3308],{"type":2080,"tag":2290,"props":2291,"children":2294},"span",{"class":2292,"line":2293},"line",1,[2295,2301],{"type":2080,"tag":2290,"props":2296,"children":2298},{"style":2297},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[2299],{"type":2089,"value":2300},"json ",{"type":2080,"tag":2290,"props":2302,"children":2304},{"style":2303},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[2305],{"type":2089,"value":2306},"# module json\n",{"type":2080,"tag":2290,"props":2308,"children":2310},{"class":2292,"line":2309},2,[2311,2317],{"type":2080,"tag":2290,"props":2312,"children":2314},{"style":2313},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[2315],{"type":2089,"value":2316},"dict",{"type":2080,"tag":2290,"props":2318,"children":2319},{"style":2303},[2320],{"type":2089,"value":2321}," # dict interne\n",{"type":2080,"tag":2290,"props":2323,"children":2325},{"class":2292,"line":2324},3,[2326,2331,2337,2343],{"type":2080,"tag":2290,"props":2327,"children":2328},{"style":2297},[2329],{"type":2089,"value":2330},"frappe",{"type":2080,"tag":2290,"props":2332,"children":2334},{"style":2333},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[2335],{"type":2089,"value":2336},".",{"type":2080,"tag":2290,"props":2338,"children":2340},{"style":2339},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[2341],{"type":2089,"value":2342},"_",{"type":2080,"tag":2290,"props":2344,"children":2345},{"style":2303},[2346],{"type":2089,"value":2347}," # méthode de traduction\n",{"type":2080,"tag":2290,"props":2349,"children":2351},{"class":2292,"line":2350},4,[2352,2356,2360,2365],{"type":2080,"tag":2290,"props":2353,"children":2354},{"style":2297},[2355],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2357,"children":2358},{"style":2333},[2359],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2361,"children":2362},{"style":2339},[2363],{"type":2089,"value":2364},"_dict",{"type":2080,"tag":2290,"props":2366,"children":2367},{"style":2303},[2368],{"type":2089,"value":2369}," # méthode interne frappe._dict\n",{"type":2080,"tag":2290,"props":2371,"children":2373},{"class":2292,"line":2372},5,[2374,2378,2382,2387],{"type":2080,"tag":2290,"props":2375,"children":2376},{"style":2297},[2377],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2379,"children":2380},{"style":2333},[2381],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2383,"children":2384},{"style":2339},[2385],{"type":2089,"value":2386},"flags",{"type":2080,"tag":2290,"props":2388,"children":2389},{"style":2303},[2390],{"type":2089,"value":2391}," # flags globaux\n",{"type":2080,"tag":2290,"props":2393,"children":2395},{"class":2292,"line":2394},6,[2396],{"type":2080,"tag":2290,"props":2397,"children":2399},{"emptyLinePlaceholder":2398},true,[2400],{"type":2089,"value":2401},"\n",{"type":2080,"tag":2290,"props":2403,"children":2405},{"class":2292,"line":2404},7,[2406],{"type":2080,"tag":2290,"props":2407,"children":2408},{"style":2303},[2409],{"type":2089,"value":2410},"# FORMATTAGE\n",{"type":2080,"tag":2290,"props":2412,"children":2414},{"class":2292,"line":2413},8,[2415,2419,2423,2428],{"type":2080,"tag":2290,"props":2416,"children":2417},{"style":2297},[2418],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2420,"children":2421},{"style":2333},[2422],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2424,"children":2425},{"style":2339},[2426],{"type":2089,"value":2427},"format",{"type":2080,"tag":2290,"props":2429,"children":2430},{"style":2303},[2431],{"type":2089,"value":2432}," # frappe.format_value(value, dict(fieldtype='Currency'))\n",{"type":2080,"tag":2290,"props":2434,"children":2436},{"class":2292,"line":2435},9,[2437,2441,2445,2450],{"type":2080,"tag":2290,"props":2438,"children":2439},{"style":2297},[2440],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2442,"children":2443},{"style":2333},[2444],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2446,"children":2447},{"style":2339},[2448],{"type":2089,"value":2449},"format_value",{"type":2080,"tag":2290,"props":2451,"children":2452},{"style":2303},[2453],{"type":2089,"value":2432},{"type":2080,"tag":2290,"props":2455,"children":2457},{"class":2292,"line":2456},10,[2458,2462,2466,2471],{"type":2080,"tag":2290,"props":2459,"children":2460},{"style":2297},[2461],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2463,"children":2464},{"style":2333},[2465],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2467,"children":2468},{"style":2339},[2469],{"type":2089,"value":2470},"date_format",{"type":2080,"tag":2290,"props":2472,"children":2473},{"style":2303},[2474],{"type":2089,"value":2475}," # format de date par défaut\n",{"type":2080,"tag":2290,"props":2477,"children":2479},{"class":2292,"line":2478},11,[2480,2484,2488,2493],{"type":2080,"tag":2290,"props":2481,"children":2482},{"style":2297},[2483],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2485,"children":2486},{"style":2333},[2487],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2489,"children":2490},{"style":2339},[2491],{"type":2089,"value":2492},"format_date",{"type":2080,"tag":2290,"props":2494,"children":2495},{"style":2303},[2496],{"type":2089,"value":2497}," # retourne une date sous la forme \"1er septembre 2019\"\n",{"type":2080,"tag":2290,"props":2499,"children":2501},{"class":2292,"line":2500},12,[2502],{"type":2080,"tag":2290,"props":2503,"children":2504},{"emptyLinePlaceholder":2398},[2505],{"type":2089,"value":2401},{"type":2080,"tag":2290,"props":2507,"children":2509},{"class":2292,"line":2508},13,[2510],{"type":2080,"tag":2290,"props":2511,"children":2512},{"style":2303},[2513],{"type":2089,"value":2514},"# SESSION\n",{"type":2080,"tag":2290,"props":2516,"children":2518},{"class":2292,"line":2517},14,[2519,2523,2527,2532],{"type":2080,"tag":2290,"props":2520,"children":2521},{"style":2297},[2522],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2524,"children":2525},{"style":2333},[2526],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2528,"children":2529},{"style":2339},[2530],{"type":2089,"value":2531},"form_dict",{"type":2080,"tag":2290,"props":2533,"children":2534},{"style":2303},[2535],{"type":2089,"value":2536}," # paramètres de requêtes / formulaires\n",{"type":2080,"tag":2290,"props":2538,"children":2540},{"class":2292,"line":2539},15,[2541,2545,2549,2554],{"type":2080,"tag":2290,"props":2542,"children":2543},{"style":2297},[2544],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2546,"children":2547},{"style":2333},[2548],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2550,"children":2551},{"style":2339},[2552],{"type":2089,"value":2553},"request",{"type":2080,"tag":2290,"props":2555,"children":2556},{"style":2303},[2557],{"type":2089,"value":2558}," # objet de requête\n",{"type":2080,"tag":2290,"props":2560,"children":2562},{"class":2292,"line":2561},16,[2563,2567,2571,2576],{"type":2080,"tag":2290,"props":2564,"children":2565},{"style":2297},[2566],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2568,"children":2569},{"style":2333},[2570],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2572,"children":2573},{"style":2339},[2574],{"type":2089,"value":2575},"response",{"type":2080,"tag":2290,"props":2577,"children":2578},{"style":2303},[2579],{"type":2089,"value":2580}," # objet de réponse\n",{"type":2080,"tag":2290,"props":2582,"children":2584},{"class":2292,"line":2583},17,[2585,2589,2593,2598,2602,2607],{"type":2080,"tag":2290,"props":2586,"children":2587},{"style":2297},[2588],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2590,"children":2591},{"style":2333},[2592],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2594,"children":2595},{"style":2339},[2596],{"type":2089,"value":2597},"session",{"type":2080,"tag":2290,"props":2599,"children":2600},{"style":2333},[2601],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2603,"children":2604},{"style":2339},[2605],{"type":2089,"value":2606},"user",{"type":2080,"tag":2290,"props":2608,"children":2609},{"style":2303},[2610],{"type":2089,"value":2611}," # utilisateur actuel\n",{"type":2080,"tag":2290,"props":2613,"children":2615},{"class":2292,"line":2614},18,[2616,2620,2624,2628,2632,2637],{"type":2080,"tag":2290,"props":2617,"children":2618},{"style":2297},[2619],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2621,"children":2622},{"style":2333},[2623],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2625,"children":2626},{"style":2339},[2627],{"type":2089,"value":2597},{"type":2080,"tag":2290,"props":2629,"children":2630},{"style":2333},[2631],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2633,"children":2634},{"style":2339},[2635],{"type":2089,"value":2636},"csrf_token",{"type":2080,"tag":2290,"props":2638,"children":2639},{"style":2303},[2640],{"type":2089,"value":2641}," # jeton CSRF de la session en cours\n",{"type":2080,"tag":2290,"props":2643,"children":2645},{"class":2292,"line":2644},19,[2646,2650,2654,2658],{"type":2080,"tag":2290,"props":2647,"children":2648},{"style":2297},[2649],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2651,"children":2652},{"style":2333},[2653],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2655,"children":2656},{"style":2339},[2657],{"type":2089,"value":2606},{"type":2080,"tag":2290,"props":2659,"children":2660},{"style":2303},[2661],{"type":2089,"value":2662},"  # utilisateur actuel\n",{"type":2080,"tag":2290,"props":2664,"children":2666},{"class":2292,"line":2665},20,[2667,2671,2675,2680],{"type":2080,"tag":2290,"props":2668,"children":2669},{"style":2297},[2670],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2672,"children":2673},{"style":2333},[2674],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2676,"children":2677},{"style":2339},[2678],{"type":2089,"value":2679},"get_fullname",{"type":2080,"tag":2290,"props":2681,"children":2682},{"style":2303},[2683],{"type":2089,"value":2684}," # nom complet de l'utilisateur actuel\n",{"type":2080,"tag":2290,"props":2686,"children":2688},{"class":2292,"line":2687},21,[2689,2693,2697,2702],{"type":2080,"tag":2290,"props":2690,"children":2691},{"style":2297},[2692],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2694,"children":2695},{"style":2333},[2696],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2698,"children":2699},{"style":2339},[2700],{"type":2089,"value":2701},"get_gravatar",{"type":2080,"tag":2290,"props":2703,"children":2704},{"style":2303},[2705],{"type":2089,"value":2706}," # frappe.utils.get_gravatar_url\n",{"type":2080,"tag":2290,"props":2708,"children":2710},{"class":2292,"line":2709},22,[2711,2715,2719,2724,2729],{"type":2080,"tag":2290,"props":2712,"children":2713},{"style":2297},[2714],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2716,"children":2717},{"style":2333},[2718],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2720,"children":2721},{"style":2339},[2722],{"type":2089,"value":2723},"full_name",{"type":2080,"tag":2290,"props":2725,"children":2726},{"style":2333},[2727],{"type":2089,"value":2728}," =",{"type":2080,"tag":2290,"props":2730,"children":2731},{"style":2303},[2732],{"type":2089,"value":2684},{"type":2080,"tag":2290,"props":2734,"children":2736},{"class":2292,"line":2735},23,[2737],{"type":2080,"tag":2290,"props":2738,"children":2739},{"emptyLinePlaceholder":2398},[2740],{"type":2089,"value":2401},{"type":2080,"tag":2290,"props":2742,"children":2744},{"class":2292,"line":2743},24,[2745],{"type":2080,"tag":2290,"props":2746,"children":2747},{"style":2303},[2748],{"type":2089,"value":2749},"# ACCES AUX DONNEES\n",{"type":2080,"tag":2290,"props":2751,"children":2753},{"class":2292,"line":2752},25,[2754,2758,2762,2767],{"type":2080,"tag":2290,"props":2755,"children":2756},{"style":2297},[2757],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2759,"children":2760},{"style":2333},[2761],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2763,"children":2764},{"style":2339},[2765],{"type":2089,"value":2766},"get_meta",{"type":2080,"tag":2290,"props":2768,"children":2769},{"style":2303},[2770],{"type":2089,"value":2771}," # obtenir l'objet de métadonnées\n",{"type":2080,"tag":2290,"props":2773,"children":2775},{"class":2292,"line":2774},26,[2776,2780,2784],{"type":2080,"tag":2290,"props":2777,"children":2778},{"style":2297},[2779],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2781,"children":2782},{"style":2333},[2783],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2785,"children":2786},{"style":2339},[2787],{"type":2089,"value":2788},"get_doc\n",{"type":2080,"tag":2290,"props":2790,"children":2792},{"class":2292,"line":2791},27,[2793,2797,2801],{"type":2080,"tag":2290,"props":2794,"children":2795},{"style":2297},[2796],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2798,"children":2799},{"style":2333},[2800],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2802,"children":2803},{"style":2339},[2804],{"type":2089,"value":2805},"get_cached_doc\n",{"type":2080,"tag":2290,"props":2807,"children":2809},{"class":2292,"line":2808},28,[2810,2814,2818],{"type":2080,"tag":2290,"props":2811,"children":2812},{"style":2297},[2813],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2815,"children":2816},{"style":2333},[2817],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2819,"children":2820},{"style":2339},[2821],{"type":2089,"value":2822},"get_list\n",{"type":2080,"tag":2290,"props":2824,"children":2826},{"class":2292,"line":2825},29,[2827,2831,2835],{"type":2080,"tag":2290,"props":2828,"children":2829},{"style":2297},[2830],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2832,"children":2833},{"style":2333},[2834],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2836,"children":2837},{"style":2339},[2838],{"type":2089,"value":2839},"get_all\n",{"type":2080,"tag":2290,"props":2841,"children":2843},{"class":2292,"line":2842},30,[2844,2848,2852],{"type":2080,"tag":2290,"props":2845,"children":2846},{"style":2297},[2847],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2849,"children":2850},{"style":2333},[2851],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2853,"children":2854},{"style":2339},[2855],{"type":2089,"value":2856},"get_system_settings\n",{"type":2080,"tag":2290,"props":2858,"children":2860},{"class":2292,"line":2859},31,[2861],{"type":2080,"tag":2290,"props":2862,"children":2863},{"emptyLinePlaceholder":2398},[2864],{"type":2089,"value":2401},{"type":2080,"tag":2290,"props":2866,"children":2868},{"class":2292,"line":2867},32,[2869],{"type":2080,"tag":2290,"props":2870,"children":2871},{"style":2303},[2872],{"type":2089,"value":2873},"# BASE DE DONNEE\n",{"type":2080,"tag":2290,"props":2875,"children":2877},{"class":2292,"line":2876},33,[2878,2882,2886,2891,2895],{"type":2080,"tag":2290,"props":2879,"children":2880},{"style":2297},[2881],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2883,"children":2884},{"style":2333},[2885],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2887,"children":2888},{"style":2339},[2889],{"type":2089,"value":2890},"db",{"type":2080,"tag":2290,"props":2892,"children":2893},{"style":2333},[2894],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2896,"children":2897},{"style":2339},[2898],{"type":2089,"value":2822},{"type":2080,"tag":2290,"props":2900,"children":2902},{"class":2292,"line":2901},34,[2903,2907,2911,2915,2919],{"type":2080,"tag":2290,"props":2904,"children":2905},{"style":2297},[2906],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2908,"children":2909},{"style":2333},[2910],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2912,"children":2913},{"style":2339},[2914],{"type":2089,"value":2890},{"type":2080,"tag":2290,"props":2916,"children":2917},{"style":2333},[2918],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2920,"children":2921},{"style":2339},[2922],{"type":2089,"value":2839},{"type":2080,"tag":2290,"props":2924,"children":2926},{"class":2292,"line":2925},35,[2927,2931,2935,2939,2943],{"type":2080,"tag":2290,"props":2928,"children":2929},{"style":2297},[2930],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2932,"children":2933},{"style":2333},[2934],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2936,"children":2937},{"style":2339},[2938],{"type":2089,"value":2890},{"type":2080,"tag":2290,"props":2940,"children":2941},{"style":2333},[2942],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2944,"children":2945},{"style":2339},[2946],{"type":2089,"value":2947},"get_value\n",{"type":2080,"tag":2290,"props":2949,"children":2951},{"class":2292,"line":2950},36,[2952,2956,2960,2964,2968],{"type":2080,"tag":2290,"props":2953,"children":2954},{"style":2297},[2955],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2957,"children":2958},{"style":2333},[2959],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2961,"children":2962},{"style":2339},[2963],{"type":2089,"value":2890},{"type":2080,"tag":2290,"props":2965,"children":2966},{"style":2333},[2967],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2969,"children":2970},{"style":2339},[2971],{"type":2089,"value":2972},"get_single_value\n",{"type":2080,"tag":2290,"props":2974,"children":2976},{"class":2292,"line":2975},37,[2977,2981,2985,2989,2993],{"type":2080,"tag":2290,"props":2978,"children":2979},{"style":2297},[2980],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":2982,"children":2983},{"style":2333},[2984],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2986,"children":2987},{"style":2339},[2988],{"type":2089,"value":2890},{"type":2080,"tag":2290,"props":2990,"children":2991},{"style":2333},[2992],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":2994,"children":2995},{"style":2339},[2996],{"type":2089,"value":2997},"get_default\n",{"type":2080,"tag":2290,"props":2999,"children":3001},{"class":2292,"line":3000},38,[3002,3006,3010,3014,3018],{"type":2080,"tag":2290,"props":3003,"children":3004},{"style":2297},[3005],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3007,"children":3008},{"style":2333},[3009],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3011,"children":3012},{"style":2339},[3013],{"type":2089,"value":2890},{"type":2080,"tag":2290,"props":3015,"children":3016},{"style":2333},[3017],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3019,"children":3020},{"style":2339},[3021],{"type":2089,"value":3022},"escape\n",{"type":2080,"tag":2290,"props":3024,"children":3026},{"class":2292,"line":3025},39,[3027],{"type":2080,"tag":2290,"props":3028,"children":3029},{"emptyLinePlaceholder":2398},[3030],{"type":2089,"value":2401},{"type":2080,"tag":2290,"props":3032,"children":3034},{"class":2292,"line":3033},40,[3035],{"type":2080,"tag":2290,"props":3036,"children":3037},{"style":2303},[3038],{"type":2089,"value":3039},"# UTILITAIRES\n",{"type":2080,"tag":2290,"props":3041,"children":3043},{"class":2292,"line":3042},41,[3044,3048,3052,3057],{"type":2080,"tag":2290,"props":3045,"children":3046},{"style":2297},[3047],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3049,"children":3050},{"style":2333},[3051],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3053,"children":3054},{"style":2339},[3055],{"type":2089,"value":3056},"msgprint",{"type":2080,"tag":2290,"props":3058,"children":3059},{"style":2303},[3060],{"type":2089,"value":3061}," # msgprint\n",{"type":2080,"tag":2290,"props":3063,"children":3065},{"class":2292,"line":3064},42,[3066,3071],{"type":2080,"tag":2290,"props":3067,"children":3068},{"style":2297},[3069],{"type":2089,"value":3070},"log ",{"type":2080,"tag":2290,"props":3072,"children":3073},{"style":2303},[3074],{"type":2089,"value":3075},"# création d'un log dans la console du navigateur\n",{"type":2080,"tag":2290,"props":3077,"children":3079},{"class":2292,"line":3078},43,[3080,3084,3088,3093],{"type":2080,"tag":2290,"props":3081,"children":3082},{"style":2297},[3083],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3085,"children":3086},{"style":2333},[3087],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3089,"children":3090},{"style":2339},[3091],{"type":2089,"value":3092},"log_error",{"type":2080,"tag":2290,"props":3094,"children":3095},{"style":2303},[3096],{"type":2089,"value":3097}," # création d'un log d'erreur\n",{"type":2080,"tag":2290,"props":3099,"children":3101},{"class":2292,"line":3100},44,[3102,3106,3110,3115],{"type":2080,"tag":2290,"props":3103,"children":3104},{"style":2297},[3105],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3107,"children":3108},{"style":2333},[3109],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3111,"children":3112},{"style":2339},[3113],{"type":2089,"value":3114},"get_hooks",{"type":2080,"tag":2290,"props":3116,"children":3117},{"style":2303},[3118],{"type":2089,"value":3119}," # hooks de l'application\n",{"type":2080,"tag":2290,"props":3121,"children":3123},{"class":2292,"line":3122},45,[3124,3128,3132,3137],{"type":2080,"tag":2290,"props":3125,"children":3126},{"style":2297},[3127],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3129,"children":3130},{"style":2333},[3131],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3133,"children":3134},{"style":2339},[3135],{"type":2089,"value":3136},"utils",{"type":2080,"tag":2290,"props":3138,"children":3139},{"style":2303},[3140],{"type":2089,"value":3141}," # méthodes de frappe.utils\n",{"type":2080,"tag":2290,"props":3143,"children":3145},{"class":2292,"line":3144},46,[3146,3150,3154,3159],{"type":2080,"tag":2290,"props":3147,"children":3148},{"style":2297},[3149],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3151,"children":3152},{"style":2333},[3153],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3155,"children":3156},{"style":2339},[3157],{"type":2089,"value":3158},"render_template",{"type":2080,"tag":2290,"props":3160,"children":3161},{"style":2303},[3162],{"type":2089,"value":3163}," # frappe.render_template,\n",{"type":2080,"tag":2290,"props":3165,"children":3167},{"class":2292,"line":3166},47,[3168,3172,3176,3181],{"type":2080,"tag":2290,"props":3169,"children":3170},{"style":2297},[3171],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3173,"children":3174},{"style":2333},[3175],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3177,"children":3178},{"style":2339},[3179],{"type":2089,"value":3180},"get_url",{"type":2080,"tag":2290,"props":3182,"children":3183},{"style":2303},[3184],{"type":2089,"value":3185}," # frappe.utils.get_url\n",{"type":2080,"tag":2290,"props":3187,"children":3189},{"class":2292,"line":3188},48,[3190,3194,3198,3203],{"type":2080,"tag":2290,"props":3191,"children":3192},{"style":2297},[3193],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3195,"children":3196},{"style":2333},[3197],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3199,"children":3200},{"style":2339},[3201],{"type":2089,"value":3202},"socketio_port",{"type":2080,"tag":2290,"props":3204,"children":3205},{"style":2303},[3206],{"type":2089,"value":3207}," # port pour socketio\n",{"type":2080,"tag":2290,"props":3209,"children":3211},{"class":2292,"line":3210},49,[3212,3216,3220,3225],{"type":2080,"tag":2290,"props":3213,"children":3214},{"style":2297},[3215],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3217,"children":3218},{"style":2333},[3219],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3221,"children":3222},{"style":2339},[3223],{"type":2089,"value":3224},"sanitize_html",{"type":2080,"tag":2290,"props":3226,"children":3227},{"style":2303},[3228],{"type":2089,"value":3229}," # Assainissement du HTML\n",{"type":2080,"tag":2290,"props":3231,"children":3233},{"class":2292,"line":3232},50,[3234,3239,3243,3248],{"type":2080,"tag":2290,"props":3235,"children":3236},{"style":2297},[3237],{"type":2089,"value":3238},"style",{"type":2080,"tag":2290,"props":3240,"children":3241},{"style":2333},[3242],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3244,"children":3245},{"style":2339},[3246],{"type":2089,"value":3247},"border_color",{"type":2080,"tag":2290,"props":3249,"children":3250},{"style":2303},[3251],{"type":2089,"value":3252}," # '#d1d8dd'\n",{"type":2080,"tag":2290,"props":3254,"children":3256},{"class":2292,"line":3255},51,[3257,3262,3267,3272,3276,3281],{"type":2080,"tag":2290,"props":3258,"children":3259},{"style":2297},[3260],{"type":2089,"value":3261},"guess_mimetype ",{"type":2080,"tag":2290,"props":3263,"children":3264},{"style":2333},[3265],{"type":2089,"value":3266},"=",{"type":2080,"tag":2290,"props":3268,"children":3269},{"style":2297},[3270],{"type":2089,"value":3271}," mimetypes",{"type":2080,"tag":2290,"props":3273,"children":3274},{"style":2333},[3275],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3277,"children":3278},{"style":2339},[3279],{"type":2089,"value":3280},"guess_type",{"type":2080,"tag":2290,"props":3282,"children":3283},{"style":2333},[3284],{"type":2089,"value":3285},",\n",{"type":2080,"tag":2290,"props":3287,"children":3289},{"class":2292,"line":3288},52,[3290,3295,3299,3304],{"type":2080,"tag":2290,"props":3291,"children":3292},{"style":2297},[3293],{"type":2089,"value":3294},"html2text ",{"type":2080,"tag":2290,"props":3296,"children":3297},{"style":2333},[3298],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":3300,"children":3301},{"style":2297},[3302],{"type":2089,"value":3303}," html2text",{"type":2080,"tag":2290,"props":3305,"children":3306},{"style":2333},[3307],{"type":2089,"value":3285},{"type":2080,"tag":2290,"props":3309,"children":3311},{"class":2292,"line":3310},53,[3312,3317],{"type":2080,"tag":2290,"props":3313,"children":3314},{"style":2297},[3315],{"type":2089,"value":3316},"dev_server ",{"type":2080,"tag":2290,"props":3318,"children":3319},{"style":2303},[3320],{"type":2089,"value":3321},"# Vrai si en mode développeur\n",{"type":2080,"tag":2091,"props":3323,"children":3325},{"id":3324},"_3-exemples",[3326],{"type":2089,"value":3327},"3. Exemples",{"type":2080,"tag":2153,"props":3329,"children":3331},{"id":3330},"_31-changer-la-valeur-dune-propriété-avant-enregistrement",[3332],{"type":2089,"value":3333},"3.1 Changer la valeur d'une propriété avant enregistrement",{"type":2080,"tag":2081,"props":3335,"children":3336},{},[3337,3339],{"type":2089,"value":3338},"Type de script: ",{"type":2080,"tag":2085,"props":3340,"children":3341},{},[3342],{"type":2089,"value":2198},{"type":2080,"tag":2165,"props":3344,"children":3346},{"code":3345,"language":2283,"meta":2171,"className":2284,"style":2171},"if \"test\" in doc.description:\n    doc.status = 'Closed'\n",[3347],{"type":2080,"tag":2113,"props":3348,"children":3349},{"__ignoreMap":2171},[3350,3399],{"type":2080,"tag":2290,"props":3351,"children":3352},{"class":2292,"line":2293},[3353,3359,3364,3370,3375,3380,3385,3389,3394],{"type":2080,"tag":2290,"props":3354,"children":3356},{"style":3355},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[3357],{"type":2089,"value":3358},"if",{"type":2080,"tag":2290,"props":3360,"children":3361},{"style":2333},[3362],{"type":2089,"value":3363}," \"",{"type":2080,"tag":2290,"props":3365,"children":3367},{"style":3366},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[3368],{"type":2089,"value":3369},"test",{"type":2080,"tag":2290,"props":3371,"children":3372},{"style":2333},[3373],{"type":2089,"value":3374},"\"",{"type":2080,"tag":2290,"props":3376,"children":3377},{"style":2333},[3378],{"type":2089,"value":3379}," in",{"type":2080,"tag":2290,"props":3381,"children":3382},{"style":2297},[3383],{"type":2089,"value":3384}," doc",{"type":2080,"tag":2290,"props":3386,"children":3387},{"style":2333},[3388],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3390,"children":3391},{"style":2339},[3392],{"type":2089,"value":3393},"description",{"type":2080,"tag":2290,"props":3395,"children":3396},{"style":2333},[3397],{"type":2089,"value":3398},":\n",{"type":2080,"tag":2290,"props":3400,"children":3401},{"class":2292,"line":2309},[3402,3407,3411,3416,3420,3425,3430],{"type":2080,"tag":2290,"props":3403,"children":3404},{"style":2297},[3405],{"type":2089,"value":3406},"    doc",{"type":2080,"tag":2290,"props":3408,"children":3409},{"style":2333},[3410],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3412,"children":3413},{"style":2339},[3414],{"type":2089,"value":3415},"status",{"type":2080,"tag":2290,"props":3417,"children":3418},{"style":2333},[3419],{"type":2089,"value":2728},{"type":2080,"tag":2290,"props":3421,"children":3422},{"style":2333},[3423],{"type":2089,"value":3424}," '",{"type":2080,"tag":2290,"props":3426,"children":3427},{"style":3366},[3428],{"type":2089,"value":3429},"Closed",{"type":2080,"tag":2290,"props":3431,"children":3432},{"style":2333},[3433],{"type":2089,"value":3434},"'\n",{"type":2080,"tag":2153,"props":3436,"children":3438},{"id":3437},"_32-validation-personnalisée",[3439],{"type":2089,"value":3440},"3.2 Validation personnalisée",{"type":2080,"tag":2081,"props":3442,"children":3443},{},[3444,3446],{"type":2089,"value":3445},"Type de script:: ",{"type":2080,"tag":2085,"props":3447,"children":3448},{},[3449],{"type":2089,"value":2198},{"type":2080,"tag":2165,"props":3451,"children":3453},{"code":3452,"language":2283,"meta":2171,"className":2284,"style":2171},"if \"validate\" in doc.description:\n    raise frappe.ValidationError\n",[3454],{"type":2080,"tag":2113,"props":3455,"children":3456},{"__ignoreMap":2171},[3457,3497],{"type":2080,"tag":2290,"props":3458,"children":3459},{"class":2292,"line":2293},[3460,3464,3468,3473,3477,3481,3485,3489,3493],{"type":2080,"tag":2290,"props":3461,"children":3462},{"style":3355},[3463],{"type":2089,"value":3358},{"type":2080,"tag":2290,"props":3465,"children":3466},{"style":2333},[3467],{"type":2089,"value":3363},{"type":2080,"tag":2290,"props":3469,"children":3470},{"style":3366},[3471],{"type":2089,"value":3472},"validate",{"type":2080,"tag":2290,"props":3474,"children":3475},{"style":2333},[3476],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":3478,"children":3479},{"style":2333},[3480],{"type":2089,"value":3379},{"type":2080,"tag":2290,"props":3482,"children":3483},{"style":2297},[3484],{"type":2089,"value":3384},{"type":2080,"tag":2290,"props":3486,"children":3487},{"style":2333},[3488],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3490,"children":3491},{"style":2339},[3492],{"type":2089,"value":3393},{"type":2080,"tag":2290,"props":3494,"children":3495},{"style":2333},[3496],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":3498,"children":3499},{"class":2292,"line":2309},[3500,3505,3510,3514],{"type":2080,"tag":2290,"props":3501,"children":3502},{"style":3355},[3503],{"type":2089,"value":3504},"    raise",{"type":2080,"tag":2290,"props":3506,"children":3507},{"style":2297},[3508],{"type":2089,"value":3509}," frappe",{"type":2080,"tag":2290,"props":3511,"children":3512},{"style":2333},[3513],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3515,"children":3516},{"style":2339},[3517],{"type":2089,"value":3518},"ValidationError\n",{"type":2080,"tag":2153,"props":3520,"children":3522},{"id":3521},"_33-auto-création-dune-todo",[3523],{"type":2089,"value":3524},"3.3. Auto création d'une ToDo",{"type":2080,"tag":2081,"props":3526,"children":3527},{},[3528,3529],{"type":2089,"value":3338},{"type":2080,"tag":2085,"props":3530,"children":3531},{},[3532],{"type":2089,"value":2203},{"type":2080,"tag":2165,"props":3534,"children":3536},{"code":3535,"language":2283,"meta":2171,"className":2284,"style":2171},"if doc.allocted_to:\n    frappe.get_doc(dict(\n        doctype = 'ToDo'\n        owner = doc.allocated_to,\n        description = doc.subject\n    )).insert()\n",[3537],{"type":2080,"tag":2113,"props":3538,"children":3539},{"__ignoreMap":2171},[3540,3564,3596,3622,3651,3676],{"type":2080,"tag":2290,"props":3541,"children":3542},{"class":2292,"line":2293},[3543,3547,3551,3555,3560],{"type":2080,"tag":2290,"props":3544,"children":3545},{"style":3355},[3546],{"type":2089,"value":3358},{"type":2080,"tag":2290,"props":3548,"children":3549},{"style":2297},[3550],{"type":2089,"value":3384},{"type":2080,"tag":2290,"props":3552,"children":3553},{"style":2333},[3554],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3556,"children":3557},{"style":2339},[3558],{"type":2089,"value":3559},"allocted_to",{"type":2080,"tag":2290,"props":3561,"children":3562},{"style":2333},[3563],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":3565,"children":3566},{"class":2292,"line":2309},[3567,3572,3576,3582,3587,3591],{"type":2080,"tag":2290,"props":3568,"children":3569},{"style":2297},[3570],{"type":2089,"value":3571},"    frappe",{"type":2080,"tag":2290,"props":3573,"children":3574},{"style":2333},[3575],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3577,"children":3579},{"style":3578},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[3580],{"type":2089,"value":3581},"get_doc",{"type":2080,"tag":2290,"props":3583,"children":3584},{"style":2333},[3585],{"type":2089,"value":3586},"(",{"type":2080,"tag":2290,"props":3588,"children":3589},{"style":2313},[3590],{"type":2089,"value":2316},{"type":2080,"tag":2290,"props":3592,"children":3593},{"style":2333},[3594],{"type":2089,"value":3595},"(\n",{"type":2080,"tag":2290,"props":3597,"children":3598},{"class":2292,"line":2324},[3599,3605,3609,3613,3618],{"type":2080,"tag":2290,"props":3600,"children":3602},{"style":3601},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[3603],{"type":2089,"value":3604},"        doctype",{"type":2080,"tag":2290,"props":3606,"children":3607},{"style":2333},[3608],{"type":2089,"value":2728},{"type":2080,"tag":2290,"props":3610,"children":3611},{"style":2333},[3612],{"type":2089,"value":3424},{"type":2080,"tag":2290,"props":3614,"children":3615},{"style":3366},[3616],{"type":2089,"value":3617},"ToDo",{"type":2080,"tag":2290,"props":3619,"children":3620},{"style":2333},[3621],{"type":2089,"value":3434},{"type":2080,"tag":2290,"props":3623,"children":3624},{"class":2292,"line":2350},[3625,3630,3634,3638,3642,3647],{"type":2080,"tag":2290,"props":3626,"children":3627},{"style":3601},[3628],{"type":2089,"value":3629},"        owner",{"type":2080,"tag":2290,"props":3631,"children":3632},{"style":2333},[3633],{"type":2089,"value":2728},{"type":2080,"tag":2290,"props":3635,"children":3636},{"style":3578},[3637],{"type":2089,"value":3384},{"type":2080,"tag":2290,"props":3639,"children":3640},{"style":2333},[3641],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3643,"children":3644},{"style":2339},[3645],{"type":2089,"value":3646},"allocated_to",{"type":2080,"tag":2290,"props":3648,"children":3649},{"style":2333},[3650],{"type":2089,"value":3285},{"type":2080,"tag":2290,"props":3652,"children":3653},{"class":2292,"line":2372},[3654,3659,3663,3667,3671],{"type":2080,"tag":2290,"props":3655,"children":3656},{"style":3601},[3657],{"type":2089,"value":3658},"        description",{"type":2080,"tag":2290,"props":3660,"children":3661},{"style":2333},[3662],{"type":2089,"value":2728},{"type":2080,"tag":2290,"props":3664,"children":3665},{"style":3578},[3666],{"type":2089,"value":3384},{"type":2080,"tag":2290,"props":3668,"children":3669},{"style":2333},[3670],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3672,"children":3673},{"style":2339},[3674],{"type":2089,"value":3675},"subject\n",{"type":2080,"tag":2290,"props":3677,"children":3678},{"class":2292,"line":2394},[3679,3684,3689],{"type":2080,"tag":2290,"props":3680,"children":3681},{"style":2333},[3682],{"type":2089,"value":3683},"    )).",{"type":2080,"tag":2290,"props":3685,"children":3686},{"style":3578},[3687],{"type":2089,"value":3688},"insert",{"type":2080,"tag":2290,"props":3690,"children":3691},{"style":2333},[3692],{"type":2089,"value":3693},"()\n",{"type":2080,"tag":2153,"props":3695,"children":3697},{"id":3696},"_34-api",[3698],{"type":2089,"value":3699},"3.4 API",{"type":2080,"tag":2186,"props":3701,"children":3702},{},[3703,3711],{"type":2080,"tag":2107,"props":3704,"children":3705},{},[3706,3707],{"type":2089,"value":3338},{"type":2080,"tag":2085,"props":3708,"children":3709},{},[3710],{"type":2089,"value":720},{"type":2080,"tag":2107,"props":3712,"children":3713},{},[3714,3716],{"type":2089,"value":3715},"Nom de la méthode: ",{"type":2080,"tag":2113,"props":3717,"children":3719},{"className":3718},[],[3720],{"type":2089,"value":3721},"test_method",{"type":2080,"tag":2165,"props":3723,"children":3725},{"code":3724,"language":2283,"meta":2171,"className":2284,"style":2171},"frappe.response['message'] = \"hello\"\n",[3726],{"type":2080,"tag":2113,"props":3727,"children":3728},{"__ignoreMap":2171},[3729],{"type":2080,"tag":2290,"props":3730,"children":3731},{"class":2292,"line":2293},[3732,3736,3740,3744,3749,3754,3759,3763,3768,3772,3776,3781],{"type":2080,"tag":2290,"props":3733,"children":3734},{"style":2297},[3735],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":3737,"children":3738},{"style":2333},[3739],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3741,"children":3742},{"style":2339},[3743],{"type":2089,"value":2575},{"type":2080,"tag":2290,"props":3745,"children":3746},{"style":2333},[3747],{"type":2089,"value":3748},"[",{"type":2080,"tag":2290,"props":3750,"children":3751},{"style":2333},[3752],{"type":2089,"value":3753},"'",{"type":2080,"tag":2290,"props":3755,"children":3756},{"style":3366},[3757],{"type":2089,"value":3758},"message",{"type":2080,"tag":2290,"props":3760,"children":3761},{"style":2333},[3762],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":3764,"children":3765},{"style":2333},[3766],{"type":2089,"value":3767},"]",{"type":2080,"tag":2290,"props":3769,"children":3770},{"style":2333},[3771],{"type":2089,"value":2728},{"type":2080,"tag":2290,"props":3773,"children":3774},{"style":2333},[3775],{"type":2089,"value":3363},{"type":2080,"tag":2290,"props":3777,"children":3778},{"style":3366},[3779],{"type":2089,"value":3780},"hello",{"type":2080,"tag":2290,"props":3782,"children":3783},{"style":2333},[3784],{"type":2089,"value":3785},"\"\n",{"type":2080,"tag":2081,"props":3787,"children":3788},{},[3789,3791],{"type":2089,"value":3790},"Requête: ",{"type":2080,"tag":2113,"props":3792,"children":3794},{"className":3793},[],[3795],{"type":2089,"value":3796},"/api/method/test_method",{"type":2080,"tag":2153,"props":3798,"children":3800},{"id":3799},"_35-création-dune-réservation-darticles-quand-dautres-salles-sont-réservées",[3801],{"type":2089,"value":3802},"3.5 Création d'une réservation d'articles quand d'autres salles sont réservées",{"type":2080,"tag":2186,"props":3804,"children":3805},{},[3806],{"type":2080,"tag":2107,"props":3807,"children":3808},{},[3809,3810],{"type":2089,"value":3338},{"type":2080,"tag":2085,"props":3811,"children":3812},{},[3813],{"type":2089,"value":2203},{"type":2080,"tag":2081,"props":3815,"children":3816},{},[3817],{"type":2089,"value":3818},"👨‍💼 Le cas d’usage (réel)\nUn tiers-lieu a deux salles de réunions : la salle 1 (1ère étage) et 2 (2e) qu’ils louent à des assos, entreprises etc. Ils souhaitent proposer la salle 1 pour du coworking lorsqu’elle n’est pas utilisée avec à terme la possibilité pour les usagers de réserver eux-mêmes en ligne.",{"type":2080,"tag":2081,"props":3820,"children":3821},{},[3822],{"type":2089,"value":3823},"🤔 Problème : il faut pouvoir empêcher la réservation du coworking quand les deux salles sont louées.",{"type":2080,"tag":2081,"props":3825,"children":3826},{},[3827],{"type":2089,"value":3828},"💡 Une solution : Un script Python qui vient automatiquement réserver tout les créneaux de coworking lorsque il y a chevauchement entre les réservations de la salle 1 et 2.",{"type":2080,"tag":2165,"props":3830,"children":3832},{"code":3831,"language":2283,"meta":2171,"className":2284,"style":2171},"#****Script parameters****\nmaster_room1 = \"Salle réunion 1\"\nmaster_room2 = \"Salle réunion 2\"\nslave_room = \"Salle de coworking\"\n\n# Constraint: If two master rooms are booked at the same time, then the slave room is booked\n# too during the overlap\n#****0/ Script only does something if item is one of the two master rooms****\nif doc.item == master_room1 or doc.item == master_room2:\n    #****1/ Get list of bookings confirmed on the same day, exclusive of the slave room****\n    booking_list = frappe.db.get_list('Item Booking',\n        filters=[\n            ['status','=', 'Confirmed'],\n            ['name','!=', doc.name],\n            ['item', '!=', slave_room],\n            ['starts_on','>=',frappe.utils.getdate(doc.starts_on)],\n            ['starts_on' ,'\u003C',frappe.utils.add_to_date(frappe.utils.getdate(doc.ends_on),days=1) ]\n        ],\n        fields=['name'],\n        as_list=True\n    )\n    # Assign datetime data to variables for clearer code\n    start1 = frappe.utils.get_datetime(doc.starts_on)\n    end1 = frappe.utils.get_datetime(doc.ends_on)\n    #****2/ Cycle through all the slots identified to check for overlaps****\n    for x in booking_list:\n        item_booking = frappe.get_doc('Item Booking', ''.join(x))\n        # Assign datetime data to variables for clearer code\n        start2 = frappe.utils.get_datetime(item_booking.starts_on)\n        end2 = frappe.utils.get_datetime(item_booking.ends_on)\n        #-- Conditions to check for overlaps (hard to get one's head around without a schematic) --\n        # Initialisation of a flag to check if one of the condition is met\n        overlapflag = 0\n        # Initialisation of slave start and end as the same as current doc\n        slavestart = start1\n        slaveend = end1\n        # Tail of previous slots overlaps with current doc\n        if end2 > start1 and end2 \u003C end1:\n            slaveend = end2\n            overlapflag = overlapflag + 1\n        # Start of previous slots overlaps with tail of current doc\n        if start2 > start1 and start2 \u003C end1:\n            slavestart = start2\n            overlapflag = overlapflag + 1\n        # Current doc is completely contained by previous slot\n        if start2 \u003C start1 and end2 > end1:\n            slavestart = start1\n            slaveend = end1\n            overlapflag = overlapflag + 1\n        #****3/Create a new slot to book the room if an overlap has been found****\n        if overlapflag:\n            # Get number of simultaneous bookings allowed\n            slave_item = frappe.get_doc(\"Item\", slave_room)\n            n_slots = slave_item.simultaneous_bookings_allowed\n            frappe.msgprint(\"Nombre de slots = \" + str(n_slots))\n            # Create enough slots to fill the slave room\n            for x in range(n_slots):\n                frappe.msgprint(\"Création d'une réservation pour l'article : \" + slave_room)\n                slave = frappe.get_doc({\n                    \"doctype\": \"Item Booking\",\n                    \"title\" : \"résa scriptée\",\n                    \"item\" : slave_room,\n                    \"status\" : \"Confirmed\",\n                    \"starts_on\" : slavestart,\n                    \"ends_on\" : slaveend\n                    })\n                slave.insert()\n        overlapflag = 0\n    else:\n        pass\n",[3833],{"type":2080,"tag":2113,"props":3834,"children":3835},{"__ignoreMap":2171},[3836,3844,3869,3894,3919,3926,3934,3942,3950,4010,4018,4072,4085,4144,4201,4249,4333,4466,4474,4503,4516,4524,4532,4586,4638,4646,4673,4745,4753,4806,4858,4866,4874,4891,4899,4916,4933,4941,4986,5003,5030,5038,5078,5095,5118,5126,5165,5180,5195,5218,5226,5242,5250,5303,5330,5387,5396,5431,5477,5507,5546,5585,5613,5649,5678,5703,5712,5733,5749,5762],{"type":2080,"tag":2290,"props":3837,"children":3838},{"class":2292,"line":2293},[3839],{"type":2080,"tag":2290,"props":3840,"children":3841},{"style":2303},[3842],{"type":2089,"value":3843},"#****Script parameters****\n",{"type":2080,"tag":2290,"props":3845,"children":3846},{"class":2292,"line":2309},[3847,3852,3856,3860,3865],{"type":2080,"tag":2290,"props":3848,"children":3849},{"style":2297},[3850],{"type":2089,"value":3851},"master_room1 ",{"type":2080,"tag":2290,"props":3853,"children":3854},{"style":2333},[3855],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":3857,"children":3858},{"style":2333},[3859],{"type":2089,"value":3363},{"type":2080,"tag":2290,"props":3861,"children":3862},{"style":3366},[3863],{"type":2089,"value":3864},"Salle réunion 1",{"type":2080,"tag":2290,"props":3866,"children":3867},{"style":2333},[3868],{"type":2089,"value":3785},{"type":2080,"tag":2290,"props":3870,"children":3871},{"class":2292,"line":2324},[3872,3877,3881,3885,3890],{"type":2080,"tag":2290,"props":3873,"children":3874},{"style":2297},[3875],{"type":2089,"value":3876},"master_room2 ",{"type":2080,"tag":2290,"props":3878,"children":3879},{"style":2333},[3880],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":3882,"children":3883},{"style":2333},[3884],{"type":2089,"value":3363},{"type":2080,"tag":2290,"props":3886,"children":3887},{"style":3366},[3888],{"type":2089,"value":3889},"Salle réunion 2",{"type":2080,"tag":2290,"props":3891,"children":3892},{"style":2333},[3893],{"type":2089,"value":3785},{"type":2080,"tag":2290,"props":3895,"children":3896},{"class":2292,"line":2350},[3897,3902,3906,3910,3915],{"type":2080,"tag":2290,"props":3898,"children":3899},{"style":2297},[3900],{"type":2089,"value":3901},"slave_room ",{"type":2080,"tag":2290,"props":3903,"children":3904},{"style":2333},[3905],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":3907,"children":3908},{"style":2333},[3909],{"type":2089,"value":3363},{"type":2080,"tag":2290,"props":3911,"children":3912},{"style":3366},[3913],{"type":2089,"value":3914},"Salle de coworking",{"type":2080,"tag":2290,"props":3916,"children":3917},{"style":2333},[3918],{"type":2089,"value":3785},{"type":2080,"tag":2290,"props":3920,"children":3921},{"class":2292,"line":2372},[3922],{"type":2080,"tag":2290,"props":3923,"children":3924},{"emptyLinePlaceholder":2398},[3925],{"type":2089,"value":2401},{"type":2080,"tag":2290,"props":3927,"children":3928},{"class":2292,"line":2394},[3929],{"type":2080,"tag":2290,"props":3930,"children":3931},{"style":2303},[3932],{"type":2089,"value":3933},"# Constraint: If two master rooms are booked at the same time, then the slave room is booked\n",{"type":2080,"tag":2290,"props":3935,"children":3936},{"class":2292,"line":2404},[3937],{"type":2080,"tag":2290,"props":3938,"children":3939},{"style":2303},[3940],{"type":2089,"value":3941},"# too during the overlap\n",{"type":2080,"tag":2290,"props":3943,"children":3944},{"class":2292,"line":2413},[3945],{"type":2080,"tag":2290,"props":3946,"children":3947},{"style":2303},[3948],{"type":2089,"value":3949},"#****0/ Script only does something if item is one of the two master rooms****\n",{"type":2080,"tag":2290,"props":3951,"children":3952},{"class":2292,"line":2435},[3953,3957,3961,3965,3970,3975,3980,3985,3989,3993,3997,4001,4006],{"type":2080,"tag":2290,"props":3954,"children":3955},{"style":3355},[3956],{"type":2089,"value":3358},{"type":2080,"tag":2290,"props":3958,"children":3959},{"style":2297},[3960],{"type":2089,"value":3384},{"type":2080,"tag":2290,"props":3962,"children":3963},{"style":2333},[3964],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3966,"children":3967},{"style":2339},[3968],{"type":2089,"value":3969},"item",{"type":2080,"tag":2290,"props":3971,"children":3972},{"style":2333},[3973],{"type":2089,"value":3974}," ==",{"type":2080,"tag":2290,"props":3976,"children":3977},{"style":2297},[3978],{"type":2089,"value":3979}," master_room1 ",{"type":2080,"tag":2290,"props":3981,"children":3982},{"style":2333},[3983],{"type":2089,"value":3984},"or",{"type":2080,"tag":2290,"props":3986,"children":3987},{"style":2297},[3988],{"type":2089,"value":3384},{"type":2080,"tag":2290,"props":3990,"children":3991},{"style":2333},[3992],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":3994,"children":3995},{"style":2339},[3996],{"type":2089,"value":3969},{"type":2080,"tag":2290,"props":3998,"children":3999},{"style":2333},[4000],{"type":2089,"value":3974},{"type":2080,"tag":2290,"props":4002,"children":4003},{"style":2297},[4004],{"type":2089,"value":4005}," master_room2",{"type":2080,"tag":2290,"props":4007,"children":4008},{"style":2333},[4009],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":4011,"children":4012},{"class":2292,"line":2456},[4013],{"type":2080,"tag":2290,"props":4014,"children":4015},{"style":2303},[4016],{"type":2089,"value":4017},"    #****1/ Get list of bookings confirmed on the same day, exclusive of the slave room****\n",{"type":2080,"tag":2290,"props":4019,"children":4020},{"class":2292,"line":2478},[4021,4026,4030,4034,4038,4042,4046,4051,4055,4059,4064,4068],{"type":2080,"tag":2290,"props":4022,"children":4023},{"style":2297},[4024],{"type":2089,"value":4025},"    booking_list ",{"type":2080,"tag":2290,"props":4027,"children":4028},{"style":2333},[4029],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4031,"children":4032},{"style":2297},[4033],{"type":2089,"value":3509},{"type":2080,"tag":2290,"props":4035,"children":4036},{"style":2333},[4037],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4039,"children":4040},{"style":2339},[4041],{"type":2089,"value":2890},{"type":2080,"tag":2290,"props":4043,"children":4044},{"style":2333},[4045],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4047,"children":4048},{"style":3578},[4049],{"type":2089,"value":4050},"get_list",{"type":2080,"tag":2290,"props":4052,"children":4053},{"style":2333},[4054],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4056,"children":4057},{"style":2333},[4058],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4060,"children":4061},{"style":3366},[4062],{"type":2089,"value":4063},"Item Booking",{"type":2080,"tag":2290,"props":4065,"children":4066},{"style":2333},[4067],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4069,"children":4070},{"style":2333},[4071],{"type":2089,"value":3285},{"type":2080,"tag":2290,"props":4073,"children":4074},{"class":2292,"line":2500},[4075,4080],{"type":2080,"tag":2290,"props":4076,"children":4077},{"style":3601},[4078],{"type":2089,"value":4079},"        filters",{"type":2080,"tag":2290,"props":4081,"children":4082},{"style":2333},[4083],{"type":2089,"value":4084},"=[\n",{"type":2080,"tag":2290,"props":4086,"children":4087},{"class":2292,"line":2508},[4088,4093,4097,4101,4105,4110,4114,4118,4122,4126,4130,4135,4139],{"type":2080,"tag":2290,"props":4089,"children":4090},{"style":2333},[4091],{"type":2089,"value":4092},"            [",{"type":2080,"tag":2290,"props":4094,"children":4095},{"style":2333},[4096],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4098,"children":4099},{"style":3366},[4100],{"type":2089,"value":3415},{"type":2080,"tag":2290,"props":4102,"children":4103},{"style":2333},[4104],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4106,"children":4107},{"style":2333},[4108],{"type":2089,"value":4109},",",{"type":2080,"tag":2290,"props":4111,"children":4112},{"style":2333},[4113],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4115,"children":4116},{"style":3366},[4117],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4119,"children":4120},{"style":2333},[4121],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4123,"children":4124},{"style":2333},[4125],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4127,"children":4128},{"style":2333},[4129],{"type":2089,"value":3424},{"type":2080,"tag":2290,"props":4131,"children":4132},{"style":3366},[4133],{"type":2089,"value":4134},"Confirmed",{"type":2080,"tag":2290,"props":4136,"children":4137},{"style":2333},[4138],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4140,"children":4141},{"style":2333},[4142],{"type":2089,"value":4143},"],\n",{"type":2080,"tag":2290,"props":4145,"children":4146},{"class":2292,"line":2517},[4147,4151,4155,4160,4164,4168,4172,4177,4181,4185,4189,4193,4197],{"type":2080,"tag":2290,"props":4148,"children":4149},{"style":2333},[4150],{"type":2089,"value":4092},{"type":2080,"tag":2290,"props":4152,"children":4153},{"style":2333},[4154],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4156,"children":4157},{"style":3366},[4158],{"type":2089,"value":4159},"name",{"type":2080,"tag":2290,"props":4161,"children":4162},{"style":2333},[4163],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4165,"children":4166},{"style":2333},[4167],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4169,"children":4170},{"style":2333},[4171],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4173,"children":4174},{"style":3366},[4175],{"type":2089,"value":4176},"!=",{"type":2080,"tag":2290,"props":4178,"children":4179},{"style":2333},[4180],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4182,"children":4183},{"style":2333},[4184],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4186,"children":4187},{"style":3578},[4188],{"type":2089,"value":3384},{"type":2080,"tag":2290,"props":4190,"children":4191},{"style":2333},[4192],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4194,"children":4195},{"style":2339},[4196],{"type":2089,"value":4159},{"type":2080,"tag":2290,"props":4198,"children":4199},{"style":2333},[4200],{"type":2089,"value":4143},{"type":2080,"tag":2290,"props":4202,"children":4203},{"class":2292,"line":2539},[4204,4208,4212,4216,4220,4224,4228,4232,4236,4240,4245],{"type":2080,"tag":2290,"props":4205,"children":4206},{"style":2333},[4207],{"type":2089,"value":4092},{"type":2080,"tag":2290,"props":4209,"children":4210},{"style":2333},[4211],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4213,"children":4214},{"style":3366},[4215],{"type":2089,"value":3969},{"type":2080,"tag":2290,"props":4217,"children":4218},{"style":2333},[4219],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4221,"children":4222},{"style":2333},[4223],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4225,"children":4226},{"style":2333},[4227],{"type":2089,"value":3424},{"type":2080,"tag":2290,"props":4229,"children":4230},{"style":3366},[4231],{"type":2089,"value":4176},{"type":2080,"tag":2290,"props":4233,"children":4234},{"style":2333},[4235],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4237,"children":4238},{"style":2333},[4239],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4241,"children":4242},{"style":3578},[4243],{"type":2089,"value":4244}," slave_room",{"type":2080,"tag":2290,"props":4246,"children":4247},{"style":2333},[4248],{"type":2089,"value":4143},{"type":2080,"tag":2290,"props":4250,"children":4251},{"class":2292,"line":2561},[4252,4256,4260,4265,4269,4273,4277,4282,4286,4290,4294,4298,4302,4306,4311,4315,4320,4324,4328],{"type":2080,"tag":2290,"props":4253,"children":4254},{"style":2333},[4255],{"type":2089,"value":4092},{"type":2080,"tag":2290,"props":4257,"children":4258},{"style":2333},[4259],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4261,"children":4262},{"style":3366},[4263],{"type":2089,"value":4264},"starts_on",{"type":2080,"tag":2290,"props":4266,"children":4267},{"style":2333},[4268],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4270,"children":4271},{"style":2333},[4272],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4274,"children":4275},{"style":2333},[4276],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4278,"children":4279},{"style":3366},[4280],{"type":2089,"value":4281},">=",{"type":2080,"tag":2290,"props":4283,"children":4284},{"style":2333},[4285],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4287,"children":4288},{"style":2333},[4289],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4291,"children":4292},{"style":3578},[4293],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":4295,"children":4296},{"style":2333},[4297],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4299,"children":4300},{"style":2339},[4301],{"type":2089,"value":3136},{"type":2080,"tag":2290,"props":4303,"children":4304},{"style":2333},[4305],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4307,"children":4308},{"style":3578},[4309],{"type":2089,"value":4310},"getdate",{"type":2080,"tag":2290,"props":4312,"children":4313},{"style":2333},[4314],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4316,"children":4317},{"style":3578},[4318],{"type":2089,"value":4319},"doc",{"type":2080,"tag":2290,"props":4321,"children":4322},{"style":2333},[4323],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4325,"children":4326},{"style":2339},[4327],{"type":2089,"value":4264},{"type":2080,"tag":2290,"props":4329,"children":4330},{"style":2333},[4331],{"type":2089,"value":4332},")],\n",{"type":2080,"tag":2290,"props":4334,"children":4335},{"class":2292,"line":2583},[4336,4340,4344,4348,4352,4357,4361,4366,4370,4374,4378,4382,4386,4390,4395,4399,4403,4407,4411,4415,4419,4423,4427,4431,4436,4441,4446,4450,4456,4461],{"type":2080,"tag":2290,"props":4337,"children":4338},{"style":2333},[4339],{"type":2089,"value":4092},{"type":2080,"tag":2290,"props":4341,"children":4342},{"style":2333},[4343],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4345,"children":4346},{"style":3366},[4347],{"type":2089,"value":4264},{"type":2080,"tag":2290,"props":4349,"children":4350},{"style":2333},[4351],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4353,"children":4354},{"style":2333},[4355],{"type":2089,"value":4356}," ,",{"type":2080,"tag":2290,"props":4358,"children":4359},{"style":2333},[4360],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4362,"children":4363},{"style":3366},[4364],{"type":2089,"value":4365},"\u003C",{"type":2080,"tag":2290,"props":4367,"children":4368},{"style":2333},[4369],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4371,"children":4372},{"style":2333},[4373],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4375,"children":4376},{"style":3578},[4377],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":4379,"children":4380},{"style":2333},[4381],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4383,"children":4384},{"style":2339},[4385],{"type":2089,"value":3136},{"type":2080,"tag":2290,"props":4387,"children":4388},{"style":2333},[4389],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4391,"children":4392},{"style":3578},[4393],{"type":2089,"value":4394},"add_to_date",{"type":2080,"tag":2290,"props":4396,"children":4397},{"style":2333},[4398],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4400,"children":4401},{"style":3578},[4402],{"type":2089,"value":2330},{"type":2080,"tag":2290,"props":4404,"children":4405},{"style":2333},[4406],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4408,"children":4409},{"style":2339},[4410],{"type":2089,"value":3136},{"type":2080,"tag":2290,"props":4412,"children":4413},{"style":2333},[4414],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4416,"children":4417},{"style":3578},[4418],{"type":2089,"value":4310},{"type":2080,"tag":2290,"props":4420,"children":4421},{"style":2333},[4422],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4424,"children":4425},{"style":3578},[4426],{"type":2089,"value":4319},{"type":2080,"tag":2290,"props":4428,"children":4429},{"style":2333},[4430],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4432,"children":4433},{"style":2339},[4434],{"type":2089,"value":4435},"ends_on",{"type":2080,"tag":2290,"props":4437,"children":4438},{"style":2333},[4439],{"type":2089,"value":4440},"),",{"type":2080,"tag":2290,"props":4442,"children":4443},{"style":3601},[4444],{"type":2089,"value":4445},"days",{"type":2080,"tag":2290,"props":4447,"children":4448},{"style":2333},[4449],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4451,"children":4453},{"style":4452},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[4454],{"type":2089,"value":4455},"1",{"type":2080,"tag":2290,"props":4457,"children":4458},{"style":2333},[4459],{"type":2089,"value":4460},")",{"type":2080,"tag":2290,"props":4462,"children":4463},{"style":2333},[4464],{"type":2089,"value":4465}," ]\n",{"type":2080,"tag":2290,"props":4467,"children":4468},{"class":2292,"line":2614},[4469],{"type":2080,"tag":2290,"props":4470,"children":4471},{"style":2333},[4472],{"type":2089,"value":4473},"        ],\n",{"type":2080,"tag":2290,"props":4475,"children":4476},{"class":2292,"line":2644},[4477,4482,4487,4491,4495,4499],{"type":2080,"tag":2290,"props":4478,"children":4479},{"style":3601},[4480],{"type":2089,"value":4481},"        fields",{"type":2080,"tag":2290,"props":4483,"children":4484},{"style":2333},[4485],{"type":2089,"value":4486},"=[",{"type":2080,"tag":2290,"props":4488,"children":4489},{"style":2333},[4490],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4492,"children":4493},{"style":3366},[4494],{"type":2089,"value":4159},{"type":2080,"tag":2290,"props":4496,"children":4497},{"style":2333},[4498],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4500,"children":4501},{"style":2333},[4502],{"type":2089,"value":4143},{"type":2080,"tag":2290,"props":4504,"children":4505},{"class":2292,"line":2665},[4506,4511],{"type":2080,"tag":2290,"props":4507,"children":4508},{"style":3601},[4509],{"type":2089,"value":4510},"        as_list",{"type":2080,"tag":2290,"props":4512,"children":4513},{"style":2333},[4514],{"type":2089,"value":4515},"=True\n",{"type":2080,"tag":2290,"props":4517,"children":4518},{"class":2292,"line":2687},[4519],{"type":2080,"tag":2290,"props":4520,"children":4521},{"style":2333},[4522],{"type":2089,"value":4523},"    )\n",{"type":2080,"tag":2290,"props":4525,"children":4526},{"class":2292,"line":2709},[4527],{"type":2080,"tag":2290,"props":4528,"children":4529},{"style":2303},[4530],{"type":2089,"value":4531},"    # Assign datetime data to variables for clearer code\n",{"type":2080,"tag":2290,"props":4533,"children":4534},{"class":2292,"line":2735},[4535,4540,4544,4548,4552,4556,4560,4565,4569,4573,4577,4581],{"type":2080,"tag":2290,"props":4536,"children":4537},{"style":2297},[4538],{"type":2089,"value":4539},"    start1 ",{"type":2080,"tag":2290,"props":4541,"children":4542},{"style":2333},[4543],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4545,"children":4546},{"style":2297},[4547],{"type":2089,"value":3509},{"type":2080,"tag":2290,"props":4549,"children":4550},{"style":2333},[4551],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4553,"children":4554},{"style":2339},[4555],{"type":2089,"value":3136},{"type":2080,"tag":2290,"props":4557,"children":4558},{"style":2333},[4559],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4561,"children":4562},{"style":3578},[4563],{"type":2089,"value":4564},"get_datetime",{"type":2080,"tag":2290,"props":4566,"children":4567},{"style":2333},[4568],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4570,"children":4571},{"style":3578},[4572],{"type":2089,"value":4319},{"type":2080,"tag":2290,"props":4574,"children":4575},{"style":2333},[4576],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4578,"children":4579},{"style":2339},[4580],{"type":2089,"value":4264},{"type":2080,"tag":2290,"props":4582,"children":4583},{"style":2333},[4584],{"type":2089,"value":4585},")\n",{"type":2080,"tag":2290,"props":4587,"children":4588},{"class":2292,"line":2743},[4589,4594,4598,4602,4606,4610,4614,4618,4622,4626,4630,4634],{"type":2080,"tag":2290,"props":4590,"children":4591},{"style":2297},[4592],{"type":2089,"value":4593},"    end1 ",{"type":2080,"tag":2290,"props":4595,"children":4596},{"style":2333},[4597],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4599,"children":4600},{"style":2297},[4601],{"type":2089,"value":3509},{"type":2080,"tag":2290,"props":4603,"children":4604},{"style":2333},[4605],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4607,"children":4608},{"style":2339},[4609],{"type":2089,"value":3136},{"type":2080,"tag":2290,"props":4611,"children":4612},{"style":2333},[4613],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4615,"children":4616},{"style":3578},[4617],{"type":2089,"value":4564},{"type":2080,"tag":2290,"props":4619,"children":4620},{"style":2333},[4621],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4623,"children":4624},{"style":3578},[4625],{"type":2089,"value":4319},{"type":2080,"tag":2290,"props":4627,"children":4628},{"style":2333},[4629],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4631,"children":4632},{"style":2339},[4633],{"type":2089,"value":4435},{"type":2080,"tag":2290,"props":4635,"children":4636},{"style":2333},[4637],{"type":2089,"value":4585},{"type":2080,"tag":2290,"props":4639,"children":4640},{"class":2292,"line":2752},[4641],{"type":2080,"tag":2290,"props":4642,"children":4643},{"style":2303},[4644],{"type":2089,"value":4645},"    #****2/ Cycle through all the slots identified to check for overlaps****\n",{"type":2080,"tag":2290,"props":4647,"children":4648},{"class":2292,"line":2774},[4649,4654,4659,4664,4669],{"type":2080,"tag":2290,"props":4650,"children":4651},{"style":3355},[4652],{"type":2089,"value":4653},"    for",{"type":2080,"tag":2290,"props":4655,"children":4656},{"style":2297},[4657],{"type":2089,"value":4658}," x ",{"type":2080,"tag":2290,"props":4660,"children":4661},{"style":3355},[4662],{"type":2089,"value":4663},"in",{"type":2080,"tag":2290,"props":4665,"children":4666},{"style":2297},[4667],{"type":2089,"value":4668}," booking_list",{"type":2080,"tag":2290,"props":4670,"children":4671},{"style":2333},[4672],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":4674,"children":4675},{"class":2292,"line":2791},[4676,4681,4685,4689,4693,4697,4701,4705,4709,4713,4717,4722,4726,4731,4735,4740],{"type":2080,"tag":2290,"props":4677,"children":4678},{"style":2297},[4679],{"type":2089,"value":4680},"        item_booking ",{"type":2080,"tag":2290,"props":4682,"children":4683},{"style":2333},[4684],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4686,"children":4687},{"style":2297},[4688],{"type":2089,"value":3509},{"type":2080,"tag":2290,"props":4690,"children":4691},{"style":2333},[4692],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4694,"children":4695},{"style":3578},[4696],{"type":2089,"value":3581},{"type":2080,"tag":2290,"props":4698,"children":4699},{"style":2333},[4700],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4702,"children":4703},{"style":2333},[4704],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4706,"children":4707},{"style":3366},[4708],{"type":2089,"value":4063},{"type":2080,"tag":2290,"props":4710,"children":4711},{"style":2333},[4712],{"type":2089,"value":3753},{"type":2080,"tag":2290,"props":4714,"children":4715},{"style":2333},[4716],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":4718,"children":4719},{"style":2333},[4720],{"type":2089,"value":4721}," ''",{"type":2080,"tag":2290,"props":4723,"children":4724},{"style":2333},[4725],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4727,"children":4728},{"style":3578},[4729],{"type":2089,"value":4730},"join",{"type":2080,"tag":2290,"props":4732,"children":4733},{"style":2333},[4734],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4736,"children":4737},{"style":3578},[4738],{"type":2089,"value":4739},"x",{"type":2080,"tag":2290,"props":4741,"children":4742},{"style":2333},[4743],{"type":2089,"value":4744},"))\n",{"type":2080,"tag":2290,"props":4746,"children":4747},{"class":2292,"line":2808},[4748],{"type":2080,"tag":2290,"props":4749,"children":4750},{"style":2303},[4751],{"type":2089,"value":4752},"        # Assign datetime data to variables for clearer code\n",{"type":2080,"tag":2290,"props":4754,"children":4755},{"class":2292,"line":2825},[4756,4761,4765,4769,4773,4777,4781,4785,4789,4794,4798,4802],{"type":2080,"tag":2290,"props":4757,"children":4758},{"style":2297},[4759],{"type":2089,"value":4760},"        start2 ",{"type":2080,"tag":2290,"props":4762,"children":4763},{"style":2333},[4764],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4766,"children":4767},{"style":2297},[4768],{"type":2089,"value":3509},{"type":2080,"tag":2290,"props":4770,"children":4771},{"style":2333},[4772],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4774,"children":4775},{"style":2339},[4776],{"type":2089,"value":3136},{"type":2080,"tag":2290,"props":4778,"children":4779},{"style":2333},[4780],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4782,"children":4783},{"style":3578},[4784],{"type":2089,"value":4564},{"type":2080,"tag":2290,"props":4786,"children":4787},{"style":2333},[4788],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4790,"children":4791},{"style":3578},[4792],{"type":2089,"value":4793},"item_booking",{"type":2080,"tag":2290,"props":4795,"children":4796},{"style":2333},[4797],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4799,"children":4800},{"style":2339},[4801],{"type":2089,"value":4264},{"type":2080,"tag":2290,"props":4803,"children":4804},{"style":2333},[4805],{"type":2089,"value":4585},{"type":2080,"tag":2290,"props":4807,"children":4808},{"class":2292,"line":2842},[4809,4814,4818,4822,4826,4830,4834,4838,4842,4846,4850,4854],{"type":2080,"tag":2290,"props":4810,"children":4811},{"style":2297},[4812],{"type":2089,"value":4813},"        end2 ",{"type":2080,"tag":2290,"props":4815,"children":4816},{"style":2333},[4817],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4819,"children":4820},{"style":2297},[4821],{"type":2089,"value":3509},{"type":2080,"tag":2290,"props":4823,"children":4824},{"style":2333},[4825],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4827,"children":4828},{"style":2339},[4829],{"type":2089,"value":3136},{"type":2080,"tag":2290,"props":4831,"children":4832},{"style":2333},[4833],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4835,"children":4836},{"style":3578},[4837],{"type":2089,"value":4564},{"type":2080,"tag":2290,"props":4839,"children":4840},{"style":2333},[4841],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":4843,"children":4844},{"style":3578},[4845],{"type":2089,"value":4793},{"type":2080,"tag":2290,"props":4847,"children":4848},{"style":2333},[4849],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":4851,"children":4852},{"style":2339},[4853],{"type":2089,"value":4435},{"type":2080,"tag":2290,"props":4855,"children":4856},{"style":2333},[4857],{"type":2089,"value":4585},{"type":2080,"tag":2290,"props":4859,"children":4860},{"class":2292,"line":2859},[4861],{"type":2080,"tag":2290,"props":4862,"children":4863},{"style":2303},[4864],{"type":2089,"value":4865},"        #-- Conditions to check for overlaps (hard to get one's head around without a schematic) --\n",{"type":2080,"tag":2290,"props":4867,"children":4868},{"class":2292,"line":2867},[4869],{"type":2080,"tag":2290,"props":4870,"children":4871},{"style":2303},[4872],{"type":2089,"value":4873},"        # Initialisation of a flag to check if one of the condition is met\n",{"type":2080,"tag":2290,"props":4875,"children":4876},{"class":2292,"line":2876},[4877,4882,4886],{"type":2080,"tag":2290,"props":4878,"children":4879},{"style":2297},[4880],{"type":2089,"value":4881},"        overlapflag ",{"type":2080,"tag":2290,"props":4883,"children":4884},{"style":2333},[4885],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4887,"children":4888},{"style":4452},[4889],{"type":2089,"value":4890}," 0\n",{"type":2080,"tag":2290,"props":4892,"children":4893},{"class":2292,"line":2901},[4894],{"type":2080,"tag":2290,"props":4895,"children":4896},{"style":2303},[4897],{"type":2089,"value":4898},"        # Initialisation of slave start and end as the same as current doc\n",{"type":2080,"tag":2290,"props":4900,"children":4901},{"class":2292,"line":2925},[4902,4907,4911],{"type":2080,"tag":2290,"props":4903,"children":4904},{"style":2297},[4905],{"type":2089,"value":4906},"        slavestart ",{"type":2080,"tag":2290,"props":4908,"children":4909},{"style":2333},[4910],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4912,"children":4913},{"style":2297},[4914],{"type":2089,"value":4915}," start1\n",{"type":2080,"tag":2290,"props":4917,"children":4918},{"class":2292,"line":2950},[4919,4924,4928],{"type":2080,"tag":2290,"props":4920,"children":4921},{"style":2297},[4922],{"type":2089,"value":4923},"        slaveend ",{"type":2080,"tag":2290,"props":4925,"children":4926},{"style":2333},[4927],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4929,"children":4930},{"style":2297},[4931],{"type":2089,"value":4932}," end1\n",{"type":2080,"tag":2290,"props":4934,"children":4935},{"class":2292,"line":2975},[4936],{"type":2080,"tag":2290,"props":4937,"children":4938},{"style":2303},[4939],{"type":2089,"value":4940},"        # Tail of previous slots overlaps with current doc\n",{"type":2080,"tag":2290,"props":4942,"children":4943},{"class":2292,"line":3000},[4944,4949,4954,4959,4964,4969,4973,4977,4982],{"type":2080,"tag":2290,"props":4945,"children":4946},{"style":3355},[4947],{"type":2089,"value":4948},"        if",{"type":2080,"tag":2290,"props":4950,"children":4951},{"style":2297},[4952],{"type":2089,"value":4953}," end2 ",{"type":2080,"tag":2290,"props":4955,"children":4956},{"style":2333},[4957],{"type":2089,"value":4958},">",{"type":2080,"tag":2290,"props":4960,"children":4961},{"style":2297},[4962],{"type":2089,"value":4963}," start1 ",{"type":2080,"tag":2290,"props":4965,"children":4966},{"style":2333},[4967],{"type":2089,"value":4968},"and",{"type":2080,"tag":2290,"props":4970,"children":4971},{"style":2297},[4972],{"type":2089,"value":4953},{"type":2080,"tag":2290,"props":4974,"children":4975},{"style":2333},[4976],{"type":2089,"value":4365},{"type":2080,"tag":2290,"props":4978,"children":4979},{"style":2297},[4980],{"type":2089,"value":4981}," end1",{"type":2080,"tag":2290,"props":4983,"children":4984},{"style":2333},[4985],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":4987,"children":4988},{"class":2292,"line":3025},[4989,4994,4998],{"type":2080,"tag":2290,"props":4990,"children":4991},{"style":2297},[4992],{"type":2089,"value":4993},"            slaveend ",{"type":2080,"tag":2290,"props":4995,"children":4996},{"style":2333},[4997],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":4999,"children":5000},{"style":2297},[5001],{"type":2089,"value":5002}," end2\n",{"type":2080,"tag":2290,"props":5004,"children":5005},{"class":2292,"line":3033},[5006,5011,5015,5020,5025],{"type":2080,"tag":2290,"props":5007,"children":5008},{"style":2297},[5009],{"type":2089,"value":5010},"            overlapflag ",{"type":2080,"tag":2290,"props":5012,"children":5013},{"style":2333},[5014],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5016,"children":5017},{"style":2297},[5018],{"type":2089,"value":5019}," overlapflag ",{"type":2080,"tag":2290,"props":5021,"children":5022},{"style":2333},[5023],{"type":2089,"value":5024},"+",{"type":2080,"tag":2290,"props":5026,"children":5027},{"style":4452},[5028],{"type":2089,"value":5029}," 1\n",{"type":2080,"tag":2290,"props":5031,"children":5032},{"class":2292,"line":3042},[5033],{"type":2080,"tag":2290,"props":5034,"children":5035},{"style":2303},[5036],{"type":2089,"value":5037},"        # Start of previous slots overlaps with tail of current doc\n",{"type":2080,"tag":2290,"props":5039,"children":5040},{"class":2292,"line":3064},[5041,5045,5050,5054,5058,5062,5066,5070,5074],{"type":2080,"tag":2290,"props":5042,"children":5043},{"style":3355},[5044],{"type":2089,"value":4948},{"type":2080,"tag":2290,"props":5046,"children":5047},{"style":2297},[5048],{"type":2089,"value":5049}," start2 ",{"type":2080,"tag":2290,"props":5051,"children":5052},{"style":2333},[5053],{"type":2089,"value":4958},{"type":2080,"tag":2290,"props":5055,"children":5056},{"style":2297},[5057],{"type":2089,"value":4963},{"type":2080,"tag":2290,"props":5059,"children":5060},{"style":2333},[5061],{"type":2089,"value":4968},{"type":2080,"tag":2290,"props":5063,"children":5064},{"style":2297},[5065],{"type":2089,"value":5049},{"type":2080,"tag":2290,"props":5067,"children":5068},{"style":2333},[5069],{"type":2089,"value":4365},{"type":2080,"tag":2290,"props":5071,"children":5072},{"style":2297},[5073],{"type":2089,"value":4981},{"type":2080,"tag":2290,"props":5075,"children":5076},{"style":2333},[5077],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":5079,"children":5080},{"class":2292,"line":3078},[5081,5086,5090],{"type":2080,"tag":2290,"props":5082,"children":5083},{"style":2297},[5084],{"type":2089,"value":5085},"            slavestart ",{"type":2080,"tag":2290,"props":5087,"children":5088},{"style":2333},[5089],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5091,"children":5092},{"style":2297},[5093],{"type":2089,"value":5094}," start2\n",{"type":2080,"tag":2290,"props":5096,"children":5097},{"class":2292,"line":3100},[5098,5102,5106,5110,5114],{"type":2080,"tag":2290,"props":5099,"children":5100},{"style":2297},[5101],{"type":2089,"value":5010},{"type":2080,"tag":2290,"props":5103,"children":5104},{"style":2333},[5105],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5107,"children":5108},{"style":2297},[5109],{"type":2089,"value":5019},{"type":2080,"tag":2290,"props":5111,"children":5112},{"style":2333},[5113],{"type":2089,"value":5024},{"type":2080,"tag":2290,"props":5115,"children":5116},{"style":4452},[5117],{"type":2089,"value":5029},{"type":2080,"tag":2290,"props":5119,"children":5120},{"class":2292,"line":3122},[5121],{"type":2080,"tag":2290,"props":5122,"children":5123},{"style":2303},[5124],{"type":2089,"value":5125},"        # Current doc is completely contained by previous slot\n",{"type":2080,"tag":2290,"props":5127,"children":5128},{"class":2292,"line":3144},[5129,5133,5137,5141,5145,5149,5153,5157,5161],{"type":2080,"tag":2290,"props":5130,"children":5131},{"style":3355},[5132],{"type":2089,"value":4948},{"type":2080,"tag":2290,"props":5134,"children":5135},{"style":2297},[5136],{"type":2089,"value":5049},{"type":2080,"tag":2290,"props":5138,"children":5139},{"style":2333},[5140],{"type":2089,"value":4365},{"type":2080,"tag":2290,"props":5142,"children":5143},{"style":2297},[5144],{"type":2089,"value":4963},{"type":2080,"tag":2290,"props":5146,"children":5147},{"style":2333},[5148],{"type":2089,"value":4968},{"type":2080,"tag":2290,"props":5150,"children":5151},{"style":2297},[5152],{"type":2089,"value":4953},{"type":2080,"tag":2290,"props":5154,"children":5155},{"style":2333},[5156],{"type":2089,"value":4958},{"type":2080,"tag":2290,"props":5158,"children":5159},{"style":2297},[5160],{"type":2089,"value":4981},{"type":2080,"tag":2290,"props":5162,"children":5163},{"style":2333},[5164],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":5166,"children":5167},{"class":2292,"line":3166},[5168,5172,5176],{"type":2080,"tag":2290,"props":5169,"children":5170},{"style":2297},[5171],{"type":2089,"value":5085},{"type":2080,"tag":2290,"props":5173,"children":5174},{"style":2333},[5175],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5177,"children":5178},{"style":2297},[5179],{"type":2089,"value":4915},{"type":2080,"tag":2290,"props":5181,"children":5182},{"class":2292,"line":3188},[5183,5187,5191],{"type":2080,"tag":2290,"props":5184,"children":5185},{"style":2297},[5186],{"type":2089,"value":4993},{"type":2080,"tag":2290,"props":5188,"children":5189},{"style":2333},[5190],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5192,"children":5193},{"style":2297},[5194],{"type":2089,"value":4932},{"type":2080,"tag":2290,"props":5196,"children":5197},{"class":2292,"line":3210},[5198,5202,5206,5210,5214],{"type":2080,"tag":2290,"props":5199,"children":5200},{"style":2297},[5201],{"type":2089,"value":5010},{"type":2080,"tag":2290,"props":5203,"children":5204},{"style":2333},[5205],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5207,"children":5208},{"style":2297},[5209],{"type":2089,"value":5019},{"type":2080,"tag":2290,"props":5211,"children":5212},{"style":2333},[5213],{"type":2089,"value":5024},{"type":2080,"tag":2290,"props":5215,"children":5216},{"style":4452},[5217],{"type":2089,"value":5029},{"type":2080,"tag":2290,"props":5219,"children":5220},{"class":2292,"line":3232},[5221],{"type":2080,"tag":2290,"props":5222,"children":5223},{"style":2303},[5224],{"type":2089,"value":5225},"        #****3/Create a new slot to book the room if an overlap has been found****\n",{"type":2080,"tag":2290,"props":5227,"children":5228},{"class":2292,"line":3255},[5229,5233,5238],{"type":2080,"tag":2290,"props":5230,"children":5231},{"style":3355},[5232],{"type":2089,"value":4948},{"type":2080,"tag":2290,"props":5234,"children":5235},{"style":2297},[5236],{"type":2089,"value":5237}," overlapflag",{"type":2080,"tag":2290,"props":5239,"children":5240},{"style":2333},[5241],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":5243,"children":5244},{"class":2292,"line":3288},[5245],{"type":2080,"tag":2290,"props":5246,"children":5247},{"style":2303},[5248],{"type":2089,"value":5249},"            # Get number of simultaneous bookings allowed\n",{"type":2080,"tag":2290,"props":5251,"children":5252},{"class":2292,"line":3310},[5253,5258,5262,5266,5270,5274,5278,5282,5287,5291,5295,5299],{"type":2080,"tag":2290,"props":5254,"children":5255},{"style":2297},[5256],{"type":2089,"value":5257},"            slave_item ",{"type":2080,"tag":2290,"props":5259,"children":5260},{"style":2333},[5261],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5263,"children":5264},{"style":2297},[5265],{"type":2089,"value":3509},{"type":2080,"tag":2290,"props":5267,"children":5268},{"style":2333},[5269],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":5271,"children":5272},{"style":3578},[5273],{"type":2089,"value":3581},{"type":2080,"tag":2290,"props":5275,"children":5276},{"style":2333},[5277],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":5279,"children":5280},{"style":2333},[5281],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5283,"children":5284},{"style":3366},[5285],{"type":2089,"value":5286},"Item",{"type":2080,"tag":2290,"props":5288,"children":5289},{"style":2333},[5290],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5292,"children":5293},{"style":2333},[5294],{"type":2089,"value":4109},{"type":2080,"tag":2290,"props":5296,"children":5297},{"style":3578},[5298],{"type":2089,"value":4244},{"type":2080,"tag":2290,"props":5300,"children":5301},{"style":2333},[5302],{"type":2089,"value":4585},{"type":2080,"tag":2290,"props":5304,"children":5306},{"class":2292,"line":5305},54,[5307,5312,5316,5321,5325],{"type":2080,"tag":2290,"props":5308,"children":5309},{"style":2297},[5310],{"type":2089,"value":5311},"            n_slots ",{"type":2080,"tag":2290,"props":5313,"children":5314},{"style":2333},[5315],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5317,"children":5318},{"style":2297},[5319],{"type":2089,"value":5320}," slave_item",{"type":2080,"tag":2290,"props":5322,"children":5323},{"style":2333},[5324],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":5326,"children":5327},{"style":2339},[5328],{"type":2089,"value":5329},"simultaneous_bookings_allowed\n",{"type":2080,"tag":2290,"props":5331,"children":5333},{"class":2292,"line":5332},55,[5334,5339,5343,5347,5351,5355,5360,5364,5369,5374,5378,5383],{"type":2080,"tag":2290,"props":5335,"children":5336},{"style":2297},[5337],{"type":2089,"value":5338},"            frappe",{"type":2080,"tag":2290,"props":5340,"children":5341},{"style":2333},[5342],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":5344,"children":5345},{"style":3578},[5346],{"type":2089,"value":3056},{"type":2080,"tag":2290,"props":5348,"children":5349},{"style":2333},[5350],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":5352,"children":5353},{"style":2333},[5354],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5356,"children":5357},{"style":3366},[5358],{"type":2089,"value":5359},"Nombre de slots = ",{"type":2080,"tag":2290,"props":5361,"children":5362},{"style":2333},[5363],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5365,"children":5366},{"style":2333},[5367],{"type":2089,"value":5368}," +",{"type":2080,"tag":2290,"props":5370,"children":5371},{"style":2313},[5372],{"type":2089,"value":5373}," str",{"type":2080,"tag":2290,"props":5375,"children":5376},{"style":2333},[5377],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":5379,"children":5380},{"style":3578},[5381],{"type":2089,"value":5382},"n_slots",{"type":2080,"tag":2290,"props":5384,"children":5385},{"style":2333},[5386],{"type":2089,"value":4744},{"type":2080,"tag":2290,"props":5388,"children":5390},{"class":2292,"line":5389},56,[5391],{"type":2080,"tag":2290,"props":5392,"children":5393},{"style":2303},[5394],{"type":2089,"value":5395},"            # Create enough slots to fill the slave room\n",{"type":2080,"tag":2290,"props":5397,"children":5399},{"class":2292,"line":5398},57,[5400,5405,5409,5413,5418,5422,5426],{"type":2080,"tag":2290,"props":5401,"children":5402},{"style":3355},[5403],{"type":2089,"value":5404},"            for",{"type":2080,"tag":2290,"props":5406,"children":5407},{"style":2297},[5408],{"type":2089,"value":4658},{"type":2080,"tag":2290,"props":5410,"children":5411},{"style":3355},[5412],{"type":2089,"value":4663},{"type":2080,"tag":2290,"props":5414,"children":5415},{"style":3578},[5416],{"type":2089,"value":5417}," range",{"type":2080,"tag":2290,"props":5419,"children":5420},{"style":2333},[5421],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":5423,"children":5424},{"style":3578},[5425],{"type":2089,"value":5382},{"type":2080,"tag":2290,"props":5427,"children":5428},{"style":2333},[5429],{"type":2089,"value":5430},"):\n",{"type":2080,"tag":2290,"props":5432,"children":5434},{"class":2292,"line":5433},58,[5435,5440,5444,5448,5452,5456,5461,5465,5469,5473],{"type":2080,"tag":2290,"props":5436,"children":5437},{"style":2297},[5438],{"type":2089,"value":5439},"                frappe",{"type":2080,"tag":2290,"props":5441,"children":5442},{"style":2333},[5443],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":5445,"children":5446},{"style":3578},[5447],{"type":2089,"value":3056},{"type":2080,"tag":2290,"props":5449,"children":5450},{"style":2333},[5451],{"type":2089,"value":3586},{"type":2080,"tag":2290,"props":5453,"children":5454},{"style":2333},[5455],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5457,"children":5458},{"style":3366},[5459],{"type":2089,"value":5460},"Création d'une réservation pour l'article : ",{"type":2080,"tag":2290,"props":5462,"children":5463},{"style":2333},[5464],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5466,"children":5467},{"style":2333},[5468],{"type":2089,"value":5368},{"type":2080,"tag":2290,"props":5470,"children":5471},{"style":3578},[5472],{"type":2089,"value":4244},{"type":2080,"tag":2290,"props":5474,"children":5475},{"style":2333},[5476],{"type":2089,"value":4585},{"type":2080,"tag":2290,"props":5478,"children":5480},{"class":2292,"line":5479},59,[5481,5486,5490,5494,5498,5502],{"type":2080,"tag":2290,"props":5482,"children":5483},{"style":2297},[5484],{"type":2089,"value":5485},"                slave ",{"type":2080,"tag":2290,"props":5487,"children":5488},{"style":2333},[5489],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5491,"children":5492},{"style":2297},[5493],{"type":2089,"value":3509},{"type":2080,"tag":2290,"props":5495,"children":5496},{"style":2333},[5497],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":5499,"children":5500},{"style":3578},[5501],{"type":2089,"value":3581},{"type":2080,"tag":2290,"props":5503,"children":5504},{"style":2333},[5505],{"type":2089,"value":5506},"({\n",{"type":2080,"tag":2290,"props":5508,"children":5510},{"class":2292,"line":5509},60,[5511,5516,5521,5525,5530,5534,5538,5542],{"type":2080,"tag":2290,"props":5512,"children":5513},{"style":2333},[5514],{"type":2089,"value":5515},"                    \"",{"type":2080,"tag":2290,"props":5517,"children":5518},{"style":3366},[5519],{"type":2089,"value":5520},"doctype",{"type":2080,"tag":2290,"props":5522,"children":5523},{"style":2333},[5524],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5526,"children":5527},{"style":2333},[5528],{"type":2089,"value":5529},":",{"type":2080,"tag":2290,"props":5531,"children":5532},{"style":2333},[5533],{"type":2089,"value":3363},{"type":2080,"tag":2290,"props":5535,"children":5536},{"style":3366},[5537],{"type":2089,"value":4063},{"type":2080,"tag":2290,"props":5539,"children":5540},{"style":2333},[5541],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5543,"children":5544},{"style":2333},[5545],{"type":2089,"value":3285},{"type":2080,"tag":2290,"props":5547,"children":5549},{"class":2292,"line":5548},61,[5550,5554,5559,5563,5568,5572,5577,5581],{"type":2080,"tag":2290,"props":5551,"children":5552},{"style":2333},[5553],{"type":2089,"value":5515},{"type":2080,"tag":2290,"props":5555,"children":5556},{"style":3366},[5557],{"type":2089,"value":5558},"title",{"type":2080,"tag":2290,"props":5560,"children":5561},{"style":2333},[5562],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5564,"children":5565},{"style":2333},[5566],{"type":2089,"value":5567}," :",{"type":2080,"tag":2290,"props":5569,"children":5570},{"style":2333},[5571],{"type":2089,"value":3363},{"type":2080,"tag":2290,"props":5573,"children":5574},{"style":3366},[5575],{"type":2089,"value":5576},"résa scriptée",{"type":2080,"tag":2290,"props":5578,"children":5579},{"style":2333},[5580],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5582,"children":5583},{"style":2333},[5584],{"type":2089,"value":3285},{"type":2080,"tag":2290,"props":5586,"children":5588},{"class":2292,"line":5587},62,[5589,5593,5597,5601,5605,5609],{"type":2080,"tag":2290,"props":5590,"children":5591},{"style":2333},[5592],{"type":2089,"value":5515},{"type":2080,"tag":2290,"props":5594,"children":5595},{"style":3366},[5596],{"type":2089,"value":3969},{"type":2080,"tag":2290,"props":5598,"children":5599},{"style":2333},[5600],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5602,"children":5603},{"style":2333},[5604],{"type":2089,"value":5567},{"type":2080,"tag":2290,"props":5606,"children":5607},{"style":3578},[5608],{"type":2089,"value":4244},{"type":2080,"tag":2290,"props":5610,"children":5611},{"style":2333},[5612],{"type":2089,"value":3285},{"type":2080,"tag":2290,"props":5614,"children":5616},{"class":2292,"line":5615},63,[5617,5621,5625,5629,5633,5637,5641,5645],{"type":2080,"tag":2290,"props":5618,"children":5619},{"style":2333},[5620],{"type":2089,"value":5515},{"type":2080,"tag":2290,"props":5622,"children":5623},{"style":3366},[5624],{"type":2089,"value":3415},{"type":2080,"tag":2290,"props":5626,"children":5627},{"style":2333},[5628],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5630,"children":5631},{"style":2333},[5632],{"type":2089,"value":5567},{"type":2080,"tag":2290,"props":5634,"children":5635},{"style":2333},[5636],{"type":2089,"value":3363},{"type":2080,"tag":2290,"props":5638,"children":5639},{"style":3366},[5640],{"type":2089,"value":4134},{"type":2080,"tag":2290,"props":5642,"children":5643},{"style":2333},[5644],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5646,"children":5647},{"style":2333},[5648],{"type":2089,"value":3285},{"type":2080,"tag":2290,"props":5650,"children":5652},{"class":2292,"line":5651},64,[5653,5657,5661,5665,5669,5674],{"type":2080,"tag":2290,"props":5654,"children":5655},{"style":2333},[5656],{"type":2089,"value":5515},{"type":2080,"tag":2290,"props":5658,"children":5659},{"style":3366},[5660],{"type":2089,"value":4264},{"type":2080,"tag":2290,"props":5662,"children":5663},{"style":2333},[5664],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5666,"children":5667},{"style":2333},[5668],{"type":2089,"value":5567},{"type":2080,"tag":2290,"props":5670,"children":5671},{"style":3578},[5672],{"type":2089,"value":5673}," slavestart",{"type":2080,"tag":2290,"props":5675,"children":5676},{"style":2333},[5677],{"type":2089,"value":3285},{"type":2080,"tag":2290,"props":5679,"children":5681},{"class":2292,"line":5680},65,[5682,5686,5690,5694,5698],{"type":2080,"tag":2290,"props":5683,"children":5684},{"style":2333},[5685],{"type":2089,"value":5515},{"type":2080,"tag":2290,"props":5687,"children":5688},{"style":3366},[5689],{"type":2089,"value":4435},{"type":2080,"tag":2290,"props":5691,"children":5692},{"style":2333},[5693],{"type":2089,"value":3374},{"type":2080,"tag":2290,"props":5695,"children":5696},{"style":2333},[5697],{"type":2089,"value":5567},{"type":2080,"tag":2290,"props":5699,"children":5700},{"style":3578},[5701],{"type":2089,"value":5702}," slaveend\n",{"type":2080,"tag":2290,"props":5704,"children":5706},{"class":2292,"line":5705},66,[5707],{"type":2080,"tag":2290,"props":5708,"children":5709},{"style":2333},[5710],{"type":2089,"value":5711},"                    })\n",{"type":2080,"tag":2290,"props":5713,"children":5715},{"class":2292,"line":5714},67,[5716,5721,5725,5729],{"type":2080,"tag":2290,"props":5717,"children":5718},{"style":2297},[5719],{"type":2089,"value":5720},"                slave",{"type":2080,"tag":2290,"props":5722,"children":5723},{"style":2333},[5724],{"type":2089,"value":2336},{"type":2080,"tag":2290,"props":5726,"children":5727},{"style":3578},[5728],{"type":2089,"value":3688},{"type":2080,"tag":2290,"props":5730,"children":5731},{"style":2333},[5732],{"type":2089,"value":3693},{"type":2080,"tag":2290,"props":5734,"children":5736},{"class":2292,"line":5735},68,[5737,5741,5745],{"type":2080,"tag":2290,"props":5738,"children":5739},{"style":2297},[5740],{"type":2089,"value":4881},{"type":2080,"tag":2290,"props":5742,"children":5743},{"style":2333},[5744],{"type":2089,"value":3266},{"type":2080,"tag":2290,"props":5746,"children":5747},{"style":4452},[5748],{"type":2089,"value":4890},{"type":2080,"tag":2290,"props":5750,"children":5752},{"class":2292,"line":5751},69,[5753,5758],{"type":2080,"tag":2290,"props":5754,"children":5755},{"style":3355},[5756],{"type":2089,"value":5757},"    else",{"type":2080,"tag":2290,"props":5759,"children":5760},{"style":2333},[5761],{"type":2089,"value":3398},{"type":2080,"tag":2290,"props":5763,"children":5765},{"class":2292,"line":5764},70,[5766],{"type":2080,"tag":2290,"props":5767,"children":5768},{"style":3355},[5769],{"type":2089,"value":5770},"        pass\n",{"type":2080,"tag":3238,"props":5772,"children":5773},{},[5774],{"type":2089,"value":5775},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":2171,"searchDepth":2309,"depth":2309,"links":5777},[5778,5779,5785],{"id":2093,"depth":2309,"text":2096},{"id":2148,"depth":2309,"text":2151,"children":5780},[5781,5782,5783,5784],{"id":2155,"depth":2324,"text":2158},{"id":2176,"depth":2324,"text":2179},{"id":2236,"depth":2324,"text":2239},{"id":2271,"depth":2324,"text":2274},{"id":3324,"depth":2309,"text":3327,"children":5786},[5787,5788,5789,5790,5791],{"id":3330,"depth":2324,"text":3333},{"id":3437,"depth":2324,"text":3440},{"id":3521,"depth":2324,"text":3524},{"id":3696,"depth":2324,"text":3699},{"id":3799,"depth":2324,"text":3802},"markdown","content:3.dodock:13.fonctionnalites:4.personnalisations:5.server_script.md","content","3.dodock/13.fonctionnalites/4.personnalisations/5.server_script.md","md",[5798,5800],{"_path":1276,"title":1275,"description":5799},"Le tableau de bord offre une vue d'ensemble des principaux indicateurs de performance pertinents pour le processus métier.",{"_path":1282,"title":1281,"description":5801},"Les scripts client permettent d'interagir directement avec l'interface utilisateur et de modifier son comportement.",1747740669578]