Beispiel #1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        Model = null;
        ckComplex.Attributes.Add("onclick", "javascript:ComplexClicked()");
        ckConstantProp.Attributes.Add("onclick", "javascript:ComplexElementClicked()");
        ckRetract.Attributes.Add("onclick", "javascript:ComplexElementClicked()");
        ckCowlFlaps.Attributes.Add("onclick", "javascript:ComplexElementClicked()");
        cmbCatClass.Attributes.Add("onchange", "javascript:ComplexElementClicked()");
        ckHighPerf.Attributes.Add("onchange", "javascript:HighPerfClicked()");
        ckLegacyHighPerf.Attributes.Add("onchange", "javascript:LegacyHighPerfClicked()");
        foreach (ListItem li in rblTurbineType.Items)
        {
            MakeModel.TurbineLevel tl = (MakeModel.TurbineLevel)Convert.ToInt32(li.Value, CultureInfo.InvariantCulture);
            li.Attributes.Add("onclick", tl.IsTurbine() ? "javascript:showSinglePilotCertification()" : "javascript:hideSinglePilotCertification()");
        }

        lblAddNewManufacturer.Attributes.Add("onclick", "fnSetFocus('" + txtManufacturer.ClientID + "');");
        btnManOK.OnClientClick           = String.Format(CultureInfo.InvariantCulture, "fnClickOK('{0}', '{1}')", btnManOK.UniqueID, "");
        pnlManufacturer.Style["display"] = "none";
        pnlDupesFound.Style["display"]   = "none";

        if (!IsPostBack)
        {
            cmbCatClass.DataSource = CategoryClass.CategoryClasses();
            cmbCatClass.DataBind();
            divIsSimOnly.Visible = ((MyFlightbook.Profile.GetUser(Page.User.Identity.Name)).CanManageData);
            InitFormForMake();
        }
    }
        // Save on some view state by loading this up on each page load.
        protected void Page_Init(object sender, EventArgs e)
        {
            cmbCatClasses.DataSource = CategoryClass.CategoryClasses();
            cmbCatClasses.DataBind();

            SetUpPermutations(pnlTimeRoot);
        }
Beispiel #3
0
    protected void UpdateRowsForCatClass(CategoryClass.CatClassID idCatClass)
    {
        bool fIsGlider = idCatClass == CategoryClass.CatClassID.Glider;

        divTMG.Visible       = fIsGlider;
        divTailwheel.Visible = CategoryClass.IsAirplane(idCatClass) && !CategoryClass.IsSeaClass(idCatClass);
        divMultiHeli.Visible = (idCatClass == CategoryClass.CatClassID.Helicopter);

        bool hasEngine = CategoryClass.HasEngine(idCatClass);

        rowEngineType.Visible    = hasEngine;
        pnlHighPerfBlock.Visible = ckConstantProp.Enabled = ckComplex.Enabled = hasEngine;

        divComplex.Style["display"] = hasEngine || fIsGlider ? "inline-block" : "none";
        if (!hasEngine)
        {
            ckComplex.Checked            = ckConstantProp.Checked = ckCowlFlaps.Checked = ckRetract.Checked = false;
            rblTurbineType.SelectedIndex = 0;
        }

        bool fIsLegacyEligible = (idCatClass == CategoryClass.CatClassID.AMEL || idCatClass == CategoryClass.CatClassID.AMES || idCatClass == CategoryClass.CatClassID.Helicopter);

        pnlLegacyHighPerf.Style["display"] = fIsLegacyEligible ? "inline" : "none";
        if (ckLegacyHighPerf.Checked && !fIsLegacyEligible)
        {
            HighPerfType = MakeModel.HighPerfType.NotHighPerf;
        }
    }
        public ActionResult Delete(CategoryClass cate)
        {
            CategoryList cateList = new CategoryList();

            cateList.DeleteCategory(cate);
            return(RedirectToAction("Index"));
        }
