Пример #1
0
        protected ATPAirplane(string title, CategoryClass.CatClassID ccid, decimal minTime = 1500, decimal minXCTime = 500, bool fCanCreditSICAndFlightEngineer = false)
        {
            Title = title;
            requiredCatClassID            = ccid;
            BaseFAR                       = "61.159";
            RatingSought                  = RatingType.ATPAirplane;
            ATPTotalTime                  = minTime;
            ATPMinXC                      = minXCTime;
            CanCreditSICAndFlightEngineer = fCanCreditSICAndFlightEngineer;
            CategoryClass cc = CategoryClass.CategoryClassFromID(ccid);

            miTotal             = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.ATPMinTime, ATPTotalTime), ResolvedFAR("(a)"), fCanCreditSICAndFlightEngineer ? Branding.ReBrand(Resources.MilestoneProgress.ATPTotalTimeSubstitutionNote) : string.Empty, MilestoneItem.MilestoneType.Time, ATPTotalTime);
            miMinXCTime         = new MilestoneItem(Resources.MilestoneProgress.ATPMinXCTime, ResolvedFAR("(a)(1)"), string.Empty, MilestoneItem.MilestoneType.Time, ATPMinXC);
            miMinNightTime      = new MilestoneItem(Resources.MilestoneProgress.ATPMinNightTime, ResolvedFAR("(a)(2)"), Resources.MilestoneProgress.ATPAirplaneNightLandingsNote, MilestoneItem.MilestoneType.Time, ATPMinNight);
            miMinTimeInClass    = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.ATPTimeInClass, ATPMinTimeInClass, cc.Class), ResolvedFAR("(a)(3)"), Branding.ReBrand(Resources.MilestoneProgress.ATPAirplaneClassSimulatorNote), MilestoneItem.MilestoneType.Time, ATPMinTimeInClass);
            miMinInstrumentTime = new MilestoneItem(Resources.MilestoneProgress.ATPInstrumentTime, ResolvedFAR("(a)(4)"), Resources.MilestoneProgress.ATPAirplaneSimulatorNote, MilestoneItem.MilestoneType.Time, ATPMinIFR);
            miMinPIC            = new MilestoneItem(Resources.MilestoneProgress.ATPPICTime, ResolvedFAR("(a)(5)"), Resources.MilestoneProgress.ATPPICTimeNote, MilestoneItem.MilestoneType.Time, ATPMinPIC);
            miMinPICXC          = new MilestoneItem(Resources.MilestoneProgress.ATPXCPICTime, ResolvedFAR("(a)(5)(i)"), Resources.MilestoneProgress.ATPPICTimeNote, MilestoneItem.MilestoneType.Time, ATPMinPICXC);
            miMinPICNight       = new MilestoneItem(Resources.MilestoneProgress.ATPNightPICTime, ResolvedFAR("(a)(5)(ii)"), Resources.MilestoneProgress.ATPPICTimeNote, MilestoneItem.MilestoneType.Time, ATPMinPICNight);
            miNightTO           = new MilestoneItem(string.Empty, ResolvedFAR("(b)"), string.Empty, MilestoneItem.MilestoneType.Count, ATPMinNightTakeoffs);
            miNightLanding      = new MilestoneItem(string.Empty, ResolvedFAR("(b)"), string.Empty, MilestoneItem.MilestoneType.Count, ATPMinNightLandings);
        }
Пример #2
0
        protected void Init(CategoryClass.CatClassID ccid)
        {
            CategoryClass cc = CategoryClass.CategoryClassFromID(CatClassID = ccid);

            Title        = String.Format(CultureInfo.CurrentCulture, "{0} - {1}", Resources.MilestoneProgress.Title6199, cc.CatClass);
            BaseFAR      = "61.99";
            RatingSought = RatingType.RecreationalPilot;

            // 61.99 overall
            miMinTime = new MilestoneItem(Resources.MilestoneProgress.RecreationalMinTime, BaseFAR, string.Empty, MilestoneItem.MilestoneType.Time, 30.0M);

            // 61.99(a) - 15 hours of dual
            miMinInstruction = new MilestoneItem(Resources.MilestoneProgress.RecreationalMinTraining, ResolvedFAR("(a)"), String.Empty, MilestoneItem.MilestoneType.Time, 15.0M);

            // 61.99(a)(1)(i) - 2 hours of flight training in 25nm flights with at least 4 landings
            miXCFlight = new MilestoneItem(Resources.MilestoneProgress.RecreationalMinXC, ResolvedFAR("(a)(1)(i)"), Resources.MilestoneProgress.RecreationalMinXCNote, MilestoneItem.MilestoneType.Time, 2.0M);

            // 61.99(a)(1)(ii) - 3 hours of flight training within preceding 2 months.
            miTestPrep = new MilestoneItem(Resources.MilestoneProgress.RecreationTestPrep, ResolvedFAR("(a)(1)(ii)"), Branding.ReBrand(Resources.MilestoneProgress.NoteTestPrep), MilestoneItem.MilestoneType.Time, 3.0M);

            // 61.99(a)(2) - 3 hours of solo time
            miMinSolo = new MilestoneItem(Resources.MilestoneProgress.RecreationalMinSolo, ResolvedFAR("(a)(2)"), Resources.MilestoneProgress.NoteSoloTime, MilestoneItem.MilestoneType.Time, 3.0M);
        }
