Esempio n. 1
0
        public NomineeArr Filter(Position position, City city, int ageFrom = 0, int ageTo = 100)
        {
            NomineeArr nomineeArr = new NomineeArr();

            //check if each nominee in the database stands in the filters args. if it doe's
            //then it is added to the new NomineeArr.
            Nominee nominee;

            PositionNomineeArr positionNomineeArr;
            PositionArr        positionArr;

            for (int i = 0; i < this.Count; i++)
            {
                positionNomineeArr = new PositionNomineeArr();
                positionNomineeArr.Fill();
                nominee = (this[i] as Nominee);
                int age = DateTime.Now.Year - nominee.BirthYear;
                positionNomineeArr = positionNomineeArr.Filter(nominee, Position.Empty);
                positionArr        = positionNomineeArr.ToPositionArr();

                if ((city == City.Empty || nominee.City == city) &&
                    (position == Position.Empty || positionArr.Count == 0 || positionArr.IsContains(position)) &&
                    (ageFrom <= age && age <= ageTo))
                {
                    nomineeArr.Add(nominee);
                }
            }

            return(nomineeArr);
        }
Esempio n. 2
0
        public NomineeArr Filter(string firstName, string lastName, string email, string phone, Position position)
        {
            NomineeArr nomineeArr = new NomineeArr();

            //check if each nominee in the database stands in the filters args. if it doe's
            //then it is added to the new NomineeArr.
            Nominee nominee;

            PositionNomineeArr positionNomineeArr;
            PositionArr        positionArr;

            for (int i = 0; i < this.Count; i++)
            {
                positionNomineeArr = new PositionNomineeArr();
                positionNomineeArr.Fill();
                nominee            = (this[i] as Nominee);
                positionNomineeArr = positionNomineeArr.Filter(nominee, Position.Empty);
                positionArr        = positionNomineeArr.ToPositionArr();

                if (
                    (firstName == "" || nominee.FirstName.StartsWith(firstName)) &&
                    (lastName == "" || nominee.LastName.StartsWith(lastName)) &&
                    (email == "" || nominee.Email.Contains(email)) &&
                    (phone == "" || (nominee.CellAreaCode + nominee.CellPhone).Contains(phone)) &&
                    (position == Position.Empty || positionArr.Count == 0 || positionArr.IsContains(position))
                    )
                {
                    nomineeArr.Add(nominee);
                }
            }

            return(nomineeArr);
        }