Beispiel #5
0
        /// <summary>
        /// Intenta abrir fichero para parsear categoria. Si no puede abrir fichero, intenta descargarlo y después parsarlo.
        /// </summary>
        /// <param name="id">Identificador de la categoría.</param>
        /// <returns></returns>
        private CategoryClass ParsearUnaCategoriaDescargarAntesSiNoExisteFichero(int id)
        {
            string strJson = "";
            var    path    = _PATH + _CATEGORIES_FOLDER + id.ToString();

            if (!File.Exists(path))
            {
                Console.WriteLine("Error al abrir fichero de categoría ID=" + id.ToString() + ".");

                try
                {
                    DownloadCategory(id);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Error al descargar fichero de categoría ID=" + id.ToString() + ". " + ex.Message);
                }
            }

            try
            {
                strJson = File.ReadAllText(path);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error al abrir fichero de categoría ID=" + id.ToString() + ". " + ex.Message);
            }

            CategoryClass una = JsonConvert.DeserializeObject <CategoryClass>(strJson);

            return(una);
        }
        public ATPCanadaHelicopter() : base(Resources.MilestoneProgress.TitleCAATPHelicopter,
                                            CategoryClass.CategoryClassFromID(CategoryClass.CatClassID.Helicopter).Category,
                                            CategoryClass.CategoryClassFromID(CategoryClass.CatClassID.ASEL).Category,
                                            "421.35(4)",
                                            RatingType.ATPHelicopter,
                                            "https://tc.canada.ca/en/corporate-services/acts-regulations/list-regulations/canadian-aviation-regulations-sor-96-433/standards/standard-421-flight-crew-permits-licences-ratings-canadian-aviation-regulations-cars#421_35")
        {
            MinHours                         = 1000;
            MinInCategory                    = 600;
            MinXC                            = 200;
            MinPICInCategory                 = 250;
            MaxPICUSInCategory               = 150;
            MinPICXC                         = 100;
            MinPICXCNight                    = 0;
            MinNight                         = 50;
            MinNightInCategory               = 15;
            MinXCPICAdditional               = 100;
            MinXCSICPICAdditional            = 200;
            MinInstrument                    = 30;
            MaxSimulator                     = 0;
            MaxInstrumentAlternativeCategory = 15;

            InitMilestones(Resources.MilestoneProgress.CAATPHelicopters, Resources.MilestoneProgress.CAATPAeroplanes);

            miPICXC.FARRef = ResolvedFAR("(c)");
        }
