Exemplo n.º 1
0
 public CountryInfo(string name, string tag, ReligionEnum stateRel, Color colour)
 {
     countryName    = name;
     this.tag       = tag;
     stateReligion  = stateRel;
     countryColour  = colour;
     this.countryID = ids++;
 }
Exemplo n.º 2
0
 public static Religion GetReligion(ReligionEnum relenum)
 {
     for (int j = 0; j < privateReligions.Count; j++)
     {
         if (privateReligions[j].religionEnum == relenum)
         {
             return(privateReligions[j]);
         }
     }
     Debug.LogError("Invalid culture enum");
     return(null);
 }
Exemplo n.º 3
0
    public Religion GetMajorityReligion()
    {
        ReligionEnum relEnum = ReligionEnum.None;
        int          pop     = 0;

        foreach (ProvCulture p in provCultures)
        {
            int temp = p.GetTotalPop();
            if (temp > pop)
            {
                relEnum = p.religion;
                pop     = temp;
            }
        }

        return(Religions.GetReligion(relEnum));

        /*
         * float tempPercent = 0.0f;
         * foreach(ReligionPercentage percent in religions.Values)
         * {
         * if(percent.percentage > tempPercent)
         * {
         * tempPercent = percent.percentage;
         * }
         * }
         * ReligionPercentage val;
         * foreach(ReligionEnum relenum in religions.Keys)
         * {
         * religions.TryGetValue(relenum, out val);
         * if (val.percentage == tempPercent)
         * {
         * return Religions.GetReligion(relenum);
         * }
         * }
         * return null;
         */
    }
