Skip to content

Commit fe8c04b

Browse files
authored
Add BeHaB to JewishCalendar
Does not support the various customs of some to delay the second Monday in Iyar when it coincides with Pesach Sheni (as happened in 2021).
1 parent 4834ba7 commit fe8c04b

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

src/main/java/com/kosherjava/zmanim/hebrewcalendar/JewishCalendar.java

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,13 @@ public class JewishCalendar extends JewishDate {
140140
* @see #isYomKippurKatan()
141141
*/
142142
public static final int YOM_KIPPUR_KATAN = 36;
143+
144+
/**
145+
* The Monday, Thursday and Monday after the first <em>Shabbos</em> after <em>Rosh Chodesh Cheshvan</em> and <em>Iyar</em>em>) are BeHab
146+
* days. This constant is not actively in use.
147+
* @see #isBeHaB()
148+
*/
149+
public static final int BEHAB = 37;
143150

144151
/**
145152
* Is the calendar set to Israel, where some holidays have different rules.
@@ -880,6 +887,29 @@ public boolean isYomKippurKatan() {
880887
}
881888
return false;
882889
}
890+
891+
/**
892+
* The Monday, Thursday and Monday after the first <em>Shabbos</em> after {@link #isRoshChodesh() <em>Rosh Chodesh</em>}
893+
* {@link JewishDate#CHESHVAN <em>Cheshvan</em>} and {@link JewishDate#IYAR <em>Iyar</em>} are <a href=
894+
* "https://outorah.org/p/41334/"> <em>BeHaB</em></a> days. If the last Monday of Iyar's BeHaB coincides with {@link
895+
* #PESACH_SHENI <em>Pesach Sheni</em>}, the method currently considers it both <em>Pesach Sheni</em> and <em>BeHaB</em>.
896+
* As seen in an Ohr Sameach article on the subject <a href="https://ohr.edu/this_week/insights_into_halacha/9340">The
897+
* unknown Days: BeHaB Vs. Pesach Sheini?</a> there are some customs that delay the day to various points in the future.
898+
* @return true if the day is <em>BeHaB</em>.
899+
*/
900+
public boolean isBeHaB() {
901+
int dayOfWeek = getDayOfWeek();
902+
int month = getJewishMonth();
903+
int day = getJewishDayOfMonth();
904+
905+
if (month == JewishDate.CHESHVAN || month == JewishDate.IYAR) {
906+
if((dayOfWeek == Calendar.MONDAY && day > 4 && day < 18)
907+
|| (dayOfWeek == Calendar.THURSDAY && day > 7 && day < 14)) {
908+
return true;
909+
}
910+
}
911+
return false;
912+
}
883913

884914
/**
885915
* Return true if the day is a Taanis (fast day). Return true for <em>17 of Tammuz</em>, <em>Tisha B'Av</em>,

0 commit comments

Comments
 (0)