Beispiel #7
0
    protected MakeModel MakeFromForm()
    {
        CategoryClass.CatClassID ccId = (CategoryClass.CatClassID)Enum.Parse(typeof(CategoryClass.CatClassID), cmbCatClass.SelectedValue, true);
        Boolean fSea = CategoryClass.IsSeaClass(ccId);

        if (ckComplex.Checked)
        {
            if (fSea)
            {
                ckRetract.Checked = true;
            }
            ckCowlFlaps.Checked    = true;
            ckConstantProp.Checked = true;
        }

        // if we were going to be really anal here, there would be no "complex" field in the database;
        // it would be entirely derived.  but we're not being really anal.
        // Complex is FAR 61.31.
        if ((fSea || ckRetract.Checked) &&
            ckConstantProp.Checked && ckCowlFlaps.Checked)
        {
            ckComplex.Checked = true;
        }

        MakeModel mk = (MakeID == -1) ? new MakeModel() : new MakeModel(MakeID);

        mk.Model                   = txtModel.Text.Trim();
        mk.ModelName               = txtName.Text.Trim();
        mk.TypeName                = txtType.Text.Trim();
        mk.FamilyName              = txtFamilyName.Text.Trim().ToUpper(CultureInfo.InvariantCulture).Replace("-", string.Empty).Replace(" ", string.Empty);
        mk.CategoryClassID         = ccId;
        mk.ManufacturerID          = Convert.ToInt32(cmbManufacturer.SelectedValue, CultureInfo.InvariantCulture);
        mk.IsComplex               = ckComplex.Checked;
        mk.PerformanceType         = HighPerfType;
        mk.IsTailWheel             = ckTailwheel.Checked;
        mk.IsConstantProp          = ckConstantProp.Checked;
        mk.HasFlaps                = ckCowlFlaps.Checked;
        mk.IsRetract               = ckRetract.Checked;
        mk.AvionicsTechnology      = AvionicsTechnology;
        mk.EngineType              = (MakeModel.TurbineLevel)rblTurbineType.SelectedIndex;
        mk.ArmyMDS                 = txtArmyMDS.Text;
        mk.AllowedTypes            = (AllowedAircraftTypes)rblAircraftAllowedTypes.SelectedIndex;
        mk.IsMotorGlider           = (ckTMG.Checked && (ccId == CategoryClass.CatClassID.Glider));
        mk.IsMultiEngineHelicopter = (ckMultiHeli.Checked && (ccId == CategoryClass.CatClassID.Helicopter));
        mk.IsCertifiedSinglePilot  = ckSinglePilot.Checked && mk.EngineType.IsTurbine() && !String.IsNullOrEmpty(mk.TypeName);

        // Sanity check - no complex for a jet
        if (mk.EngineType == MakeModel.TurbineLevel.Jet)
        {
            mk.IsComplex = mk.IsConstantProp = false;
        }

        // these don't get persisted, but help with dupe detection.
        mk.CategoryClassDisplay = cmbCatClass.SelectedItem.Text;
        mk.ManufacturerDisplay  = cmbManufacturer.SelectedItem.Text;

        UpdateRowsForCatClass(mk.CategoryClassID);

        return(mk);
    }
        //add button  CATEGORY
        private void XuiSuperButton2_Click(object sender, EventArgs e)
        {
            try
            {
                //value passs to business layer Logclass variable to
                CategoryClass obj = new CategoryClass();
                //check text box empty or not
                if ((textBox1.Text != "") && (textBox2.Text != ""))
                {
                    obj.CategoryId   = textBox1.Text;
                    obj.CategoryName = textBox2.Text;

                    //  ExecuteNonQuery() if worked return value=truee return value=0 CtegoryClass in BusinessLayer
                    if (obj.CategoryAdd() == 1)
                    {
                        MessageBox.Show("---Created new Cateogry---" + obj.CategoryName);
                    }
                    else
                    {
                        MessageBox.Show("---Can not create same category name again !---");
                    }
                }
                else
                {
                    MessageBox.Show("---please enter values !---");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("---ERROR IN SQL CONNECTION---" + '\n' + ex);

                // Console.WriteLine("---ERROR IN SQL CONNECTION---");
                //    Console.WriteLine(ex);
            }
        }
        //update category button
        private void xuiSuperButton1_Click(object sender, EventArgs e)
        {
            try
            {
                //text feild empty or not check
                if ((textBox1.Text != "") && (textBox2.Text != ""))
                {
                    CategoryClass obj = new CategoryClass();
                    //pass to Business layer CategoryClass
                    obj.CategoryId   = textBox1.Text;
                    obj.CategoryName = textBox2.Text;

                    if (obj.CategoryUpdate() == 1)
                    {
                        MessageBox.Show("---Updated Cateegory---");
                    }
                    else
                    {
                        MessageBox.Show("--- Cannot Update Category ---");
                    }
                }
                else
                {
                    MessageBox.Show("---please enter values !---");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                throw;
            }
        }
        //Ctategory search button
        private void Categorysearch_Click(object sender, EventArgs e)
        {
            try
            {
                //value passs to business layer Logclass variable to
                CategoryClass obj = new CategoryClass();
                //check text box empty or not
                if (textBox1.Text != "")
                {
                    obj.CategoryId   = textBox1.Text;
                    obj.CategoryName = textBox2.Text;

                    //  ExecuteNonQuery() if worked return value=truee return value=0 CtegoryClass in BusinessLayer
                    if (obj.CategorySearch() == 1)
                    {
                        textBox1.Text = obj.CategoryId;
                        textBox2.Text = obj.CategoryName;
                    }
                    else
                    {
                        MessageBox.Show("---Can not  Search category  !---");
                    }
                }
                else
                {
                    MessageBox.Show("---please enter values !---");
                }
            }

            catch (Exception ex)
            {
                MessageBox.Show("---ERROR IN SQL CONNECTION---" + '\n' + ex);
            }
        }
Beispiel #11
0
        public DPEBase(DPEThresholds dpet, CategoryClass.CatClassID ccid, string szFarRef)
        {
            if (dpet == null)
            {
                throw new ArgumentNullException("dpet");
            }
            BaseFAR = "Order 8900.2A";
            string szResolved = ResolvedFAR(szFarRef);

            catClass = CategoryClass.CategoryClassFromID(ccid);
            string szCatClass = String.Format(CultureInfo.CurrentCulture, Resources.LocalizedText.LocalizedJoinWithSpace, catClass.Category, catClass.Class);

            miPIC                   = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEPICTime, dpet.PIC), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.PIC);
            miPICPastYear           = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEPICTimePastYear, dpet.PICPastYear, catClass.Category), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.PICPastYear);
            miPICCategory           = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEPICCategory, dpet.PICCategory, catClass.Category), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.PICCategory);
            miPICClass              = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEPICClass, dpet.PICClass, szCatClass), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.PICClass);
            miPICNight              = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEPICNight, dpet.PICNight), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.PICNight);
            miCFICategory           = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPECFICategory, dpet.CFICategory, catClass.Category), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.CFICategory);
            miCFIClass              = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPECFIClass, dpet.CFIClass, szCatClass), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.CFIClass);
            miPICFlightsInPriorYear = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEFlightsPastYear, dpet.PICFlightsInClassPriorYear, catClass.Category), szResolved, string.Empty, MilestoneItem.MilestoneType.Count, dpet.PICFlightsInClassPriorYear);
            miPICComplexTime        = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEComplex, dpet.PICComplexTime), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.PICComplexTime);
            miPICInstrumentTime     = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEInstrument, dpet.PICInstrumentTime), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.PICInstrumentTime);
            miCFIITime              = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEInstrumentInstruction, dpet.CFIITime), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.CFIITime);
            miCFIITimeInCategory    = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.DPEInstrumentInstructionInCategory, dpet.CFIITimeInCategory, catClass.Category), szResolved, string.Empty, MilestoneItem.MilestoneType.Time, dpet.CFIITimeInCategory);
        }
