示例#1
0
        public bool IsPeselCorret(string pesel)
        {
            List <int> date = new List <int>();

            date.Add(Int32.Parse(pesel.Substring(0, 2)));
            date.Add(Int32.Parse(pesel.Substring(2, 2)));
            date.Add(Int32.Parse(pesel.Substring(4, 2)));

            bool length = (pesel.Length == 11);
            var  month  = false;
            var  daysFebruaryLeapsed = false;
            var  daysFebruaryNormal  = false;
            var  shortMonth          = false;
            var  longMonth           = false;
            var  yC = new YearValidation().IsYearCorrect(date[0]);
            var  yL = new YearValidation().IsLeapsedYear(date[0]);

            if (new MonthValidation().CorrectMonth1800(date[1]) ||
                new MonthValidation().CorrectMonth1900(date[1]) ||
                new MonthValidation().CorrectMonth2000(date[1]) ||
                new MonthValidation().CorrectMonth2100(date[1]) ||
                new MonthValidation().CorrectMonth2200(date[1]))
            {
                month = true;
            }

            if (yL == true &&
                new MonthValidation().IsFebruary(date[1]) &&
                new DayValidation().LeapsedFebruary(date[2]))
            {
                daysFebruaryLeapsed = true;
            }
            else
            {
                if (yL == false && new MonthValidation().IsFebruary(date[1]) &&
                    new DayValidation().NormalFebruary(date[2]))
                {
                    daysFebruaryNormal = true;
                }
            }

            if (yL == false &&
                new MonthValidation().IsFebruary(date[1]) == false &&
                new MonthValidation().ShortMonth(date[1]) == true)
            {
                shortMonth = new DayValidation().ShortMonth(date[2]);
            }
            else if (yL == false &&
                     new MonthValidation().ShortMonth(date[1]) == false)
            {
                longMonth = new DayValidation().LongMonth(date[2]);
            }


            return(yC && yL && month && (daysFebruaryLeapsed || daysFebruaryNormal || shortMonth || longMonth)); //final ;
        }
示例#2
0
 public Note12Model(DayValidation dayValidation)
 {
     this.dayValidation = dayValidation;
 }
示例#3
0
 public IndexModel(DayValidation dayValidation)
 {
     this.dayValidation = dayValidation;
 }
示例#4
0
 public FodderRackModel(DayValidation dayValidation)
 {
     this.dayValidation = dayValidation;
     CanSolve           = dayValidation.HasAccess(day);
 }
示例#5
0
 public SnowmenForestModel(DayValidation dayValidation)
 {
     this.dayValidation = dayValidation;
 }
示例#6
0
 public TopDrawerModel(DayValidation dayValidation)
 {
     this.dayValidation = dayValidation;
 }
示例#7
0
 public MazeModel(DayValidation dayValidation)
 {
     this.dayValidation = dayValidation;
 }
示例#8
0
 public IndexModel(DayValidation dayValidation)
 {
     CanSolve = dayValidation.HasAccess(door);
 }
示例#9
0
 public CodeBlockModel(DayValidation dayValidation)
 {
     CanSolve = dayValidation.HasAccess(door);
 }