Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="exec"></param>
        /// <param name="offsetWithToday">If value of this parameter is 0, then current day is processed,
        /// -1 is for yesterday, +1 is for tomorrow</param>
        /// <param name="currFestTop"></param>
        /// <param name="fb"></param>
        /// <returns></returns>
        private int AddEventToDay(GCFestivalSpecialExecutor exec, int offsetWithToday, int currFestTop, GCFestivalBase fb)
        {
            VAISNAVADAY   t  = exec.day(offsetWithToday);
            VAISNAVAEVENT md = t.AddEvent(DisplayPriorities.PRIO_FESTIVALS_0 + fb.BookID * 100 + currFestTop,
                                          GCDS.CAL_FEST_0 + fb.BookID, fb.Text);

            currFestTop += 5;
            if (fb.FastID > 0)
            {
                md.fasttype    = fb.FastID;
                md.fastsubject = fb.FastingSubject;
            }

            if (GCDisplaySettings.Current.getValue(51) != 2 && fb.StartYear > -7000)
            {
                String ss1;
                int    years = t.astrodata.GaurabdaYear - (fb.StartYear - 1496);
                string appx  = "th";
                if (years % 10 == 1)
                {
                    appx = "st";
                }
                else if (years % 10 == 2)
                {
                    appx = "nd";
                }
                else if (years % 10 == 3)
                {
                    appx = "rd";
                }
                if (GCDisplaySettings.Current.getValue(51) == 0)
                {
                    ss1 = string.Format("{0} ({1}{2} anniversary)", md.text, years, appx);
                }
                else
                {
                    ss1 = string.Format("{0} ({1}{2})", md.text, years, appx);
                }
                md.text = ss1;
            }

            if (fb.EventsCount > 0)
            {
                foreach (GCFestivalBase re in fb.Events)
                {
                    if (re is GCFestivalRelated)
                    {
                        GCFestivalRelated related = re as GCFestivalRelated;
                        AddEventToDay(exec, fb.DayOffset + related.DayOffset, 0, related);
                    }
                }
            }

            return(currFestTop);
        }
Exemplo n.º 2
0
        public VAISNAVAEVENT AddEvent(int priority, int dispItem, string text)
        {
            VAISNAVAEVENT dc = new VAISNAVAEVENT();

            dc.prio     = priority;
            dc.dispItem = dispItem;
            dc.text     = text;

            dayEvents.Add(dc);

            return(dc);
        }
Exemplo n.º 3
0
        protected void CalculateSankrantis()
        {
            VAISNAVADAY targetDay = null;

            foreach (VAISNAVADAY today in m_pData)
            {
                targetDay = null;
                int n = 0;
                foreach (TCoreEvent ce in today.coreEvents)
                {
                    switch (ce.nType)
                    {
                    case CoreEventType.CCTYPE_SANK:
                        switch (GCSankranti.GetSankrantiType())
                        {
                        case 0: targetDay = today; break;

                        case 1: targetDay = (n >= 1 ? today : today.Previous); break;

                        case 2: targetDay = (n >= 2 ? today.Next : today); break;

                        case 3: targetDay = (n >= 3 ? today.Next : today); break;
                        }
                        if (targetDay != null)
                        {
                            targetDay.sankranti_day    = today.GetGregorianDateTime(ce);
                            targetDay.sankranti_zodiac = ce.nData;
                        }
                        break;

                    case CoreEventType.CCTYPE_S_RISE: n = 1; break;

                    case CoreEventType.CCTYPE_S_NOON: n = 2; break;

                    case CoreEventType.CCTYPE_S_SET:  n = 3; break;
                    }

                    if (targetDay != null)
                    {
                        string        str = targetDay.Format(GCStrings.Localized("  {sankranti.rasiName} Sankranti (Sun enters {sankranti.rasiNameEn} on {sankranti.day} {sankranti.monthAbr}, {sankranti.hour}:{sankranti.minRound}) ({dstSig})"));
                        VAISNAVAEVENT dc  = targetDay.AddEvent(DisplayPriorities.PRIO_SANKRANTI, GCDS.CAL_SANKRANTI, str);
                        dc.spec = "sankranti";
                        break;
                    }
                }
            }
        }