Beispiel #12
0
        public ATPCanadaHelicopter() : base(Resources.MilestoneProgress.TitleCAATPHelicopter,
                                            CategoryClass.CategoryClassFromID(CategoryClass.CatClassID.Helicopter).Category,
                                            CategoryClass.CategoryClassFromID(CategoryClass.CatClassID.ASEL).Category,
                                            "421.35(4)",
                                            RatingType.ATPHelicopter)
        {
            MinHours                         = 1000;
            MinInCategory                    = 600;
            MinXC                            = 200;
            MinPICInCategory                 = 250;
            MaxPICUSInCategory               = 150;
            MinPICXC                         = 100;
            MinPICXCNight                    = 0;
            MinNight                         = 50;
            MinNightInCategory               = 15;
            MinXCPICAdditional               = 100;
            MinXCSICPICAdditional            = 200;
            MinInstrument                    = 30;
            MaxSimulator                     = 0;
            MaxInstrumentAlternativeCategory = 15;

            InitMilestones(Resources.MilestoneProgress.CAATPHelicopters, Resources.MilestoneProgress.CAATPAeroplanes);

            miPICXC.FARRef = ResolvedFAR("(c)");
        }
        //Category delete Button
        private void xuiSuperButton3_Click(object sender, EventArgs e)
        {
            try
            {
                //value passs to business layer Logclass variable to
                CategoryClass obj = new CategoryClass();
                //check text box empty or not
                if ((textBox1.Text != "") || (textBox2.Text != ""))
                {
                    obj.CategoryId   = textBox1.Text;
                    obj.CategoryName = textBox2.Text;

                    //  ExecuteNonQuery() if worked return value=truee return value=0 CtegoryClass in BusinessLayer
                    if (obj.CategoryDelete() == 1)
                    {
                        String x;
                        x = obj.CategoryId;
                        x = obj.CategoryName;
                        MessageBox.Show("---Deleted Cateogry---" + x);
                    }
                    else
                    {
                        MessageBox.Show("---Can not  Delete category  !---");
                    }
                }
                else
                {
                    MessageBox.Show("---please enter values !---");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("---ERROR IN SQL CONNECTION---" + '\n' + ex);
            }
        }
        public List <CategoryClass> GetDataScource()
        {
            SqlConnection con     = new SqlConnection(Constring);
            string        query   = @"SELECT * FROM CategoryTable";
            SqlCommand    command = new SqlCommand(query, con);

            con.Open();

            SqlDataAdapter da = new SqlDataAdapter(command);
            DataTable      dt = new DataTable();

            da.Fill(dt);
            con.Close();


            List <CategoryClass> depar = new List <CategoryClass>();

            foreach (DataRow a in dt.Rows)
            {
                CategoryClass dipstudent = new CategoryClass();
                // dipstudent.Id = Convert.ToInt32(a["Id"]);
                dipstudent.Name = a["Name"].ToString();
                //dipstudent.Code = a["Code"].ToString();
                //dipstudent.Address = a["Address"].ToString();
                depar.Add(dipstudent);
            }
            return(depar);
        }
Beispiel #15
0
        public override void ExamineFlight(ExaminerFlightRow cfr)
        {
            bool fIsAirplane = CategoryClass.IsAirplane(cfr.idCatClassOverride);
            bool fIsIFRSim   = (fIsAirplane && cfr.fIsFTD);

            if (fIsAirplane || cfr.fIsRealAircraft)
            {
                miMinInstrumentTime.AddTrainingEvent(cfr.IMC + cfr.IMCSim, ATPMaxIFRSimulator, fIsIFRSim);
            }

            if (fIsAirplane && cfr.idCatClassOverride == requiredCatClassID)
            {
                bool fIsFullSim = !cfr.fIsRealAircraft && cfr.fIsCertifiedLanding;
                if (fIsAirplane && (cfr.fIsRealAircraft || fIsFullSim))
                {
                    miMinTimeInClass.AddTrainingEvent(cfr.Total, ATPMinTimeInClassFullSimulator, fIsFullSim);
                }
            }

            // Above are the only things to which we will alow training devices.
            if (!cfr.fIsRealAircraft)
            {
                return;
            }

            miTotal.AddEvent(Math.Max(CanCreditSICAndFlightEngineer ? cfr.SIC : 0, cfr.Total));
            miMinXCTime.AddEvent(cfr.XC);
            miMinNightTime.AddEvent(cfr.Night);

            if (CanCreditSICAndFlightEngineer)
            {
                decimal flightEngineerTime = 0.0M;
                cfr.ForEachEvent((pe) => { if (pe.PropTypeID == (int)CustomPropertyType.KnownProperties.IDPropFlightEngineerTime)
                                           {
                                               flightEngineerTime += pe.DecValue;
                                           }
                                 });

                if (flightEngineerTime > 0)
                {
                    miTotal.AddTrainingEvent(flightEngineerTime / 3.0M, ATPMaxFlightEngineer, true);
                }
            }

            // Remainder must be done in a real aircraft and it must be in an airplane.
            // Not clear if the night takeoffs/landings need to be in a real aircraft / airplane, but I'll require it to be safe.
            if (fIsAirplane)
            {
                miMinPIC.AddEvent(cfr.PIC);
                miMinPICXC.AddEvent(Math.Min(cfr.PIC, cfr.XC));
                miMinPICNight.AddEvent(Math.Min(cfr.PIC, cfr.Night));
                cfr.ForEachEvent((pe) => { if (pe.PropertyType.IsNightTakeOff)
                                           {
                                               miNightTO.AddEvent(pe.IntValue);
                                           }
                                 });
                miNightLanding.AddEvent(cfr.cFullStopNightLandings);
            }
        }
Beispiel #16
0
 protected override bool IsQualifyingFlight(ExaminerFlightRow cfr)
 {
     if (cfr == null)
     {
         throw new ArgumentNullException(nameof(cfr));
     }
     return(cfr.fIsRealAircraft && (cfr.fMotorGlider || CategoryClass.IsAirplane(cfr.idCatClassOverride)));
 }
Beispiel #17
0
 public EASASPLInstructorCurrency(string szName) : base(szName)
 {
     Query = new FlightQuery()
     {
         DateRange = FlightQuery.DateRanges.Custom, DateMin = DateTime.Now.Date.AddYears(-3), HasCFI = true, HasLandings = true, FlightCharacteristicsConjunction = GroupConjunction.Any
     };
     Query.AddCatClass(CategoryClass.CategoryClassFromID(CategoryClass.CatClassID.Glider));
 }
Beispiel #18
0
 private async void MainCollectionView_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     if (MainCollectionView.SelectedItem != null)
     {
         CategoryClass selecteddata = e.CurrentSelection[0] as CategoryClass;
         await Navigation.PushAsync(new CategoryPage(selecteddata));
     }
 }