Exemplo n.º 4
0
        public static void OfficialHoldays(List <OfficialHolidaysRow> OfficialHolidaysRow, DateTime DateFromR, DateTime DatetoR, ref double ALL_FROM_TO_HOLIDAYS, ReligionEnum UserReligion, DateTime?DateFrom_month = null)
        {
            #region officialHolidays
            foreach (var officialHolidays in OfficialHolidaysRow)
            {
                if (officialHolidays.weekdays == WeekDaysEnum.Null && officialHolidays.FromHoliday != null && officialHolidays.ToHoliday != null)

                {
                    if (officialHolidays.Religion == Religion_Offical_Enum.AllofThem)
                    {
                        var FromOffial = officialHolidays.FromHoliday.Value;
                        var Toofficial = officialHolidays.ToHoliday.Value;

                        #region Check Frome Request

                        //All bothe from DateFromR and DatetoR are inside the FromOffial and Toofficial
                        if (DateFromR.Ticks >= FromOffial.Ticks && DateFromR.Ticks <= Toofficial.Ticks && DatetoR.Ticks >= FromOffial.Ticks && DatetoR.Ticks <= Toofficial.Ticks)
                        {
                            var All_Holidays_Round = CalculateYourVacancies_days(Toofficial, FromOffial);
                            ALL_FROM_TO_HOLIDAYS += All_Holidays_Round; // Agmaly 3dd Ayam el agaza 2lly hstfad biha

                            foreach (var item in OfficialHolidaysRow)
                            {
                                if (item.weekdays != WeekDaysEnum.Null)
                                {
                                    if (item.Religion == Religion_Offical_Enum.AllofThem)
                                    {
                                        var weekdays       = (int)item.weekdays.Value;
                                        var AllDaysBetween = DaysBetween(FromOffial, Toofficial);

                                        foreach (var Days in AllDaysBetween)
                                        {
                                            if (Days == weekdays)
                                            {
                                                ALL_FROM_TO_HOLIDAYS -= 1;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        //Hf 23/7 to 26/7      Rf 23/7  t 27/7
                        else if (DateFromR.Ticks >= FromOffial.Ticks && DateFromR.Ticks <= Toofficial.Ticks && DatetoR.Ticks > FromOffial.Ticks && DatetoR.Ticks > Toofficial.Ticks)
                        {
                            //var RemaindDays_afterHolidays = CalculateYourVacancies_days(DatetoR, Toofficial);
                            //4                                            -    1
                            ALL_FROM_TO_HOLIDAYS += CalculateYourVacancies_days(Toofficial, FromOffial) /*- RemaindDays_afterHolidays*/;

                            foreach (var item in OfficialHolidaysRow)
                            {
                                if (item.weekdays != WeekDaysEnum.Null)
                                {
                                    if (item.Religion == Religion_Offical_Enum.AllofThem)
                                    {
                                        var weekdays       = (int)item.weekdays.Value;
                                        var AllDaysBetween = DaysBetween(FromOffial, Toofficial);
                                        foreach (var Days in AllDaysBetween)
                                        {
                                            if (Days == weekdays)
                                            {
                                                ALL_FROM_TO_HOLIDAYS -= 1;
                                            }
                                        }
                                    }
                                }
                            }
                        }

                        else if (DateFromR.Ticks < FromOffial.Ticks && DateFromR.Ticks < Toofficial.Ticks && DatetoR.Ticks > FromOffial.Ticks && DatetoR.Ticks > Toofficial.Ticks)
                        {
                            ALL_FROM_TO_HOLIDAYS += CalculateYourVacancies_days(Toofficial, FromOffial);


                            foreach (var item in OfficialHolidaysRow)
                            {
                                if (item.weekdays != WeekDaysEnum.Null)
                                {
                                    if (item.Religion == Religion_Offical_Enum.AllofThem)
                                    {
                                        var weekdays       = (int)item.weekdays.Value;
                                        var AllDaysBetween = DaysBetween(FromOffial, Toofficial);
                                        foreach (var Days in AllDaysBetween)
                                        {
                                            if (Days == weekdays)
                                            {
                                                ALL_FROM_TO_HOLIDAYS -= 1;
                                            }
                                        }
                                    }
                                }
                            }
                        }


                        else
                        {
                            ALL_FROM_TO_HOLIDAYS += 0;
                        }


                        #endregion
                    }

                    else if (officialHolidays.Religion == Religion_Offical_Enum.Muslim)
                    {
                        if (UserReligion == ReligionEnum.Muslim)
                        {
                            var FromOffial = officialHolidays.FromHoliday.Value;
                            var Toofficial = officialHolidays.ToHoliday.Value;


                            #region Check Frome Request

                            //All bothe from DateFromR and DatetoR are inside the FromOffial and Toofficial
                            if (DateFromR.Ticks >= FromOffial.Ticks && DateFromR.Ticks <= Toofficial.Ticks && DatetoR.Ticks >= FromOffial.Ticks && DatetoR.Ticks <= Toofficial.Ticks)
                            {
                                var All_Holidays_Round = CalculateYourVacancies_days(Toofficial, FromOffial);
                                ALL_FROM_TO_HOLIDAYS += All_Holidays_Round; // Agmaly 3dd Ayam el agaza 2lly hstfad biha

                                foreach (var item in OfficialHolidaysRow)
                                {
                                    if (item.weekdays != WeekDaysEnum.Null)
                                    {
                                        if (item.Religion == Religion_Offical_Enum.Muslim)
                                        {
                                            if (UserReligion == ReligionEnum.Muslim)
                                            {
                                                var weekdays       = (int)item.weekdays.Value;
                                                var AllDaysBetween = DaysBetween(FromOffial, Toofficial);
                                                foreach (var Days in AllDaysBetween)
                                                {
                                                    if (Days == weekdays)
                                                    {
                                                        ALL_FROM_TO_HOLIDAYS -= 1;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }

                                //ALL_FROM_TO_HOLIDAYS += 1;
                            }
                            //Hf 23/7 to 26/7      Rf 23/7  t 27/7
                            else if (DateFromR.Ticks >= FromOffial.Ticks && DateFromR.Ticks <= Toofficial.Ticks && DatetoR.Ticks > FromOffial.Ticks && DatetoR.Ticks > Toofficial.Ticks)
                            {
                                var RemaindDays_afterHolidays = CalculateYourVacancies_days(DatetoR, Toofficial);
                                //4                                            -    1
                                ALL_FROM_TO_HOLIDAYS += CalculateYourVacancies_days(DatetoR, DateFromR) - RemaindDays_afterHolidays;

                                foreach (var item in OfficialHolidaysRow)
                                {
                                    if (item.weekdays != WeekDaysEnum.Null)
                                    {
                                        if (item.Religion == Religion_Offical_Enum.Muslim)
                                        {
                                            if (UserReligion == ReligionEnum.Muslim)
                                            {
                                                var weekdays       = (int)item.weekdays.Value;
                                                var AllDaysBetween = DaysBetween(FromOffial, Toofficial);
                                                foreach (var Days in AllDaysBetween)
                                                {
                                                    if (Days == weekdays)
                                                    {
                                                        ALL_FROM_TO_HOLIDAYS -= 1;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }


                                //ALL_FROM_TO_HOLIDAYS += 1;
                            }

                            else if (DateFromR.Ticks < FromOffial.Ticks && DateFromR.Ticks < Toofficial.Ticks && DatetoR.Ticks > FromOffial.Ticks && DatetoR.Ticks > Toofficial.Ticks)
                            {
                                ALL_FROM_TO_HOLIDAYS += CalculateYourVacancies_days(Toofficial, FromOffial);

                                foreach (var item in OfficialHolidaysRow)
                                {
                                    if (item.weekdays != WeekDaysEnum.Null)
                                    {
                                        if (item.Religion == Religion_Offical_Enum.Muslim)
                                        {
                                            if (UserReligion == ReligionEnum.Muslim)
                                            {
                                                var weekdays       = (int)item.weekdays.Value;
                                                var AllDaysBetween = DaysBetween(FromOffial, Toofficial);
                                                foreach (var Days in AllDaysBetween)
                                                {
                                                    if (Days == weekdays)
                                                    {
                                                        ALL_FROM_TO_HOLIDAYS -= 1;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                //ALL_FROM_TO_HOLIDAYS += 1;
                            }


                            else
                            {
                                ALL_FROM_TO_HOLIDAYS += 0;
                            }


                            #endregion
                        }
                    }

                    else if (officialHolidays.Religion == Religion_Offical_Enum.Christian)
                    {
                        if (UserReligion == ReligionEnum.Christian)
                        {
                            var FromOffial = officialHolidays.FromHoliday.Value;
                            var Toofficial = officialHolidays.ToHoliday.Value;

                            #region Check Frome Request

                            //All bothe from DateFromR and DatetoR are inside the FromOffial and Toofficial
                            if (DateFromR.Ticks >= FromOffial.Ticks && DateFromR.Ticks <= Toofficial.Ticks && DatetoR.Ticks >= FromOffial.Ticks && DatetoR.Ticks <= Toofficial.Ticks)
                            {
                                var All_Holidays_Round = CalculateYourVacancies_days(Toofficial, FromOffial);
                                ALL_FROM_TO_HOLIDAYS += All_Holidays_Round; // Agmaly 3dd Ayam el agaza 2lly hstfad biha

                                foreach (var item in OfficialHolidaysRow)
                                {
                                    if (item.weekdays != WeekDaysEnum.Null)
                                    {
                                        if (item.Religion == Religion_Offical_Enum.Christian)
                                        {
                                            if (UserReligion == ReligionEnum.Christian)
                                            {
                                                var weekdays       = (int)item.weekdays.Value;
                                                var AllDaysBetween = DaysBetween(FromOffial, Toofficial);
                                                foreach (var Days in AllDaysBetween)
                                                {
                                                    if (Days == weekdays)
                                                    {
                                                        ALL_FROM_TO_HOLIDAYS -= 1;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }

                                //ALL_FROM_TO_HOLIDAYS += 1;
                            }
                            //Hf 23/7 to 26/7      Rf 23/7  t 27/7
                            else if (DateFromR.Ticks >= FromOffial.Ticks && DateFromR.Ticks <= Toofficial.Ticks && DatetoR.Ticks > FromOffial.Ticks && DatetoR.Ticks > Toofficial.Ticks)
                            {
                                var RemaindDays_afterHolidays = CalculateYourVacancies_days(DatetoR, Toofficial);
                                //4                                            -    1
                                ALL_FROM_TO_HOLIDAYS += CalculateYourVacancies_days(DatetoR, DateFromR) - RemaindDays_afterHolidays;

                                foreach (var item in OfficialHolidaysRow)
                                {
                                    if (item.weekdays != WeekDaysEnum.Null)
                                    {
                                        if (item.Religion == Religion_Offical_Enum.Christian)
                                        {
                                            if (UserReligion == ReligionEnum.Christian)
                                            {
                                                var weekdays       = (int)item.weekdays.Value;
                                                var AllDaysBetween = DaysBetween(FromOffial, Toofficial);
                                                foreach (var Days in AllDaysBetween)
                                                {
                                                    if (Days == weekdays)
                                                    {
                                                        ALL_FROM_TO_HOLIDAYS -= 1;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }


                                //ALL_FROM_TO_HOLIDAYS += 1;
                            }

                            else if (DateFromR.Ticks < FromOffial.Ticks && DateFromR.Ticks < Toofficial.Ticks && DatetoR.Ticks > FromOffial.Ticks && DatetoR.Ticks > Toofficial.Ticks)
                            {
                                ALL_FROM_TO_HOLIDAYS += CalculateYourVacancies_days(Toofficial, FromOffial);

                                foreach (var item in OfficialHolidaysRow)
                                {
                                    if (item.weekdays != WeekDaysEnum.Null)
                                    {
                                        if (item.Religion == Religion_Offical_Enum.Christian)
                                        {
                                            if (UserReligion == ReligionEnum.Christian)
                                            {
                                                var weekdays       = (int)item.weekdays.Value;
                                                var AllDaysBetween = DaysBetween(FromOffial, Toofficial);
                                                foreach (var Days in AllDaysBetween)
                                                {
                                                    if (Days == weekdays)
                                                    {
                                                        ALL_FROM_TO_HOLIDAYS -= 1;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                //ALL_FROM_TO_HOLIDAYS += 1;
                            }

                            else
                            {
                                ALL_FROM_TO_HOLIDAYS += 0;
                            }


                            #endregion
                        }
                    }
                }

                else if (officialHolidays.weekdays != WeekDaysEnum.Null)
                {
                    if (officialHolidays.Religion == Religion_Offical_Enum.AllofThem)
                    {
                        var officialHolidays_weekdays = (int)officialHolidays.weekdays.Value;



                        #region Check Frome Request


                        var AllDaysweekbetweenR = DaysBetween(DateFromR, DatetoR);
                        foreach (var item in AllDaysweekbetweenR)
                        { // شيك لو صادف ان يوم من الي يساوي اجازة الجمعه او السبت مايزودش اليوم
                            if (item == officialHolidays_weekdays)
                            {
                                ALL_FROM_TO_HOLIDAYS += 1;
                            }
                        }



                        #endregion
                    }
                    else if (officialHolidays.Religion == Religion_Offical_Enum.Muslim)
                    {
                        if (UserReligion == ReligionEnum.Muslim)
                        {
                            var officialHolidays_weekdays = (int)officialHolidays.weekdays.Value;



                            #region Check Frome Request


                            var AllDaysweekbetweenR = DaysBetween(DateFromR, DatetoR);
                            foreach (var item in AllDaysweekbetweenR)
                            { // شيك لو صادف ان يوم من الي يساوي اجازة الجمعه او السبت مايزودش اليوم
                                if (item == officialHolidays_weekdays)
                                {
                                    ALL_FROM_TO_HOLIDAYS += 1;
                                }
                            }



                            #endregion
                        }
                    }

                    else if (officialHolidays.Religion == Religion_Offical_Enum.Christian)
                    {
                        if (UserReligion == ReligionEnum.Christian)
                        {
                            var officialHolidays_weekdays = (int)officialHolidays.weekdays.Value;


                            #region Check Frome Request


                            var AllDaysweekbetweenR = DaysBetween(DateFromR, DatetoR);
                            foreach (var item in AllDaysweekbetweenR)
                            { // شيك لو صادف ان يوم من الي يساوي اجازة الجمعه او السبت مايزودش اليوم
                                if (item == officialHolidays_weekdays)
                                {
                                    ALL_FROM_TO_HOLIDAYS += 1;
                                }
                            }



                            #endregion
                        }
                    }
                    //Vacancy_days_requet -= 1;
                }
            }
            #endregion
        }