private async void Main_Shown(object sender, EventArgs e) { try { Properties.Settings.Default.CityCode = await cityController.GetCityCode(); } catch (Exception ex) { MessageBox.Show("Could not get city code" + Environment.NewLine + "Error : " + ex.Message, "An Error occured", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (shalatRepository.CheckIfDataExists(TimeHelper.GetCurrentDateWithUSFormat())) { waktuShalat = shalatRepository.GetByDate(TimeHelper.GetCurrentDateWithUSFormat()); } else { waktuShalat = await shalatController.GetJadwal(); shalatRepository.Insert(waktuShalat); } ayat = await ayatController.GetAyat(); Task.Run(() => ayatRepository.Insert(ayat)); ShowData(); var data = timeController.ShalatSelanjutnya(waktuShalat); ValidateBeforeStartCountdown(data); }
public Shalat GetByDate(string date) { Shalat shalat = null; SQLiteCommand cmd = new SQLiteCommand("SELECT * FROM jadwal WHERE tanggal='" + date + "' LIMIT 1", db); SQLiteDataReader rd = cmd.ExecuteReader(); if (rd.HasRows) { while (rd.Read()) { shalat = new Shalat(); shalat.id = int.Parse(rd["id"].ToString()); shalat.tanggal = rd["tanggal"].ToString(); shalat.subuh = rd["subuh"].ToString(); shalat.terbit = rd["terbit"].ToString(); shalat.dhuha = rd["dhuha"].ToString(); shalat.dzuhur = rd["dzuhur"].ToString(); shalat.ashar = rd["ashar"].ToString(); shalat.maghrib = rd["maghrib"].ToString(); shalat.isya = rd["isya"].ToString(); } } return(shalat); }
public async Task <List <Shalat> > GetShalat() { List <Shalat> listShalat = new List <Shalat>(); SQLiteCommand cmd = new SQLiteCommand("SELECT * FROM jadwal", db); SQLiteDataReader rd = (SQLiteDataReader)await cmd.ExecuteReaderAsync(); if (rd.HasRows) { while (rd.Read()) { Shalat shalat = new Shalat(); shalat.id = int.Parse(rd["id"].ToString()); shalat.tanggal = rd["tanggal"].ToString(); shalat.subuh = rd["subuh"].ToString(); shalat.terbit = rd["terbit"].ToString(); shalat.dhuha = rd["dhuha"].ToString(); shalat.dzuhur = rd["dzuhur"].ToString(); shalat.ashar = rd["ashar"].ToString(); shalat.maghrib = rd["maghrib"].ToString(); shalat.isya = rd["isya"].ToString(); listShalat.Add(shalat); } } return(listShalat); }
public async void onDayChanged() { if (Tommorow) { WaktuShalat = (shalatRepository.CheckIfDataExists(TimeHelper.GetTommorowDateWithUSFormat())) ? shalatRepository.GetByDate(TimeHelper.GetTommorowDateWithUSFormat()) : await shalatController.GetJadwal(TimeHelper.GetTommorowDateWithUSFormat()); } }
public Tuple <string, DateTime> ShalatSelanjutnya(Shalat shalat) { PropertyInfo[] properties = typeof(Shalat).GetProperties(); TimeSpan currentTime = TimeSpan.Parse(TimeHelper.GetHoursAndMinutes()); foreach (PropertyInfo property in properties) { if (property.Name != "id" && property.Name != "tanggal") { string value = property.GetValue(shalat).ToString(); if (currentTime < TimeSpan.Parse(value)) { EndTime = DateTime.ParseExact(property.GetValue(shalat).ToString(), "HH:mm", null); return(Tuple.Create(property.Name, EndTime)); } } } return(Tuple.Create("", EndTime)); }
public async Task <Shalat> GetJadwal(string date = null) { Shalat waktuShalat = null; if (date != null) { RequestShalatUrl = new Uri($"https://api.banghasan.com/sholat/format/json/jadwal/kota/{cityCode}/tanggal/{date}"); } HttpResponseMessage response = await APIHttpHandler.GetResponse(RequestShalatUrl); var data = await response.Content.ReadAsStringAsync(); JObject responseData = JObject.Parse(data); var query = responseData["query"]; JObject jadwal = (JObject)responseData["jadwal"]; JObject dataJadwal = (JObject)jadwal["data"]; waktuShalat = JsonConvert.DeserializeObject <Shalat>(dataJadwal.ToString()); waktuShalat.tanggal = query["tanggal"].ToString(); return(waktuShalat); }
public async void Insert(Shalat shalat) { SQLiteCommand cmd = new SQLiteCommand("INSERT INTO jadwal(tanggal, subuh, terbit, dhuha, dzuhur," + "ashar, maghrib, isya) VALUES(?,?,?,?,?,?,?,?)", db); cmd.Parameters.AddWithValue("@tanggal", shalat.tanggal); cmd.Parameters.AddWithValue("@subuh", shalat.subuh); cmd.Parameters.AddWithValue("@terbit", shalat.terbit); cmd.Parameters.AddWithValue("@dhuha", shalat.dhuha); cmd.Parameters.AddWithValue("@dzuhur", shalat.dzuhur); cmd.Parameters.AddWithValue("@ashar", shalat.ashar); cmd.Parameters.AddWithValue("@maghrib", shalat.maghrib); cmd.Parameters.AddWithValue("@isya", shalat.isya); try { await cmd.ExecuteNonQueryAsync(); } catch (Exception ex) { throw new Exception("Unable to insert to the database"); } }