Beispiel #19
0
 public EASATMGCurrency(string szName) : base(szName)
 {
     Query = new FlightQuery()
     {
         DateRange = FlightQuery.DateRanges.Custom, DateMin = DateTime.Now.AddYears(-2), IsMotorglider = true
     };
     Query.AddCatClass(CategoryClass.CategoryClassFromID(CategoryClass.CatClassID.Glider));
 }
Beispiel #20
0
    private bool fHasBeenSetUp = false; // have we already been initialized for the user?

    protected void SetUpForUser()
    {
        if (fHasBeenSetUp)
        {
            return;
        }

        if (String.IsNullOrEmpty(Username))
        {
            Username = Page.User.Identity.Name;
        }

        UserAircraft ua = new UserAircraft(Username);

        Aircraft[] rgac       = ua.GetAircraftForUser();
        Aircraft[] rgacActive = Array.FindAll(rgac, aircraft => !aircraft.HideFromSelection);

        // Hide inactive aircraft unless
        // (a) all aircraft are active, or
        // (b) the current query references inactive aircraft
        // (c) pnlshowAllAircraft is invisible (indicating that it has been clicked)
        bool fShowAll = !pnlShowAllAircraft.Visible || rgacActive.Length == rgac.Length || Array.Exists(Restriction.AircraftList, ac => ac.HideFromSelection);

        if (fShowAll)
        {
            pnlShowAllAircraft.Visible = false;
        }
        cklAircraft.DataSource = fShowAll ? rgac : rgacActive;
        cklAircraft.DataBind();

        cklMakes.DataSource = MakeModel.ModelsForAircraft(rgac);
        cklMakes.DataBind();

        cklCatClass.DataSource = CategoryClass.CategoryClasses();
        cklCatClass.DataBind();

        CustomPropertyType[]      rgCpt = CustomPropertyType.GetCustomPropertyTypes(Username);
        List <CustomPropertyType> al    = new List <CustomPropertyType>();

        foreach (CustomPropertyType cpt in rgCpt)
        {
            if (cpt.IsFavorite)
            {
                al.Add(cpt);
            }
        }

        if (al.Count == 0)
        {
            pnlCustomProps.Visible = CustomPropsHeader.Visible = false;
        }
        else
        {
            cklCustomProps.DataSource = al;
            cklCustomProps.DataBind();
        }
        fHasBeenSetUp = true;
    }
Beispiel #21
0
 public CatClassTotal(string catClass, CategoryClass.CatClassID ccid)
 {
     Total           = 0.0M;
     CatClassDisplay = catClass;
     CCId            = ccid;
     CatClass        = CategoryClass.CategoryClassFromID(ccid);
     Count           = 0;
     TotalLandings   = TotalFSDayLandings = TotalFSNightLandings = TotalApproaches = 0;
 }