Пример #3
0
        protected JAAPrivatePilot(string szBaseFAR, string szTitle, RatingType rt, string szExperienceSection, string szTrainingSection, string szNightTrainingSection, decimal XCDistance)
        {
            Title        = szTitle;
            BaseFAR      = szBaseFAR;
            RatingSought = rt;

            string szExperience    = ResolvedFAR(szExperienceSection);
            string szTraining      = ResolvedFAR(szTrainingSection);
            string szNightTraining = ResolvedFAR(szNightTrainingSection);

            miTotal             = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLMinTime, JAATotalTime), szExperience, Branding.ReBrand(Resources.MilestoneProgress.JARPPLMinTimeNote), MilestoneItem.MilestoneType.Time, JAATotalTime);
            miDual              = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLMinDual, JAADual), szTraining, string.Empty, MilestoneItem.MilestoneType.Time, JAADual);
            miInstrumentDual    = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLMinDualInstrument, JAAIFRDual), szTraining, string.Empty, MilestoneItem.MilestoneType.Time, JAAIFRDual);
            miSolo              = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLMinSolo, JAASolo), szTraining, string.Empty, MilestoneItem.MilestoneType.Time, JAASolo);
            miSoloXC            = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLMinSoloXC, JAASoloXC), szTraining, string.Empty, MilestoneItem.MilestoneType.Time, JAASoloXC);
            miSoloLongXC        = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLMinSoloLongXC, XCDistance), szTraining, string.Empty, MilestoneItem.MilestoneType.AchieveOnce, XCDistance);
            miNightTime         = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLNight, JAANightTime), szNightTraining, Resources.MilestoneProgress.JARPPLNightDisclaimer, MilestoneItem.MilestoneType.Time, JAANightTime);
            miNightDual         = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLNightDual, JAANightDual), szNightTraining, Resources.MilestoneProgress.JARPPLNightDisclaimer, MilestoneItem.MilestoneType.Time, JAANightDual);
            miNightXC           = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLNightDualXC, JAANightXC), szNightTraining, Resources.MilestoneProgress.JARPPLNightDisclaimer, MilestoneItem.MilestoneType.Time, JAANightXC);
            miNightLongXC       = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLMinDualNightLongXC, JAALongNightXCDistanceAirplane), szNightTraining, Resources.MilestoneProgress.JARPPLNightDisclaimer, MilestoneItem.MilestoneType.AchieveOnce, 1.0M);
            miNightSoloTakeoffs = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLNightSoloTakeoffs, JAANightSoloTakeoffs), szNightTraining, Resources.MilestoneProgress.JARPPLNightDisclaimer, MilestoneItem.MilestoneType.Count, JAANightSoloTakeoffs);
            miNightSoloLandings = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.JARPPLNightSoloLandings, JAANightSoloLandings), szNightTraining, Resources.MilestoneProgress.JARPPLNightDisclaimer, MilestoneItem.MilestoneType.Count, JAANightSoloLandings);
        }
Пример #4
0
        public SportPilotGlider()
            : base()
        {
            // Basic MilestoneProgress stuff
            Title        = Resources.MilestoneProgress.TitleSportGlider;
            CatClassID   = CategoryClass.CatClassID.Glider;
            BaseFAR      = "61.313(b, c)";
            RatingSought = RatingType.SportGlider;

            // Parameters for SportBasePilot
            CategoryName = Resources.MilestoneProgress.SportGliderCategory;

            // Unique to this class
            TotalHeavierThanAir       = 0.0M;
            QualifiesByHeavierThanAir = false;
            string szFar = ResolvedFAR("(1)");

            miMinTime            = new MilestoneItem(Resources.MilestoneProgress.SportMinTimeGlider, szFar, string.Empty, MilestoneItem.MilestoneType.Time, 10);
            miMinTrainingFlights = new MilestoneItem(Resources.MilestoneProgress.SportMinFlightsGlider, szFar, string.Empty, MilestoneItem.MilestoneType.Count, 10);
            miMinSolo            = new MilestoneItem(Resources.MilestoneProgress.SportMinSoloGlider, szFar, string.Empty, MilestoneItem.MilestoneType.Time, 2);

            miMinSoloFlights = new MilestoneItem(Resources.MilestoneProgress.SportMinSoloLandings, ResolvedFAR("(1)(i)"), Resources.MilestoneProgress.SportMinLandingsNote, MilestoneItem.MilestoneType.Count, 5);
            miTestPrep       = new MilestoneItem(Resources.MilestoneProgress.SportMinTraining, ResolvedFAR("(1)(ii)"), Resources.MilestoneProgress.NoteTestPrep, MilestoneItem.MilestoneType.Count, 3);
        }