/* * Checking the next valid namaz time * and setting alarm for that * **/ private void checkTime() { DateTime now = DateTime.Now; NamazName tempName = getActiveNamaz(); isAlarmSet = false; for (int i = 0; i < tempName.Length; i++) { String d = getJson(new String[] { tempName[i], attrib.time }).ToString().Replace("\"", ""); DateTime namazTime = DateTime.ParseExact(d, "HH:mm:ss", null); if (DateTime.Compare(namazTime, now) >= 0) { bool isMidnight = false; schedule_Timer(namazTime, isMidnight); eventLogger.WriteEntry(DateTime.Now.ToString() + ": Alarm is set for " + tempName[i] + " : " + i + " on " + namazTime.ToString()); // set Waiting to true, prev to false setWaitingStatus(tempName[i]); break; } } if (!isAlarmSet) { // No Alarm for Today, Set Alarm for 12:00AM tomorrow to check next Alarm DateTime namazTime = DateTime.Today.AddDays(1); bool isMidnight = true; schedule_Timer(namazTime, isMidnight); eventLogger.WriteEntry(DateTime.Now.ToString() + ": Alarm is set for * " + namazTime.ToString()); // set Waiting to true, prev to false setWaitingStatus(null); } }
public bool srvcGetActive(out bool[] activ) { NamazName name = new NamazName(); activ = new bool[name.Length]; for (int i = 0; i < name.Length; i++) { activ[i] = getJson(new String[] { name[i], attrib.active }).ToString().Replace("\"", "").Equals("1"); } return(true); }
/* * Setting Json parameters *WAITING* in status file * **/ private void setWaitingStatus(String namaz2activ) { NamazName name = new NamazName(); // Setting Waiting: false to all Namaz foreach (string nam in name.array) { setJson(new String[] { nam, attrib.waiting }, "false"); } if (namaz2activ != null) { setJson(new String[] { namaz2activ, attrib.waiting }, "true"); } }
public bool srvcGetWaiting(out string namaz) { NamazName name = new NamazName(); foreach (String nam in name.array) { if (getJson(new String[] { nam, attrib.waiting }).ToString().Replace("\"", "").Equals("true")) { namaz = nam; return(true); } } namaz = ""; return(false); }
/* * Getting all active namaz array from json status file * according to the current day (Friday managed) * **/ private NamazName getActiveNamaz() { List <string> list = new List <string>(); // Replace zohar with jumma if todays is Friday NamazName tempName = new NamazName(DateTime.Now.DayOfWeek.ToString().Equals("Friday")); for (int i = 0; i < tempName.Length; i++) { if (getJson(new String[] { tempName[i], attrib.active }).ToString().Replace("\"", "").Equals("1")) // If namaz status is active ? { // Add to List/array if namaz status is active list.Add(tempName[i]); } } return(new NamazName(list.ToArray())); }
/* * Set Listeners and time according to service * */ public void InitLocalComponents() { name = new NamazName(); while (!isSrvcRunning) { Thread.Sleep(100); } /* * Set Time according to Service JSON * */ DateTime t = DateTime.Now; this.timePickerFajar.setTime(service.srvcGetTime(name.Fajar, out t) ? t : t); this.timePickerZohar.setTime(service.srvcGetTime(name.Zohar, out t) ? t : t); this.timePickerAsar.setTime(service.srvcGetTime(name.Asar, out t) ? t : t); this.timePickerMaghrib.setTime(service.srvcGetTime(name.Maghrib, out t) ? t : t); this.timePickerIsha.setTime(service.srvcGetTime(name.Isha, out t) ? t : t); this.timePickerJumma.setTime(service.srvcGetTime(name.Jumma, out t) ? t : t); tempPB = new PictureBox[] { this.pbFajar, this.pbZohar, this.pbAsar, this.pbMaghrib, this.pbIsha, this.pbJumma }; setActiveIcon(); setWaitIcon(); /* * Setting Listeners to timepicker * */ this.timePickerFajar.setTimeChangeListener(fajarTimeChanged); this.timePickerZohar.setTimeChangeListener(zoharTimeChanged); this.timePickerAsar.setTimeChangeListener(asarTimeChanged); this.timePickerMaghrib.setTimeChangeListener(maghribTimeChanged); this.timePickerIsha.setTimeChangeListener(ishaTimeChanged); this.timePickerJumma.setTimeChangeListener(jummaTimeChanged); }