Beispiel #22
0
        private void CheckAirportIssues(LogbookEntryBase le)
        {
            IEnumerable <string> rgCodes = airport.SplitCodes(le.Route);

            foreach (string szCode in rgCodes)
            {
                if (szCode.StartsWith(airport.ForceNavaidPrefix, StringComparison.CurrentCultureIgnoreCase))
                {
                    continue;
                }

                if (szCode.CompareCurrentCultureIgnoreCase("LOCAL") == 0 || szCode.CompareCurrentCultureIgnoreCase("LCL") == 0)
                {
                    AddIssue(LintOptions.AirportIssues, Resources.FlightLint.warningAirportLocal);
                    continue;
                }

                airport ap = alSubset.GetAirportByCode(szCode);

                if (ap == null)
                {
                    AddIssue(LintOptions.AirportIssues, String.Format(CultureInfo.CurrentCulture, Resources.FlightLint.warningAirportNotFound, szCode));
                }
                else
                {
                    AddConditionalIssue((currentCatClassID == CategoryClass.CatClassID.AMEL || currentCatClassID == CategoryClass.CatClassID.ASEL) && ap.IsSeaport, LintOptions.AirportIssues, String.Format(CultureInfo.CurrentCulture, Resources.FlightLint.warningAirportLandPlaneAtSeaport, szCode));
                    AddConditionalIssue(CategoryClass.IsAirplane(currentCatClassID) && ap.FacilityTypeCode == "H", LintOptions.AirportIssues, String.Format(CultureInfo.CurrentCulture, Resources.FlightLint.warningAirportAirplaneAtHeliport, szCode));
                }
            }

            // Sanity check for speed
            if (le.TotalFlightTime > 0)
            {
                double dist  = alSubset.DistanceForRoute();
                double speed = dist / (double)le.TotalFlightTime;

                AddConditionalIssue(speed > (currentModel.EngineType == MakeModel.TurbineLevel.Piston ? 500 : 1000), LintOptions.AirportIssues, String.Format(CultureInfo.CurrentCulture, Resources.FlightLint.warningAirportUnlikelyImpliedSpeed, speed));
            }

            // Look for missing night takeoffs or landings
            if (rgCodes.Any())
            {
                airport apDep = alSubset.GetAirportByCode(rgCodes.ElementAt(0));
                airport apArr = alSubset.GetAirportByCode(rgCodes.ElementAt(rgCodes.Count() - 1));
                if (apDep != null)
                {
                    AddConditionalIssue(le.FlightStart.HasValue() && !le.CustomProperties.PropertyExistsWithID(CustomPropertyType.KnownProperties.IDPropNightTakeoff) &&
                                        new SolarTools.SunriseSunsetTimes(le.FlightStart, apDep.LatLong.Latitude, apDep.LatLong.Longitude).IsFAANight, LintOptions.AirportIssues, String.Format(CultureInfo.CurrentCulture, Resources.FlightLint.warningAirportMissingNightTakeoff, apDep.Code, le.FlightStart.UTCFormattedStringOrEmpty(false)));
                }
                if (apArr != null)
                {
                    AddConditionalIssue(le.FlightEnd.HasValue() && le.NightLandings == 0 &&
                                        new SolarTools.SunriseSunsetTimes(le.FlightEnd, apArr.LatLong.Latitude, apArr.LatLong.Longitude).IsFAANight, LintOptions.AirportIssues, String.Format(CultureInfo.CurrentCulture, Resources.FlightLint.warningAirportMissingNightLanding, apArr.Code, le.FlightEnd.UTCFormattedStringOrEmpty(false)));
                }
            }
        }
        public override void ExamineFlight(ExaminerFlightRow cfr)
        {
            if (cfr == null)
            {
                throw new ArgumentNullException("cfr");
            }

            // No training devices for sport pilots
            if (!cfr.fIsRealAircraft)
            {
                return;
            }

            // Keep track of heavier-than-air time, reduce minimums if achieved
            if (CategoryClass.IsHeavierThanAir(cfr.idCatClassOverride))
            {
                TotalHeavierThanAir += cfr.Total;
                if (!QualifiesByHeavierThanAir && TotalHeavierThanAir >= 20)
                {
                    QualifiesByHeavierThanAir      = true;
                    miMinTime.Threshold            = 3;
                    miMinTrainingFlights.Threshold = 5;
                    miMinSolo.Threshold            = 1;
                    miMinSolo.Threshold            = 3;
                }
            }

            // now reject anything not in a glider
            if (CatClassID != cfr.idCatClassOverride)
            {
                return;
            }

            miMinTime.AddEvent(cfr.Total);
            if (cfr.Dual > 0)
            {
                miMinTrainingFlights.AddEvent(Math.Max(1, cfr.cLandingsThisFlight));
                if (DateTime.Now.AddCalendarMonths(-2).CompareTo(cfr.dtFlight) <= 0)
                {
                    miTestPrep.AddEvent(cfr.Dual);
                }
            }

            decimal soloTime = 0.0M;

            cfr.ForEachEvent(pf => { if (pf.PropertyType.IsSolo)
                                     {
                                         soloTime += pf.DecValue;
                                     }
                             });
            if (soloTime > 0)
            {
                miMinSolo.AddEvent(soloTime);
                miMinSoloFlights.AddEvent(cfr.cLandingsThisFlight); // assuming no touch-and-go in a glider!
            }
        }
    private void InitForm()
    {
        if (!m_fNeedsInit)
        {
            return;
        }

        m_fNeedsInit = false;

        foreach (CustomCurrencyTimespanType t in Enum.GetValues(typeof(CustomCurrencyTimespanType)))
        {
            cmbMonthsDays.Items.Add(new ListItem(t.DisplayString(), t.ToString()));
        }

        UserAircraft           ua    = new UserAircraft(Page.User.Identity.Name);
        IEnumerable <Aircraft> lstAc = ua.GetAircraftForUser();

        lstAircraft.DataSource = lstAc;
        lstAircraft.DataBind();

        List <ListItem> lstCurrencyEvents = new List <ListItem>();

        foreach (var value in Enum.GetValues(typeof(CustomCurrency.CustomCurrencyEventType)))
        {
            lstCurrencyEvents.Add(new ListItem(CultureInfo.CurrentCulture.TextInfo.ToTitleCase(CustomCurrency.EventTypeLabel(1, (CustomCurrency.CustomCurrencyEventType)value)), ((int)value).ToString(CultureInfo.CurrentCulture)));
        }

        lstCurrencyEvents.Sort(delegate(ListItem a, ListItem b) { return(a.Text.CompareCurrentCultureIgnoreCase(b.Text)); });
        foreach (ListItem li in lstCurrencyEvents)
        {
            cmbEventTypes.Items.Add(li);
        }

        lstModels.DataSource = MakeModel.ModelsForAircraft(lstAc);
        lstModels.DataBind();

        IEnumerable <CategoryClass> rgCatClass = CategoryClass.CategoryClasses();

        cmbCatClass.DataSource = rgCatClass;
        cmbCatClass.DataBind();

        // Get the categories (as opposed to catclass); this is something of a hack, but it avoids an extra DB call
        Dictionary <string, string> dictCategories = new Dictionary <string, string>();

        foreach (CategoryClass cc in rgCatClass)
        {
            dictCategories[cc.Category] = cc.Category;
        }
        List <string> lst = new List <string>(dictCategories.Keys);

        lst.Sort();
        foreach (string category in lst)
        {
            cmbCategory.Items.Add(new ListItem(category, category));
        }
    }
 public ActionResult Create(CategoryClass cate)
 {
     if (ModelState.IsValid)
     {
         CategoryList cateList = new CategoryList();
         cateList.AddCategory(cate);
         return(RedirectToAction("Index"));
     }
     return(View());
 }
        private void OnSortCategoryCommandExecute(object para)
        {
            CategoryClass categoryClass = (CategoryClass)para;

            Tasks.Clear();
            foreach (TaskClass task in new ObservableCollection <TaskClass>(taskManager.GetAll()))
            {
                if (task.CategoryTask.Name == categoryClass.Name && task.CheckTask == CheckTask)
                {
                    Tasks.Add(task);
                }
            }
            SrotName = categoryClass.Name;
        }
 //view Category Dtabase tables coloums values
 private void refeshbutton_Click(object sender, EventArgs e)
 {
     try
     {
         CategoryClass oobj = new CategoryClass();
         //Datas Set obj put to the Dtaview grid auto rende all the colums and values.
         ///you dont create custom table colums in Data grid grid
         //variable of data grid view+daat source
         dataGridView1.DataSource = oobj.categoryViewAll().Tables[0];
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Beispiel #28
0
    static void Main()
    {
        //[1] 클래스 배열 생성
        CategoryClass[] categories = new CategoryClass[3];

        //[2] 각각의 요소에 인스턴스 생성
        categories[0] = new CategoryClass();
        categories[1] = new CategoryClass();
        categories[2] = new CategoryClass();

        for (int i = 0; i < categories.Length; i++)
        {
            categories[i].Print(i);
        }
    }
Beispiel #29
0
        private void initialize()
        {
            #region ORDER-NO

            bool isAlreadyExist = true;

            try
            {
                while (isAlreadyExist)
                {
                    string orderNo = GenerateOrderNo();
                    isAlreadyExist = CheckOrderExistance(orderNo);
                    txtInvID.Text  = orderNo;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(
                    @"Error while generating Order No. Pease check below details for reference.
            Details:  " + ex.Message, @"Generate Order No", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            #endregion
            //initialize the grid(empty)
            dgvCart.DataSource = SelectProductClass.InitializeDGV();

            //load stock available
            //PopulateStockGrid();

            //load default customer
            txtCustID.Text   = Properties.Settings.Default["WalkingCustomerID"].ToString();
            txtCustName.Text = @"WALK IN CUSTOMER";

            //set default date
            txtInvDate.Text = DateTime.Now.Date.ToShortDateString();

            //populate search by category combobox
            DataSet d = CategoryClass.Select();
            cboSearchCat.DataSource    = d.Tables[0].DefaultView;
            cboSearchCat.DisplayMember = "Name";
            cboSearchCat.ValueMember   = "CatID";

            //POPULATE UNITS
            cboMeasurement.DataSource    = ProductClass.PopulateMeasurementDropDown().Tables[0].DefaultView;
            cboMeasurement.DisplayMember = "Name";
            cboMeasurement.ValueMember   = "MeasurementID";

            btnLoadAll.PerformClick();
        }
Beispiel #30
0
 /// <summary>
 /// Updates the flight query with the category/class requested
 /// </summary>
 private void CatClassFromForm()
 {
     if (cklCatClass.SelectedIndex >= 0)
     {
         List <CategoryClass> rgcc = new List <CategoryClass>(CategoryClass.CategoryClasses());
         m_fq.CatClasses.Clear();
         foreach (ListItem li in cklCatClass.Items)
         {
             int idCc = Convert.ToInt32(li.Value, CultureInfo.InvariantCulture);
             if (li.Selected)
             {
                 m_fq.CatClasses.Add(rgcc.Find(cc => (int)cc.IdCatClass == idCc));
             }
         }
     }
 }
Beispiel #31
0
        /*public static bool CheckIfImageFileExists(string categoryID)
        {
            bool fileExists = false;

            string imageName = mImageNameDictionary [categoryID];
            if (mRootFolder.CheckExistsAsync (mRootFolderPath + "/" + ParseConstants.IMAGE_FOLDER_NAME + "/" + imageName + ".jpg").Result.ToString () != "FileExists") {
                fileExists = false;
            } else
                fileExists = true;

            return fileExists;
        }*/
        public static void GetCategoryAttributesFromRemoteAndSaveToLocal(DateTime? localUpdate, DateTime? remoteUpdate,LoadingPage loadingPage)
        {
            var categoryQuery = ParseObject.GetQuery (ParseConstants.CATEGORIES_CLASS_NAME).
                WhereGreaterThan(ParseConstants.UPDATEDATE_NAME,localUpdate).
                WhereLessThanOrEqualTo(ParseConstants.UPDATEDATE_NAME,remoteUpdate).
                OrderBy(ParseConstants.CATEGORY_ATTRIBUTE_NAME);

            var categoryCount = categoryQuery.CountAsync ().Result;

            int queryLimit = 1000;
            int j = 0;
            for (int i = 0; i < categoryCount; i += queryLimit) {
                var categoryObjects = categoryQuery.Limit(queryLimit).Skip(i).FindAsync ().Result;

                List<CategoryClass> tempList = new List<CategoryClass> ();
                foreach (var categoryObject in categoryObjects) {
                    CategoryClass tempCategory = new CategoryClass ();
                    tempCategory.objectId = categoryObject.ObjectId;
                    tempCategory.Name = categoryObject.Get<string> (ParseConstants.CATEGORY_ATTRIBUTE_NAME);
                    tempCategory.ImageName = categoryObject.Get<string> (ParseConstants.CATEGORY_ATTRIBUTE_IMAGENAME);
                    tempCategory.ImageID = categoryObject.Get<string> (ParseConstants.CATEGORY_ATTRIBUTE_IMAGEID);
                    tempCategory.Priority = categoryObject.Get<int> (ParseConstants.CATEGORY_ATTRIBUTE_PRIORITY);
                    tempCategory.isSubCategory = categoryObject.Get<bool> (ParseConstants.CATEGORY_ATTRIBUTE_ISSUBCATEGORYNAME);
                    var subcategoryList = categoryObject.Get<IEnumerable<object>> (ParseConstants.CATEGORY_ATTRIBUTE_SUB).Cast<string> ().ToList ();
                    foreach (string sub in subcategoryList ) {
                        tempCategory.Sub += sub;
                        if (sub != subcategoryList.Last ())
                            tempCategory.Sub += ",";
                    }

                    tempList.Add (tempCategory);

                    double scrollPos = Decimal.ToDouble (Decimal.Add(Decimal.Multiply (Decimal.Multiply (Decimal.Divide ((Decimal.Divide (1, categoryCount)), 10), 1), j++),new decimal(0.8f)));
                    Device.BeginInvokeOnMainThread (() => loadingPage.ProgressBar1.Progress = scrollPos);
                    //await loadingPage.ProgressBar1.ProgressTo (scrollPos, 1, Easing.Linear);
                }

                mCategoryClass.AddCategory (tempList);

            }
            //loadingPage.mFirstTokenSource.Cancel ();
        }