meypod / al-azan

Privacy focused ad-free open-source muslim Adhan (islamic prayer times) and qibla app
https://meypod.github.io/al-azan/
GNU Affero General Public License v3.0
183 stars 26 forks source link

Import static prayer timetables (CSV Files) #98

Closed TorCzaf closed 1 year ago

TorCzaf commented 1 year ago

Hi Can you add an option to import static timetable for prayer times? I think this could be useful for countries which their angles or parameters are unknown...for example Oman and morocco provide prayer timetables. Screenshot_20230913-225009_Prayer Times

meypod commented 1 year ago

hi

are you sure those provide "csv" format ? can you link to them ?

TorCzaf commented 1 year ago

You want official CSV Formats? I guess CSV Formats are usually made by individuals based on the official Prayer Timetables For example I have those from "Prayer Times and Qibla" app for some countries https://hisab.page.link/csv

You can also find "Read me" file in "TEMPLATE_" folder and some empty CSV files

Make sure you follow the format below

  • The timetable has seven columns, from left to right: DATE, FAJR, SUNRISE, DHUHR, ASR, MAGHRIB, ISHA
  • Based on the Gregorian calendar, where leap years have 366 days and non-leap years have 365 days
  • Date format is yyyy-mm-dd
  • Use Western Arabic numerals (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
  • You can use 24-hour format or 12-hour format (with or without AM/PM)
  • Time format is hh:mm without seconds
  • Time in local time zone, also consider DST
TorCzaf commented 1 year ago

By the way, it's not just this app that has the feature of adding CSV format, there are other apps as well.

meypod commented 1 year ago

Yes, I wanted to know if there is any official csv format for those you mention

Overall this feature has many UX challenges that I don't think it's worth the time to implement

It's better to put the effort on finding the official angles and parameters.

I don't think I will be implementing this feature

TorCzaf commented 1 year ago

Yes, I wanted to know if there is any official csv format for those you mention

Unfortunately there are no official CSV Files for Oman and morocco

There are other websites that provide unofficial CSV Files like https://www.al-habib.info/prayer-time/ This website includes CSV files for too many countries and even if a CSV file is not as accurate as the official Prayer Timetables, the user can adjust it using spreadsheet apps.

Overall this feature has many UX challenges

Sorry I didn't understand what "User Experience challenges" mean

It's better to put the effort on finding the official angles and parameters.

By the way there are 2 other advantages other than using the feature for regions that have unknown angles and parameters:

-It may be valuable for those who are simple or have limited knowledge to use the app For example I may modify app settings on somebody's phone and make favorite locations use appropriate CSV and I will just tell the individual to choose this location Instead of me telling him (Go to "Settings", then "Calculation", then choose this Calculation) not to mention there are other things that I may need to tell him about like "Advanced Calculation settings". Simple people or those who have little patience may see all of that as a complicated process.

Or if somebody doesn't understand the meaning of your app settings (Round up, High latitude, Polar resolution..ETC), then in this case the feature should be valuable.

This makes your app more easier/simpler  for those.

-This feature is also valuable for those who want to follow specific mosque prayer timetables.

meypod commented 1 year ago

Unfortunately there are no official CSV Files for Oman and morocco There are other websites that provide unofficial CSV Files like https://www.al-habib.info/prayer-time/ This website includes CSV files for too many countries and even if a CSV file is not as accurate as the official Prayer Timetables, the user can adjust it using spreadsheet apps.

I still believe trying to find the official angles is a better idea. if the timetables are not accurate either, users can try putting in custom angles and see how accurate the calculated times are, and then adjust the minutes from the app settings.

Or if somebody doesn't understand the meaning of your app settings (Round up, High latitude, Polar resolution..ETC), then in this case the feature should be valuable.

If this person knows how to download a csv file and import it in a program, I believe he won't have a hard time using other features of the app

For example I may modify app settings on somebody's phone and make favorite locations use appropriate CSV

you are using an example that does not exist in the app as a feature yet

and actually right now one can export and import the settings of the app, so the advanced stuff also gets exported. and the simple person would only need to change locations, if needed.

Sorry I didn't understand what "User Experience challenges" mean

there are some cases that needs extra attention, to name a few:

I'm not asking you to answer the questions above, but I mean more questions such as these will probably arise during development that affects UX, and will increase or decrease the amount of time needed to develop the features

in the case of calculation settings per location, the problem becomes much more complicated. it means the UI needs to be changed completely and become location oriented. this calls for a different design ground up. development time aside, I feel like the app becomes much harder to use as well.

As the first user of the app myself, I don't want to deal with multi location settings at all

TorCzaf commented 1 year ago

you are using an example that does not exist in the app as a feature yet

Sorry if my English looks confusing, ... I meant that is how I would use this feature if it existed.


Anyway, I understood what you mean, and thank you.