1"use strict";(self.webpackChunkphpvms_docs=self.webpackChunkphpvms_docs||[]).push([[669],{70622(e,s,r){r.r(s),r.d(s,{assets:()=>o,contentTitle:()=>a,default:()=>h,frontMatter:()=>l,metadata:()=>t,toc:()=>c});const t=JSON.parse('{"id":"guides/glossary","title":"Glossary","description":"Easily confused concepts in phpvms \u2014 clarified.","source":"@site/docs/guides/glossary.md","sourceDirName":"guides","slug":"/guides/glossary","permalink":"/8.x/guides/glossary","draft":false,"unlisted":false,"editUrl":"https://github.com/phpvms/docs/tree/master/docs/guides/glossary.md","tags":[],"version":"current","frontMatter":{"id":"glossary","title":"Glossary","sidebar_label":"Glossary"},"sidebar":"docs","previous":{"title":"Deeper Dive","permalink":"/8.x/guides/deeper-dive"},"next":{"title":"Basic Configuration","permalink":"/8.x/config/basics"}}');var i=r(74848),n=r(28453);const l={id:"glossary",title:"Glossary",sidebar_label:"Glossary"},a="Glossary",o={},c=[{value:"Aircraft vs Subfleet",id:"aircraft-vs-subfleet",level:2},{value:"Flight vs PIREP",id:"flight-vs-pirep",level:2},{value:"Hub vs Home Airport vs Current Airport",id:"hub-vs-home-airport-vs-current-airport",level:2},{value:"Fare on Subfleet vs Fare on Flight",id:"fare-on-subfleet-vs-fare-on-flight",level:2},{value:"Rank vs Role",id:"rank-vs-role",level:2},{value:"Type Rating",id:"type-rating",level:2}];function d(e){const s={a:"a",code:"code",h1:"h1",h2:"h2",header:"header",li:"li",p:"p",strong:"strong",ul:"ul",...(0,n.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.header,{children:(0,i.jsx)(s.h1,{id:"glossary",children:"Glossary"})}),"\n",(0,i.jsx)(s.p,{children:"Easily confused concepts in phpvms \u2014 clarified."}),"\n",(0,i.jsxs)(s.p,{children:["For the high-level overview, see ",(0,i.jsx)(s.a,{href:"/8.x/guides/basics",children:"Key Concepts"}),". For per-entity\nfield reference, see the ",(0,i.jsx)(s.a,{href:"/8.x/guides/deeper-dive",children:"Deeper Dive"}),"."]}),"\n",(0,i.jsx)(s.h2,{id:"aircraft-vs-subfleet",children:"Aircraft vs Subfleet"}),"\n",(0,i.jsxs)(s.p,{children:["A ",(0,i.jsx)(s.strong,{children:"subfleet"})," is a category; an ",(0,i.jsx)(s.strong,{children:"aircraft"})," is a specific tail number. You\ncan't assign an aircraft directly to a flight or rank \u2014 you assign the subfleet,\nand any aircraft inside it inherits that relationship."]}),"\n",(0,i.jsx)(s.h2,{id:"flight-vs-pirep",children:"Flight vs PIREP"}),"\n",(0,i.jsxs)(s.p,{children:["A ",(0,i.jsx)(s.strong,{children:"flight"})," is the schedule template (BAW178 LHR \u2192 JFK). A ",(0,i.jsx)(s.strong,{children:"PIREP"})," is the\none-time report of a pilot actually flying it. One flight has many PIREPs over\ntime. PIREPs can also exist without a flight (free-form / non-scheduled)."]}),"\n",(0,i.jsx)(s.h2,{id:"hub-vs-home-airport-vs-current-airport",children:"Hub vs Home Airport vs Current Airport"}),"\n",(0,i.jsxs)(s.ul,{children:["\n",(0,i.jsxs)(s.li,{children:[(0,i.jsx)(s.strong,{children:"Hub"})," \u2014 an airport flagged ",(0,i.jsx)(s.code,{children:"hub=true"}),", selectable at registration"]}),"\n",(0,i.jsxs)(s.li,{children:[(0,i.jsx)(s.strong,{children:"Home Airport"})," \u2014 the user's permanent base (their chosen hub)"]}),"\n",(0,i.jsxs)(s.li,{children:[(0,i.jsx)(s.strong,{children:"Current Airport"})," \u2014 where the user's last PIREP arrived; resets on each\naccepted PIREP"]}),"\n"]}),"\n",(0,i.jsx)(s.h2,{id:"fare-on-subfleet-vs-fare-on-flight",children:"Fare on Subfleet vs Fare on Flight"}),"\n",(0,i.jsxs)(s.p,{children:["The fare exists once globally. The subfleet pivot (",(0,i.jsx)(s.code,{children:"subfleet_fare"}),") sets\ndefaults for any flight using that subfleet. The flight pivot (",(0,i.jsx)(s.code,{children:"flight_fare"}),")\noverrides those defaults for one specific flight. Per-flight overrides win."]}),"\n",(0,i.jsx)(s.h2,{id:"rank-vs-role",children:"Rank vs Role"}),"\n",(0,i.jsxs)(s.p,{children:[(0,i.jsx)(s.strong,{children:"Rank"})," is a pilot progression tier (hours-based, gates subfleets). ",(0,i.jsx)(s.strong,{children:"Role"})," is\na staff permission (admin / mod / pilot \u2014 gates the admin panel). They're\nindependent."]}),"\n",(0,i.jsx)(s.h2,{id:"type-rating",children:"Type Rating"}),"\n",(0,i.jsx)(s.p,{children:"A separate qualification system. A subfleet can require one or more type\nratings; a user holds zero or more. If the subfleet requires ratings the user\ndoesn't have, they can't fly it \u2014 even if their rank would otherwise allow it."})]})}function h(e={}){const{wrapper:s}={...(0,n.R)(),...e.components};return s?(0,i.jsx)(s,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},28453(e,s,r){r.d(s,{R:()=>l,x:()=>a});var t=r(96540);const i={},n=t.createContext(i);function l(e){const s=t.useContext(n);return t.useMemo(function(){return"function"==typeof e?e(s):{...s,...e}},[s,e])}function a(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),t.createElement(n.Provider,{value:s},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.