/// <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); }
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); }
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; } } } }