{"id":26383,"date":"2026-08-31T00:30:37","date_gmt":"2026-08-31T00:30:37","guid":{"rendered":"https:\/\/maroczain.com\/?page_id=26383"},"modified":"2026-08-31T05:37:43","modified_gmt":"2026-08-31T05:37:43","slug":"v208","status":"publish","type":"page","link":"https:\/\/maroczain.com\/en\/v208\/","title":{"rendered":"V208"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"fr\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n<title>MZA Amadeus Training V208 HTML<\/title>\n<style>\n*{box-sizing:border-box}\nbody{margin:0;background:#06101d;color:#dff5ff;font-family:Consolas,Monaco,\"Courier New\",monospace}\n.mza-v208{width:min(1800px,calc(100% - 16px));margin:12px auto;padding:22px;border:1px solid #24465f;border-radius:18px;background:#081521}\n.mza-v208 h1{margin:0 0 6px;color:#fff;font:800 clamp(24px,3vw,36px)\/1.1 Arial,sans-serif}\n.mza-v208 .sub{margin-bottom:14px;color:#91aabe}\n.mza-screen{width:100%;min-height:520px;max-height:68vh;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#02070d;color:#dff5ff;border:1px solid #1d3952;border-radius:14px;padding:18px;font-size:16px;line-height:1.5}\n.mza-form{margin:0!important;display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:9998!important;overflow:visible!important}\n.mza-bar{display:flex!important;width:100%!important;gap:12px!important;margin-top:14px!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:9999!important;overflow:visible!important}\n[data-mza-v208] .mza-input{display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:10000!important;flex:1 1 auto!important;min-width:0!important;width:100%!important;max-width:none!important;height:64px!important;min-height:64px!important;background:#0a1826!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:2px solid #315873!important;border-radius:12px!important;padding:0 18px!important;margin:0!important;outline:none!important;font:18px Consolas,monospace!important;pointer-events:auto!important;transform:none!important;clip:auto!important;clip-path:none!important}\n[data-mza-v208] .mza-input::placeholder{color:#91aabe!important;opacity:1!important;-webkit-text-fill-color:#91aabe!important}\n[data-mza-v208] .mza-input:focus{border-color:#e9c84a!important;box-shadow:0 0 0 3px rgba(233,200,74,.18)!important}\n[data-mza-v208] .mza-send{display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:10001!important;flex:0 0 190px!important;width:190px!important;height:64px!important;min-height:64px!important;border:0!important;border-radius:12px!important;background:#e9c84a!important;color:#101821!important;font-size:16px!important;font-weight:900!important;cursor:pointer!important;pointer-events:auto!important}\n.mza-quick{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}\n.mza-q{border:1px solid #294862;background:#0b1c2b;color:#cfe6f4;border-radius:999px;padding:8px 11px;cursor:pointer}\n@media(max-width:700px){.mza-v208{width:calc(100% - 10px);padding:12px}.mza-bar{flex-direction:column}.mza-send{width:100%;flex:0 0 60px}.mza-screen{min-height:430px}}\n<\/style>\n<\/head>\n<body>\n<section class=\"mza-v208\" data-mza-v208>\n  <h1>MZA AMADEUS TRAINING \u2014 V208 HTML<\/h1>\n  <div class=\"sub\">Training Mode \u2022 donn\u00e9es synth\u00e9tiques \u2022 Tapez HE pour l\u2019aide<\/div>\n\n  <pre class=\"mza-screen\">&gt; JI0001AA\/SU\nSIGN-IN ACCEPTED 0001AA\/SU - TRAINING MODE\nTapez HE pour afficher l\u2019aide.<\/pre>\n\n  <form class=\"mza-form\">\n    <div class=\"mza-bar\">\n      <input class=\"mza-input\" type=\"text\" autocomplete=\"off\" spellcheck=\"false\" aria-label=\"Commande Amadeus\"\n             placeholder=\"HE, SN10MARCMNPAR, SS1Y1, NM1KIAL\/M, FXP, FP CASH, TTP, RT\"\n             style=\"display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;min-height:64px!important;color:#fff!important;background:#0a1826!important;position:relative!important;z-index:10000!important;pointer-events:auto!important;\">\n      <button class=\"mza-send\" type=\"submit\">ENVOYER<\/button>\n    <\/div>\n  <\/form>\n\n  <div class=\"mza-quick\">\n    <button class=\"mza-q\" data-cmd=\"HE\" type=\"button\">HE<\/button>\n    <button class=\"mza-q\" data-cmd=\"SN10MARCMNPAR\" type=\"button\">SN10MARCMNPAR<\/button>\n    <button class=\"mza-q\" data-cmd=\"SS1Y1\" type=\"button\">SS1Y1<\/button>\n    <button class=\"mza-q\" data-cmd=\"NM1KIAL\/M\" type=\"button\">NM1KIAL\/M<\/button>\n    <button class=\"mza-q\" data-cmd=\"AP KIA\" type=\"button\">AP KIA<\/button>\n    <button class=\"mza-q\" data-cmd=\"TKOK\" type=\"button\">TKOK<\/button>\n    <button class=\"mza-q\" data-cmd=\"RF KI\" type=\"button\">RF KI<\/button>\n    <button class=\"mza-q\" data-cmd=\"ER\" type=\"button\">ER<\/button>\n    <button class=\"mza-q\" data-cmd=\"FXP\" type=\"button\">FXP<\/button>\n    <button class=\"mza-q\" data-cmd=\"TQT\" type=\"button\">TQT<\/button>\n    <button class=\"mza-q\" data-cmd=\"FP CASH\" type=\"button\">FP CASH<\/button>\n    <button class=\"mza-q\" data-cmd=\"FP CCVI4111111111111111\/1228\" type=\"button\">FP CC VISA<\/button>\n    <button class=\"mza-q\" data-cmd=\"FP INV\" type=\"button\">FP INVOICE<\/button>\n    <button class=\"mza-q\" data-cmd=\"TTP\" type=\"button\">TTP<\/button>\n    <button class=\"mza-q\" data-cmd=\"RT\" type=\"button\">RT<\/button>\n  <\/div>\n<\/section>\n\n<script>\n(function(){\n\"use strict\";\nvar box=document.querySelector(\"[data-mza-v208]\");\nif(!box)return;\n\nvar screen=box.querySelector(\".mza-screen\");\nvar input=box.querySelector(\".mza-input\");\nvar form=box.querySelector(\".mza-form\");\n\nvar s={name:\"\",segments:[],contact:\"\",ticketing:\"\",rf:\"\",tst:null,fp:\"\",ticket:\"\",pnr:\"FES7Y5\",history:[]};\n\nfunction n(v){return String(v||\"\").trim().toUpperCase().replace(\/\\s+\/g,\" \")}\nfunction miss(){\n if(!s.name)return\"MISSING NAME ELEMENT\";\n if(!s.segments.length)return\"MISSING ITINERARY ELEMENT\";\n if(!s.contact)return\"MISSING CONTACT ELEMENT\";\n if(!s.ticketing)return\"MISSING TICKETING ELEMENT\";\n if(!s.rf)return\"MISSING RECEIVED FROM ELEMENT\";\n return\"\";\n}\nfunction pnr(){\n var a=[\"RP\/MZA\/\"+s.pnr];\n if(s.name)a.push(\"1. \"+s.name);\n s.segments.forEach(function(x,i){a.push((i+1)+\" \"+x.flight+\" \"+x.cls+\" \"+x.status+\" \"+x.from+x.to+\" \"+x.dep+\" \"+x.arr)});\n if(s.contact)a.push(\"AP \"+s.contact);\n if(s.ticketing)a.push(s.ticketing);\n if(s.rf)a.push(\"RF \"+s.rf);\n if(s.tst)a.push(\"TST \"+s.tst.currency+\" \"+s.tst.amount);\n if(s.fp)a.push(\"FP \"+s.fp);\n if(s.ticket)a.push(\"FA ETKT\"+s.ticket);\n return a.join(\"\\n\");\n}\nfunction run(raw){\n var c=n(raw),r=\"\",m;\n if(!c)return\"\";\n if(\/^HE(?:\\s|$)\/.test(c)){\n  r=\"MZA AMADEUS TRAINING V208\\n\\nAVAILABILITY : AN \/ SN\\nSELL         : SS\\nPNR          : NM \/ AP \/ TKOK \/ TKTL \/ SR \/ OSI \/ RF \/ ER \/ ET \/ RT\\nFARES        : FQD \/ FXP \/ FXX \/ FXR \/ TQT\\nPAYMENT      : FP CASH \/ FP CHECK \/ FP INV \/ FP CCVI...\/MMYY \/ FP CCAX...\/MMYY \/ FP CCMC...\/MMYY\\nTICKETING    : TTP \/ TTP\/ET\\nMODIFY       : XE \/ XI \/ IG \/ IR\\nHISTORY      : RH\\n\\nTRAINING MODE - SYNTHETIC DATA\";\n } else if(\/^JI\/.test(c)){\n  r=\"SIGN-IN ACCEPTED 0001AA\/SU - TRAINING MODE\";\n } else if(\/^(SN|AN)\/.test(c)){\n  r=\"1 AT760 J4 C4 D4 I4 Y9 B9 M9 K9 CMN CDG 06:30 10:35\\n2 AT772 J4 C4 D4 I4 Y9 B9 M9 K9 CMN ORY 08:15 12:10\\n3 AT770 J4 C4 D4 I4 Y9 B9 M9 K9 CMN CDG 18:20 22:25\";\n } else if((m=c.match(\/^SS1([A-Z])1$\/))){\n  s.segments=[{flight:\"AT760\",cls:m[1],status:\"HK1\",from:\"CMN\",to:\"CDG\",dep:\"06:30\",arr:\"10:35\"}];\n  r=\"AT760 \"+m[1]+\" HK1 CMN-CDG\";\n } else if(\/^NM1\/.test(c)){\n  s.name=c.replace(\/^NM1\/,\"\");r=\"NAME ELEMENT ACCEPTED\";\n } else if(\/^AP(?:\\s.*)?$\/.test(c)){\n  s.contact=c.replace(\/^AP\\s*\/,\"\")||\"KIA\";r=\"CONTACT ELEMENT ACCEPTED\";\n } else if(c===\"TKOK\"){\n  s.ticketing=\"TKOK\";r=\"TICKETING ELEMENT ACCEPTED - TRAINING MODE\";\n } else if(\/^TKTL\/.test(c)){\n  s.ticketing=c;r=\"TICKETING TIME LIMIT ACCEPTED - TRAINING MODE\";\n } else if(\/^RF\/.test(c)){\n  s.rf=c.replace(\/^RF\\s*\/,\"\")||\"KI\";r=\"RECEIVED FROM ACCEPTED\";\n } else if(\/^SR\\s+\/.test(c)){\n  r=\"SPECIAL SERVICE REQUEST ACCEPTED - \"+c.slice(3);\n } else if(\/^OSI\\s+\/.test(c)){\n  r=\"OTHER SERVICE INFORMATION ACCEPTED - \"+c.slice(4);\n } else if(c===\"ER\"){\n  r=miss()||(\"PNR STORED - TRAINING MODE\\nRECORD LOCATOR \"+s.pnr);\n } else if(c===\"ET\"){\n  r=miss()||(\"END OF TRANSACTION COMPLETE\\nPNR \"+s.pnr+\" STORED - TRAINING MODE\\n\"+pnr());\n } else if(\/^RT(?:\\\/.*)?$\/.test(c)){\n  r=pnr();\n } else if(\/^FQD\/.test(c)){\n  r=\"FARE DISPLAY - TRAINING MODE\\n1 YLOWMA MAD 2450.00\\n2 YSMART MAD 2310.00\\n3 JFLEX MAD 6840.00\";\n } else if(c===\"FXP\"){\n  if(!s.segments.length)r=\"NO ITINERARY\";\n  else{s.tst={amount:\"2450.00\",currency:\"MAD\",fareBasis:\"YLOWMA\"};r=\"ITINERARY PRICED - TST CREATED\\nFARE MAD 2450.00\\nFARE BASIS YLOWMA\";}\n } else if(c===\"FXX\"){\n  r=\"FARE QUOTE DISPLAY - NO TST CREATED\\nTOTAL MAD 2450.00\";\n } else if(c===\"FXR\"){\n  s.tst={amount:\"2310.00\",currency:\"MAD\",fareBasis:\"YSMART\"};r=\"LOWEST AVAILABLE FARE APPLIED - TST UPDATED\\nTOTAL MAD 2310.00\";\n } else if(c===\"TQT\"){\n  r=s.tst?(\"TST DISPLAY\\nTOTAL \"+s.tst.currency+\" \"+s.tst.amount+\"\\nFARE BASIS \"+s.tst.fareBasis+(s.fp?\"\\nFORM OF PAYMENT \"+s.fp:\"\")):\"NO TST FOUND\";\n } else if(c===\"HE FP\" || c===\"HEFP\"){\n  r=\"FORM OF PAYMENT - TRAINING MODE\\n\\nFP CASH                 CASH\\nFP CHECK                CHEQUE\\nFP INV                  INVOICE \/ BON DE PRISE EN CHARGE\\nFP CCVI<number>\/MMYY    VISA\\nFP CCAX<number>\/MMYY    AMERICAN EXPRESS\\nFP CCMC<number>\/MMYY    MASTERCARD\\n\\nEXAMPLES\\nFP CASH\\nFP CCVI4111111111111111\/1228\\nFP INV\\n\\nUSE SYNTHETIC CARD NUMBERS ONLY IN TRAINING MODE\";\n } else if(\/^FP\\s+CASH$\/.test(c)){\n  s.fp=\"CASH\";r=\"FORM OF PAYMENT ACCEPTED - CASH\";\n } else if(\/^FP\\s+(CHECK|CHEQUE)$\/.test(c)){\n  s.fp=\"CHECK\";r=\"FORM OF PAYMENT ACCEPTED - CHECK\";\n } else if(\/^FP\\s+(INV|INVOICE)$\/.test(c)){\n  s.fp=\"INV\";r=\"FORM OF PAYMENT ACCEPTED - INVOICE\";\n } else if((m=c.match(\/^FP\\s+CC(VI|AX|MC)([0-9]{12,19})\\\/(0[1-9]|1[0-2])([0-9]{2})$\/))){\n  var brand={VI:\"VISA\",AX:\"AMERICAN EXPRESS\",MC:\"MASTERCARD\"}[m[1]];\n  var digits=m[2],masked=\"XXXXXXXXXXXX\"+digits.slice(-4);\n  s.fp=\"CC\"+m[1]+masked+\"\/\"+m[3]+m[4];\n  r=\"FORM OF PAYMENT ACCEPTED - \"+brand+\"\\nCARD \"+masked+\"\\nEXPIRY \"+m[3]+\"\/\"+m[4]+\" - TRAINING MODE\";\n } else if(\/^FP\\s+\/.test(c)){\n  r=\"INVALID FORM OF PAYMENT\\nUSE: FP CASH \/ FP CHECK \/ FP INV \/ FP CCVI<number>\/MMYY \/ FP CCAX<number>\/MMYY \/ FP CCMC<number>\/MMYY\\nTYPE HE FP FOR HELP\";\n } else if(\/^TTP(?:\\\/ET)?$\/.test(c)){\n  var mm=miss();\n  if(mm)r=mm;\n  else if(!s.tst)r=\"NO VALID TST - USE FXP\";\n  else if(!s.fp)r=\"MISSING FORM OF PAYMENT - USE FP CASH \/ FP CC... \/ FP INV\";\n  else{\n   if(!s.ticket)s.ticket=\"800\"+String(Date.now()).slice(-10);\n   r=\"OK ETICKET\\nFA ETKT\"+s.ticket+\"\\nTOTAL \"+s.tst.currency+\" \"+s.tst.amount+\"\\nFP \"+s.fp+\"\\nELECTRONIC TICKET ISSUED - TRAINING MODE\";\n   if(c.indexOf(\"\/ET\")>-1)r+=\"\\nPNR \"+s.pnr+\" STORED AND CLOSED\";\n  }\n } else if(\/^XE\\d+$\/.test(c)){\n  var idx=parseInt(c.slice(2),10)-1;\n  if(idx>=0&&idx<s.segments.length){var x=s.segments.splice(idx,1)[0];r=\"SEGMENT CANCELLED \"+x.flight+\" \"+x.from+\"-\"+x.to}else r=\"INVALID ELEMENT NUMBER\";\n } else if(c===\"XI\"){\n  s.segments=[];r=\"ITINERARY CANCELLED - TRAINING MODE\";\n } else if(c===\"IG\"){\n  r=\"TRANSACTION IGNORED - CHANGES DISCARDED\";\n } else if(c===\"IR\"){\n  r=\"TRANSACTION IGNORED AND PNR REDISPLAYED\\n\"+pnr();\n } else if(c===\"RH\"){\n  r=\"PNR HISTORY - TRAINING MODE\\n\"+s.history.slice(-15).join(\"\\n\");\n } else {\n  r=\"TRANSACTION NOT YET ENABLED\\nCOMMAND: \"+c+\"\\nUSE HE FOR AVAILABLE COMMAND FAMILIES\";\n }\n s.history.push(c);\n return r;\n}\nfunction send(cmd){\n var c=(cmd||input.value).trim();\n if(!c)return;\n screen.textContent+=\"\\n\\n> \"+c+\"\\n\"+run(c);\n screen.scrollTop=screen.scrollHeight;\n input.value=\"\";\n input.focus();\n}\nform.addEventListener(\"submit\",function(e){e.preventDefault();send()});\nbox.addEventListener(\"click\",function(e){\n var q=e.target.closest(\".mza-q\");\n if(q)send(q.getAttribute(\"data-cmd\")||\"\");\n});\nfunction forceWritingZoneVisible(){\n form.style.setProperty(\"display\",\"block\",\"important\");\n form.style.setProperty(\"visibility\",\"visible\",\"important\");\n form.style.setProperty(\"opacity\",\"1\",\"important\");\n input.style.setProperty(\"display\",\"block\",\"important\");\n input.style.setProperty(\"visibility\",\"visible\",\"important\");\n input.style.setProperty(\"opacity\",\"1\",\"important\");\n input.style.setProperty(\"width\",\"100%\",\"important\");\n input.style.setProperty(\"height\",\"64px\",\"important\");\n input.style.setProperty(\"min-height\",\"64px\",\"important\");\n input.style.setProperty(\"position\",\"relative\",\"important\");\n input.style.setProperty(\"z-index\",\"10000\",\"important\");\n input.style.setProperty(\"pointer-events\",\"auto\",\"important\");\n}\nforceWritingZoneVisible();\nwindow.addEventListener(\"load\",forceWritingZoneVisible);\nsetTimeout(forceWritingZoneVisible,250);\nsetTimeout(forceWritingZoneVisible,1000);\ninput.focus();\n})();\n<\/script>\n<\/body>\n<\/html>\n\n\n\n<!doctype html>\n<html lang=\"fr\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n<title>MZA Amadeus Training \u2013 Correctif Envoyer<\/title>\n<style>\n#mza-amadeus-app,\n#mza-amadeus-app *{box-sizing:border-box}\n#mza-amadeus-app{\n  width:100%;\n  max-width:none;\n  margin:0;\n  padding:18px;\n  background:#08131f;\n  color:#e8f3ff;\n  font-family:Consolas,Monaco,\"Courier New\",monospace;\n  border-radius:16px;\n  overflow:hidden;\n}\n#mza-amadeus-app .mza-shell{\n  width:100%;\n  min-height:560px;\n  display:flex;\n  flex-direction:column;\n  gap:14px;\n}\n#mza-amadeus-app .mza-head{\n  display:flex;\n  justify-content:space-between;\n  gap:16px;\n  align-items:center;\n  flex-wrap:wrap;\n  padding:14px 16px;\n  background:#0d2135;\n  border:1px solid #1f486c;\n  border-radius:12px;\n}\n#mza-amadeus-app .mza-title{font-size:18px;font-weight:800;letter-spacing:.4px}\n#mza-amadeus-app .mza-status{\n  display:inline-flex;align-items:center;gap:8px;\n  font:700 13px\/1 Arial,sans-serif;\n}\n#mza-amadeus-app .mza-dot{\n  width:10px;height:10px;border-radius:50%;background:#19c37d;display:inline-block\n}\n#mza-amadeus-app .mza-screen{\n  flex:1;\n  width:100%;\n  min-height:390px;\n  max-height:68vh;\n  overflow:auto;\n  padding:18px;\n  background:#02080d;\n  border:1px solid #173957;\n  border-radius:12px;\n  white-space:pre-wrap;\n  word-break:break-word;\n  font-size:16px;\n  line-height:1.45;\n}\n#mza-amadeus-app .mza-command-bar{\n  width:100%;\n  display:grid;\n  grid-template-columns:minmax(0,1fr) auto;\n  gap:12px;\n  align-items:stretch;\n  position:relative!important;\n  z-index:20!important;\n  overflow:visible!important;\n}\n#mza-amadeus-app .mza-command-wrap{\n  min-width:0;\n  display:flex;\n  align-items:center;\n  background:#fff;\n  border:3px solid #e0af26;\n  border-radius:12px;\n  overflow:hidden;\n}\n#mza-amadeus-app .mza-prompt{\n  padding:0 10px 0 14px;\n  color:#111;\n  font-weight:900;\n  font-size:18px;\n  flex:0 0 auto;\n}\n#mza-amadeus-app #mza-amadeus-command{\n  width:100%!important;\n  min-width:0!important;\n  height:56px!important;\n  min-height:56px!important;\n  padding:0 14px!important;\n  margin:0!important;\n  border:0!important;\n  outline:0!important;\n  background:#fff!important;\n  color:#111!important;\n  font-family:Consolas,Monaco,\"Courier New\",monospace!important;\n  font-size:17px!important;\n  font-weight:700!important;\n  box-shadow:none!important;\n  opacity:1!important;\n  visibility:visible!important;\n  display:block!important;\n}\n#mza-amadeus-app #mza-amadeus-send{\n  display:inline-flex!important;\n  visibility:visible!important;\n  opacity:1!important;\n  pointer-events:auto!important;\n  align-items:center!important;\n  justify-content:center!important;\n  position:relative!important;\n  z-index:999!important;\n  min-width:150px!important;\n  min-height:56px!important;\n  height:56px!important;\n  padding:0 24px!important;\n  margin:0!important;\n  border:0!important;\n  border-radius:12px!important;\n  background:#e0af26!important;\n  color:#08131f!important;\n  font:900 16px\/1 Arial,sans-serif!important;\n  cursor:pointer!important;\n  text-transform:uppercase;\n  box-shadow:none!important;\n}\n#mza-amadeus-app #mza-amadeus-send:hover{filter:brightness(1.07)}\n#mza-amadeus-app #mza-amadeus-send:active{transform:translateY(1px)}\n#mza-amadeus-app .mza-help{\n  color:#9cb4c9;\n  font:13px\/1.5 Arial,sans-serif;\n}\n@media(max-width:700px){\n  #mza-amadeus-app{padding:10px;border-radius:10px}\n  #mza-amadeus-app .mza-command-bar{grid-template-columns:1fr}\n  #mza-amadeus-app #mza-amadeus-send{\n    width:100%!important;\n    min-width:100%!important;\n  }\n  #mza-amadeus-app .mza-screen{font-size:14px;min-height:340px}\n}\n<\/style>\n<\/head>\n<body>\n<div id=\"mza-amadeus-app\">\n  <div class=\"mza-shell\">\n    <div class=\"mza-head\">\n      <div class=\"mza-title\">MZA AMADEUS TRAINING TERMINAL<\/div>\n      <div class=\"mza-status\"><span class=\"mza-dot\"><\/span> TRAINING MODE<\/div>\n    <\/div>\n\n    <div id=\"mza-amadeus-screen\" class=\"mza-screen\" aria-live=\"polite\">MZA AMADEUS TRAINING\n&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;\nTapez HE pour afficher l&rsquo;aide.\nLe bouton ENVOYER doit rester visible en permanence.\n\n&gt; <\/div>\n\n    <div class=\"mza-command-bar\">\n      <div class=\"mza-command-wrap\">\n        <span class=\"mza-prompt\">&gt;<\/span>\n        <input id=\"mza-amadeus-command\"\n               type=\"text\"\n               autocomplete=\"off\"\n               autocapitalize=\"characters\"\n               spellcheck=\"false\"\n               placeholder=\"Ex. SN10MARCMNPAR\"\n               aria-label=\"Commande Amadeus\">\n      <\/div>\n      <button id=\"mza-amadeus-send\" type=\"button\">ENVOYER<\/button>\n    <\/div>\n\n    <div class=\"mza-help\">\n      Entr\u00e9e = envoyer \u2022 HE = aide \u2022 CL = effacer l&rsquo;\u00e9cran \u2022 Simulateur p\u00e9dagogique, sans connexion au syst\u00e8me Amadeus r\u00e9el.\n    <\/div>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  \"use strict\";\n\n  function bootMZAAmadeus(){\n    var app=document.getElementById(\"mza-amadeus-app\");\n    if(!app || app.dataset.ready===\"1\") return;\n    app.dataset.ready=\"1\";\n\n    var input=document.getElementById(\"mza-amadeus-command\");\n    var send=document.getElementById(\"mza-amadeus-send\");\n    var screen=document.getElementById(\"mza-amadeus-screen\");\n    if(!input || !send || !screen) return;\n\n    var state={signed:false,name:\"\",segment:\"\",contact:false,ticket:false,rf:false};\n\n    function write(txt){\n      screen.textContent += txt + \"\\n\";\n      screen.scrollTop=screen.scrollHeight;\n    }\n\n    function availability(cmd){\n      var m=cmd.match(\/^(?:AN|SN)(\\d{2}[A-Z]{3})?([A-Z]{3})([A-Z]{3})$\/);\n      if(!m) return false;\n      var from=m[2], to=m[3];\n      write(\"1 AT760 J4 C4 D4 I4 Y9 B9 M9 K9 \"+from+\" \"+to+\" 06:30 10:35\");\n      write(\"2 AT772 J4 C4 D4 I4 Y9 B9 M9 K9 \"+from+\" \"+to+\" 08:15 12:10\");\n      write(\"3 AT770 J4 C4 D4 I4 Y9 B9 M9 K9 \"+from+\" \"+to+\" 18:20 22:25\");\n      return true;\n    }\n\n    function execute(raw){\n      var cmd=(raw||\"\").trim().toUpperCase();\n      if(!cmd) return;\n      write(\"> \"+cmd);\n\n      if(cmd===\"CL\"){screen.textContent=\"\"; return;}\n      if(cmd===\"HE\"){\n        write(\"AVAILABLE TRAINING FAMILIES:\");\n        write(\"JI0001AA\/SU  SIGN-IN\");\n        write(\"SN\/AN         AVAILABILITY\");\n        write(\"SS            SELL SEGMENT\");\n        write(\"NM            NAME\");\n        write(\"AP            CONTACT\");\n        write(\"SR            SPECIAL SERVICE\");\n        write(\"TKOK \/ TKAT   TICKETING ELEMENT\");\n        write(\"RF            RECEIVED FROM\");\n        write(\"ER \/ ET       END TRANSACTION\");\n        write(\"RT            DISPLAY PNR\");\n        write(\"FQD \/ FXP     FARES \/ PRICING\");\n        return;\n      }\n      if(cmd.indexOf(\"JI\")===0){\n        state.signed=true;\n        write(\"SIGN-IN ACCEPTED - TRAINING MODE\");\n        return;\n      }\n      if(availability(cmd)) return;\n\n      if(\/^SS\\d+[A-Z]\\d+$\/.test(cmd)){\n        state.segment=\"AT760 Y HK1 CMN-CDG\";\n        write(state.segment);\n        return;\n      }\n      if(\/^NM\\d+\/.test(cmd)){\n        state.name=cmd.substring(cmd.indexOf(\"NM\")+2);\n        write(\"NAME ELEMENT ACCEPTED\");\n        return;\n      }\n      if(cmd===\"AP\" || \/^AP\/.test(cmd)){\n        state.contact=true;\n        write(\"CONTACT ELEMENT ACCEPTED\");\n        return;\n      }\n      if(\/^SR\\s?\/.test(cmd)){\n        write(\"SPECIAL SERVICE REQUEST ACCEPTED - TRAINING MODE\");\n        return;\n      }\n      if(cmd===\"TKOK\" || cmd===\"TKAT\"){\n        state.ticket=true;\n        write(\"TICKETING ELEMENT ACCEPTED - TRAINING MODE\");\n        return;\n      }\n      if(\/^RF\/.test(cmd)){\n        state.rf=true;\n        write(\"RECEIVED FROM ACCEPTED\");\n        return;\n      }\n      if(cmd===\"ER\" || cmd===\"ET\"){\n        if(!state.name){write(\"MISSING NAME ELEMENT\");return;}\n        if(!state.segment){write(\"MISSING ITINERARY ELEMENT\");return;}\n        if(!state.ticket){write(\"MISSING TICKETING ELEMENT\");return;}\n        if(!state.rf){write(\"MISSING RECEIVED FROM ELEMENT\");return;}\n        write(\"PNR STORED - TRAINING MODE\");\n        return;\n      }\n      if(cmd===\"RT\"){\n        write(\"RP\/MZA\/FES7Y5\");\n        write(state.name ? \"1. \"+state.name.replace(\/\\\/\/g,\"\/\") : \"NO NAME ELEMENT\");\n        if(state.segment) write(\"1 \"+state.segment);\n        if(state.contact) write(\"AP CONTACT ELEMENT\");\n        if(state.ticket) write(\"TKOK\");\n        return;\n      }\n      if(\/^FQD\/.test(cmd)){write(\"FARE DISPLAY - TRAINING MODE\");return;}\n      if(cmd===\"FXP\" || cmd===\"FXQ\"){write(\"ITINERARY PRICED - TRAINING MODE\");return;}\n\n      write(\"TRANSACTION RECOGNIZED BY TRAINING SHELL\");\n      write(\"USE HE FOR AVAILABLE COMMAND FAMILIES\");\n    }\n\n    function submit(){\n      var v=input.value;\n      input.value=\"\";\n      execute(v);\n      input.focus();\n    }\n\n    send.addEventListener(\"click\", function(e){\n      e.preventDefault();\n      e.stopPropagation();\n      submit();\n    });\n\n    input.addEventListener(\"keydown\", function(e){\n      if(e.key===\"Enter\"){\n        e.preventDefault();\n        submit();\n      }\n    });\n\n    \/\/ Protection Elementor\/theme: force visibility after delayed layout scripts.\n    [0,250,800,1600].forEach(function(ms){\n      setTimeout(function(){\n        send.style.setProperty(\"display\",\"inline-flex\",\"important\");\n        send.style.setProperty(\"visibility\",\"visible\",\"important\");\n        send.style.setProperty(\"opacity\",\"1\",\"important\");\n        send.style.setProperty(\"pointer-events\",\"auto\",\"important\");\n        send.style.setProperty(\"position\",\"relative\",\"important\");\n        send.style.setProperty(\"z-index\",\"999\",\"important\");\n      },ms);\n    });\n\n    input.focus();\n  }\n\n  if(document.readyState===\"loading\"){\n    document.addEventListener(\"DOMContentLoaded\",bootMZAAmadeus);\n  }else{\n    bootMZAAmadeus();\n  }\n\n  \/\/ Elementor peut r\u00e9injecter le widget apr\u00e8s le chargement.\n  document.addEventListener(\"elementor\/popup\/show\",bootMZAAmadeus);\n  setTimeout(bootMZAAmadeus,1000);\n})();\n<\/script>\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>MZA Amadeus Training V208 HTML MZA AMADEUS TRAINING \u2014 V208 HTML Training Mode \u2022 donn\u00e9es synth\u00e9tiques \u2022 Tapez HE pour l\u2019aide &gt; JI0001AA\/SU SIGN-IN ACCEPTED 0001AA\/SU &#8211; TRAINING MODE Tapez HE pour afficher l\u2019aide. ENVOYER HE SN10MARCMNPAR SS1Y1 NM1KIAL\/M AP KIA TKOK RF KI ER FXP TQT FP CASH FP CC VISA FP INVOICE TTP [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-26383","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/maroczain.com\/en\/wp-json\/wp\/v2\/pages\/26383","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/maroczain.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/maroczain.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/maroczain.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/maroczain.com\/en\/wp-json\/wp\/v2\/comments?post=26383"}],"version-history":[{"count":3,"href":"https:\/\/maroczain.com\/en\/wp-json\/wp\/v2\/pages\/26383\/revisions"}],"predecessor-version":[{"id":26414,"href":"https:\/\/maroczain.com\/en\/wp-json\/wp\/v2\/pages\/26383\/revisions\/26414"}],"wp:attachment":[{"href":"https:\/\/maroczain.com\/en\/wp-json\/wp\/v2\/media?parent=26383"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}